Недавно мы работали над особенно интересным проектом, в котором мы применили несколько новый алгоритм, который мы называем алгоритмом против сообщества. Цель этого поста — поделиться подходом, который мы использовали.
Перевод статьи Introducing the Anti-Communities Algorithm and How We Used it to Help Improve Collaboration at a Client Organization
Алгоритм борьбы с сообществами и то, как мы его использовали для улучшения совместной работы в организации-клиенте
Вводная
Нашим заказчиком по этому проекту было подразделение крупной строительной компании, где руководство хотело лучше понять, как сотрудники компании работают вместе. Поэтому был проведен активный организационный сетевой анализ (ONA), в ходе которого каждый сотрудник заполнил анкету с просьбой определить ключевых лиц, с которыми он работает. С самого начала основной задачей этого проекта было использование ONA в рамках выездного семинара, организованного командой руководителей для 50 или около того руководителей среднего и высшего звена подразделения.
Цель руководящей группы на семинаре состояла в том, чтобы представить результаты ONA и обсудить с более широкой группой способы улучшения сотрудничества. Во время подготовительного звонка, чтобы обсудить, как будут представлены результаты, руководство также обдумывало, как они могут посадить людей за столы, чтобы помочь генерировать новые идеи и отношения. В ходе этого обсуждения с командой руководителей возникла идея, что мы можем использовать данные, собранные в ONA, для разработки оптимальной схемы, чтобы посадить людей рядом с другими, которых они не знают или с которыми тесно не работают в компании.
За пару дней мы разработали то, что назвали антиобщественным алгоритмом, и применили его к списку участников, чтобы создать схему рассадки на семинаре. Ниже мы опишем этот алгоритм.
АНТИОБЩЕСТВЕННЫЙ АЛГОРИТМ
Обратите внимание, что результаты и обсуждение ниже основаны на примере набора данных, а не на фактическом наборе данных из соображений конфиденциальности, но общий процесс и ключевые выводы одинаковы.
Сначала полезно ознакомиться с одним из ключевых подходов, используемых в ONA для измерения сотрудничества, выявляя неформальные сообщества. Сообщества представляют собой непересекающиеся группы относительно тесно связанных между собой индивидуумов. Выявление неформальных сообществ в организации показывает, как сотрудники действительно сотрудничают независимо от формальной организационной структуры. Для обнаружения этих групп доступно несколько методов, каждый из которых предлагает компромисс между скоростью и качеством. Возможно, наиболее часто применяемым алгоритмом является метод Лувена для обнаружения сообщества.
Алгоритмы обнаружения сообществ обычно оптимизируются и оцениваются с использованием модульности, которая измеряет степень, в которой связи внутри групп сильнее, чем связи между группами. Более конкретно, модульность — это доля связей внутри заданных групп за вычетом ожидаемой доли, если бы связи были случайными. В случае невзвешенной и ненаправленной сети модульность может варьироваться от -0,5 до 1. Положительное значение указывает, что связи внутри групп больше, чем ожидалось, на основе случайности. В качестве альтернативы, отрицательное значение указывает на то, что связи внутри групп случайно меньше, чем ожидалось.
На следующем изображении показан пример сети, окрашенной по сообществу в результате применения алгоритма обнаружения сообщества Лувена. Для справки, показатель модульности равен 0,59.
Приведенная ниже матрица сотрудничества обобщает взаимодействия между различными сообществами в вышеуказанной сети. Строки таблицы представляют собой источник соединения, а столбцы — цель. В первом ряду, например, 77,4 % номинаций от членов