Это философская заметка про управление и воспитание, а также про очень неожиданное озарение связанное с моделированием цифровой плесени. Навеяно беседами о проблемах управления строительством, а также сетью существенно удалённых филиалов.
Борьба популяций цифровой плесени под воздействие испепеляющего солнца.
Предуведомление. Статья состоит из трёх частей, и первые две кажутся вообще друг к другу никак не относящимися, однако есть третья объединяющая их.
Предуведомление второе. Есть разные способы мотивации и есть адепты подхода в котором наказание(и вообще отрицательное подкрепление в целом) не применяется. Неплохо описано в книге Карен Прайор «Не рычите на собаку!» очень рекомендую всем, кто не читал. Однако эта заметка про иной подход, и скорее про эффективность разных вариантов отрицательного подкрепления.
Предуведомление третье. Я, по своим взглядам, эволюционист и уверен что естественный отбор происходит не только среди живых организмов но также и среди специалистов, предпринимателей, фирм и предприятий, народов и иногда даже идей.
Часть первая. Неотвратимое наказание и выборочная проверка.
Я многократно слышал про принцип неотвратимости наказания, и о том что важен не размер наказания а его неотвратимость, и тогда такая мера воздействия будет работать эффективнее.
Но жизнь-штука сложная и производить непрерывный постоянный контроль дорого и нецелесообразно. В ответ на это человечество изобрело концепцию внезапных и внеплановых проверок. Будь то периодические внезапные проверочные работы в школе, или штрафы за несоблюдение ПДД которые раздаёт припрятанный в кустах автомобиль автоинспекции, внеплановые аудиторские проверки предприятий, контрольные закупки и т.д.
Кратко закрепим на примере ПДД: Камера которая стоит и штрафует всех с нарушением — неотвратимое наказание(тех кто отсудится сюда не включаем). Экипаж ГИБДД в кустах который стоит в случайном месте и выборочно контролирует скорость — внезапная проверка.
По идее внезапные проверки должны работать следующим образом: человек понимает что в любой момент его деятельность могут проверить, потому он будет действовать с соблюдением норм. И собственно если он работает нормально, то действительно, внеплановые проверки будут выявлять отсутствие нарушений и всё будет отлично.
Однако, если мы посмотрим вокруг, то внезапно выясним что внеплановые проверки мягко говоря не так эффективны как хотелось бы.
Часть вторая. Цифровая плесень.
Игрался я с симуляцией плесени, по мотивам статьи habr.com/post/418545 Также как описано у автора, в моей реализации каждая клетка имеет свой геном и исполняет его. Может я когда-нибудь опубликую и свою реализацию. Существенным отличием является то, что различные гены имеют существенно(около двух десятичных порядков) разное время исполнения. Ну например принять решение на основе температуры — легко. А принять решения на основе оценки насколько родственны тебе соседи (для этого надо сравнить много внешних признаков) многократно тяжелее.
Изначально я сделал для любой команды одинаковые затраты внутренней энергии.
Добавив очередной сложный ген и запустив это дело я обнаружил существенное проседание производительности. Анализ выявил популяцию чудиков которые очень активно использовали долгие по исполнению гены, и надо сказать весьма эффективно, так что все кто освоили эти гены прут со страшной силой и давят остальных, а хотелось большего разнообразия и конкуренции видов. И тут мне пришла в голову идея о том, что можно затраты внутренней энергии на исполнение гена сделать пропорциональными времени исполнения оного. И я тупо вписал замер времени и домножил затраченные наносекунды на коэффициент и вычел из внутренней энергии клетки. Это мне казалось хорошим решением т.к. полностью автоматизировало учёт сложности исполнения гена и в целом хорошо ложилось на эволюционные идеи, пусть выживают те, кто действительно по делу использует сложные вещи, а сложные вещи дороги.
Запуск показал ещё большее проседание производительности, виной всему достаточно дорогой на используемой платформе замер времени, всё-таки код интерпретатора генома написан достаточно производительно и замер времени на фоне обычной интерпретации стал перевешивать. Однако злостные эксплуататоры очень дорогой но эффективной операции перестали жёстко доминировать. Я проверил, ген есть и иногда работает, но теперь не так бездумно часто. Разнообразие вернулось, снова можно было наблюдать войны разноцветной плесени.
И тут я подумал, а давайте я буду делать выборочный замер, с вероятностью 10% я буду замерять затраты времени, а коэффициент пересчёта времени в энергию увеличу в 10 раз. В среднем влияние на систему окажется таким же (думал наивный я), а затраты времени на замер упадут в 10 раз.
Запускаю и опять махровым цветом разрастаются всё те-же чудики которые очень активно используют тяжёлую но выгодную команду. Что? Почему? Ещё раз включаю замер на каждой итерации и они не так прут. Включаю выборочный замер и они опять есть. Равномерные затраты и увеличенные в 10 раз затраты применяемые с вероятностью 10% дают радикально разный результат. На тупейшей плесени. А дело казалось вот в чём. Обычные затраты на этот ген были большими, но посильными для клетки. Однако увеличенные в 10 раз затраты оказывались непосильными и просто напрочь убивали клетку на месте. А теперь давайте прикинем. Злостные эксплуататоры этого гена например исполняют его раз в 5 тактов симуляции(это очень часто). И с шансом 10% их на этом спалят и убьют. Это по сути превращается в условие — делайте что хотите но каждый такт 2% вашей популяции попадутся на использовании очень дорогой операции и их убьют. И в таких условиях эти гены опять показывали преимущество и злостно давили всех остальных. Всё что должна делать такая популяция — размножаться более чем на 2% в такт симуляции, что они с успехом и делали. И что самое страшное, ещё большее увеличение штрафа за эти гены вообще ничего не меняет, как убивало попавшихся так и будет убивать.
Т.е. получилось что вместо цены за этот ген есть случайное наказание(убийство) тех кто его использует. В среднем, интегрально, затраты энергии ровно такие-же. Но результат кардинально разный.
И вот тут для меня в новом ключе открылся смысл утверждения про неотвратимость наказания и про, то почему внезапные проверки не работают.
Часть третья объединение.
Существуют незаконные приёмы в бизнесе. Для примера возьмём продавцов которые обвешивают на рынке(манипулируя весами продадут вам меньше чем озвучат). Те, кто не обманывают имеют один показатель прибыли. Те, кто начинает обманывать начинают извлекать существенную дополнительную прибыль, и даже могут ставить очень низкие ценники, за счёт чего привлекать покупателя. Если бы за каждый обвес продавца бы наказывали небольшим штрафом который делает этот обвес невыгодным, то никто бы так не делал. Но давайте рассмотрим ситуацию, если мы будем периодически в случайный момент времени проводить контрольные закупки и выписывать очень большой штраф который будет выводить продавца с рынка. Допустим продавец в 30% продаж решает обмануть покупателя. И также допустим что до каждого продавца мы доходим с контрольной проверкой в случайный день раз в месяц, что означает примерно 3% шанс того что этого продавца будут проверять в этот день. 3% * 30% шанс того что он решит обмануть нашего контрольного закупщика даёт 1% того что он будет обнаружен в этот день. Допустим все продавцы такие. Это значит что каждый день мы будем вылавливать на мошенничестве 1% от имеющихся у нас продавцов и выписывать им огромный штраф и они будут уходить с рынка. А теперь интересное. 1% наказания означает что в 99% нарушение не будет замечено. Теперь прикинем за 365 рабочих дней, каков шанс что вас ниразу не поймают? 0.99^365~0.025 Т.е. 2.5% торгашей которые каждый день обманывают 30% покупателей в течении года не будут пойманы такими проверками. А у них будет самая хорошая прибыль. И именно они будут гораздо конкурентнее тех, кто не пользуется таким хаком. Аналогично произойдёт и например с людьми которые воруют на работе.
Самое страшное в этой ситуации именно то, что появляются систематические нарушители правил и которые никогда не попадаются. И для этого не нужна никакая сознательная деятельность. Они просто будут потому что нарушать выгодно, те, кто попались вылетели, а кто не попался — остались. Таким образом назначая такие внезапные проверки мы сами создаём тех, кто всё равно нарушает правила и не попадается. А люди же ещё разговаривают друг с другом, берут пример. В случае с воровством появится условный Петя, который регулярно приворовывает, также регулярно проходит выборочные проверки и ни разу за много лет не попался.
Итог всей заметки: вводя выборочные проверки мы сами создадим тех, кто регулярно нарушает правила и ни разу не попался. А они будут оказывать дурное влияние на остальных, в итоге будем иметь очень много нарушающих, постоянную ловлю нарушителей, будем их увольнять, но это никак не будет снижать долю нарушающих.
Для меня именно это явилось ключевым моментом понимания того, почему схема с выборочными проверками и мгновенным увольнением попавшихся в итоге не приводит к хорошей дисциплине.
И точно также с техникой безопасности. Нарушающие её быстрее и проще делают свою работу, но т.к. их не всегда при этом убивает появляются дяди Вани, «да я 100 раз так делал, не ссы». Вот почему работодатель заинтересованный соблюдении ТБ должен постоянно наблюдать за её соблюдением и ключевым моментом должно быть постоянство, а не размер кары.
Создание условий где нарушение правил не выгодно работает гораздо лучше чем редкие но очень сильные наказания. И теперь стал полностью понятен механизм, почему это так.
Отдельно за рамки этой статьи выпал гемблинг. Т.е. азарт на тему попался-не попался. А это также имеет важнейшую роль в философии нарушения правил или кражах.
Автор: Aquahawk