В результате проведенных исследований построена система, являющаяся прототипом для моделирования различных социальных процессов в рамках исследуемой области, позволяющая учитывать динамические факторы, влияющие на социальный процесс.
Применение данного продукта представляется перспективным для анализа демографических процессов, построения моделей управления рисками, анализа социальных сетей.
Отметим две наиболее трудоемкие части социального моделирования: выбор показательного примера целевой группы для формирования базового набора данных и развитие обоснованного набора правил поведения и вероятностных характеристик, влияющих на поведение агентов. Если набор данных и правила поведения хорошо разработаны, моделирование, имитирующее социальные процессы, будет более надежным, реалистичным и заслуживающим доверия.
Более детализированные наборы данных, описывающих демографические показатели, правила поведения в группе и сеть социальных связей, могут быть полезными при дальнейшем построении и других аналогичных моделей.
Литература
1. Marsella S.C., Pynadath D.V., Read S.J., PsychSim: Agent-based modeling of social interactions and influence, Proc. of the 6th Intern. Conf. on Cognitive Modeling, Carnegie Mellon University, Pittsburgh, PA, 2004.
2. Малков С.Ю., Селунская Н.Б., Сергеев A.B. Социально-экономические и демократические процессы в аграрном обществе как объект математического моделирования: В сб.:
История и синергетика. Математическое моделирование социальной динамики. М.: КомКнига, 2005.
3. Копылова Н.С., Мурзин Ф.А. Моделирование механизмов социального влияния на основе мультиагентного подхода / КИИ-2008: тр. 11-й национальн. конф. по искусствен. интел. с междунар. участием (г. Дубна). М.: ЛЕНАНД, 2008. Т. 3. С. 226-234.
4. Копылова Н.С., Мурзин Ф.А. Моделирование механизмов социального влияния на основе мультиагентного подхода // Вопросы искусственного интеллекта, 2009. С. 173-183.
5. Белогубова М.В., Копылова Н.С. Моделирование механизмов социального влияния с помощью мультиагентного подхода / Студент и научно-технический прогресс: матер. XLVI междунар. науч. студ. конф. Новосибирск, 2008. С. 132133.
6. Белогубова М.В., Копылова Н.С. Моделирование социальных процессов на основе мультиагентного подхода / Студент и научно-технический прогресс: матер. XLVI между-нар. науч. студ. конф. Новосибирск, 2010. С. 194.
References
1. Marsella S.C., Pynadath D.V., Read S.J., Proc. of the 6th Int. Conf. on Cognitive Modeling, Carnegie Mellon University, Pittsburgh, PA, 2004.
2. Malkov S.Yu., Selunskaya N.B., Sergeev A.B., Istoriya i sinergetika. Matematicheskoe modelirovanie sotsialnoy dinamiki [History and synergetics. Mathematical modeling of social dynamics], Moscow, Kom Kniga, 2005.
3. Kopylova N.S., Murzin F.A., KII-2008: tr. 11-y natsi-onaln. konf. po iskusstven. intel. s mezhdunar. uchastiem [KII-2008: proc. of 11th national conf. on artificial intelligence with int. participants], Мoscow, LENAND, 2008, Vol. 3, pp. 226-234.
4. Kopylova N.S., Murzin F.A., Voprosy iskusstvennogo intellekta [Artificial intelligence issues], 2009, pp. 173-183.
5. Belogubova M.V., Kopylova N.S., Student i nauchno-tekhnicheskiy progress: mater. XLVI mezhdunar. nauch. studencheskoy konf. [A student and technological advances: proc. of XLVI int. scientific conf.], Novosibirsk, 2008, pp. 132-133.
6. Belogubova M.V., Kopylova N.S., Student i nauchno-tekhnicheskiy progress: mater. XLVI mezhdunar. nauch. studencheskoy konf. [A student and technological advances: proc. of XLVI int. scientific conf.], Novosibirsk, 2010, pp. 194.
УДК 519.6
ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ БИОНИЧЕСКИХ АЛГОРИТМОВ КОМБИНАТОРНОЙ ОПТИМИЗАЦИИ
О.Е. Семенкина, м.н.с.; О.Э. Семенкина, д.т.н., профессор (Сибирский государственный аэрокосмический университет им. академика М.Ф. Решетнева, просп. им. газ. «Красноярский рабочий», 31, г. Красноярск, 660014, Россия, oleese@mail. ru, semenkina. olga@mail. ru)
Для решения задачи коммивояжера предлагаются самонастраивающиеся бионические алгоритмы. Самонастройка алгоритмов обеспечивается за счет стохастического выбора настроек и/или параметров в ходе решения задачи в соответствии с распределениями вероятностей применения этих операторов. Распределения вероятностей модифицируются на каждом шаге алгоритма в соответствии с успешностью применения операторов (параметров), определяемой значением пригодности индивидов (решений), построенных с их помощью. Эффективность предложенных алгоритмов сравнивается с известными бионическими алгоритмами - обычным генетическим алгоритмом, муравьиным алгоритмом и алгоритмом умных капель, а также с локальным поиском (эвристикой Лина-Кернигана). На тестовых задачах большой размерности демонстрируется полезность предложенного подхода.
Ключевые слова: комбинаторная оптимизация, генетический алгоритм, муравьиный алгоритм, алгоритм умных капель, эвристика Лина-Кернигана, адаптивность.
EFFECTIVENESS INVESTIGATION OF BIOLOGY-INSPIRED ALGORITHMS FOR COMBINATORIAL OPTIMIZATION
Semenkina O.E, junior research associate; Semenkina O.E, Ph.D., professor (Academician M.F. Reshetnev Siberian State Aerospace University, Krasnoyarsky RabochyAv., 31, Krasnoyarsk, 660014, Russia, oleese@mail.ru, semenkina.olga@mail.ru) Abstract. Self-adaptive biology-inspired algorithms for the travelling salesman problem are introduced. Self-adaptation is organized through the settings and/or parameters stochastic choice based on probability distributions of these operators activation (parameters use) during an algorithm execution. Probability distributions are modified on each algorithm's step accordingly to the operators (parameters) use success that is defined through the fitness value of solutions built with these operators (parameters). Effectiveness of proposed algorithms is compared with known bio-inspired algorithms, namely with conventional genetic algorithm, ant colony optimization algorithm and intelligent water drops algorithm as well as with local search (Lean-Kernighan heuristic). The usefulness of the proposed approach is demonstrated on problems with high dimension.
Keywords: combinatorial optimization, genetic algorithm, ant colony optimization, intelligent water drops algorithm, Lin-Kernighan heuristic, self-adaptive.
Задача коммивояжера является обобщением задачи о гамильтоновых циклах в графах, относится к классу NP-полных задач и часто используется для тестирования вновь создаваемых алгоритмов комбинаторной оптимизации. Она формулируется следующим образом:
Пусть имеется заданное множество из n городов. Требуется найти замкнутый обход минимальной длины при условии, что каждый город должен быть посещен только один раз.
Задача коммивояжера имеет множество практических применений, таких как задачи маршрутизации, составления расписания с ограничениями, задачи игрового типа для поиска оптимальной стратегии и т.д.
Широкое применение при решении таких задач получили недетерминированные многоагентные алгоритмы, в том числе бионические. В данной статье рассматриваются генетический алгоритм (ГА) [1], муравьиный алгоритм (Ant Colony Optimization, ACO) [2], алгоритм умных капель (Intelligent Water Drops, IWDs) [3], эвристика Лина-Кер-нигана [4] и авторские адаптивные ГА и АСО.
Описание алгоритмов
Алгоритм ACO основан на имитации поведения колонии муравьев в природе [2]. Являясь практически слепыми, муравьи все же отыскивают кратчайший путь от гнезда до источника пищи и обратно. Для обмена информацией они используют фермент (называемый феромоном), который оставляют на пройденном пути. Вероятность того, что муравей выберет определенный путь, пропорциональна количеству феромона на нем. Следовательно, чем больше муравьев прошло данным путем, тем более притягательным он становится для следующих.
Каждый муравей, совершая обход, пополняет свой табу-лист, то есть список посещенных городов, а после завершения обхода оставляет некоторое количество феромона, то есть след, на каждом пройденном им ребре. Вероятность выбора города является функцией расстояния до города и количества феромона, оставленного всеми муравьями
на соединяющем ребре. Интенсивность следа обновляется по завершении всеми муравьями своих обходов. Поиск повторяется до исчерпания выделенного вычислительного ресурса. Алгоритм АСО управляется четырьмя параметрами (относительные важности следа и расстояния до следующего города, интенсивность испарения следа и др.). Так как каждый параметр может принимать большое количество значений, число различных наборов этих параметров очень велико, но в своих экспериментах авторы не ставили целью тонкую подстройку алгоритма под конкретную задачу и поэтому оставили только 16 вариантов.
Алгоритм IWDs основан на имитации поведения потоков (множеств капель) в реке [3]. Для каждого множества капель река является окружающей средой, которая влияет на него, но в то же время и это множество влияет на реку. То есть как капли влияют на маршрут реки, так и путь реки влияет на маршрут каждой отдельной капли. Большое влияние на движение реки оказывают тип грунта и его сопротивление потоку, так как от него зависит скорость капель. Таким образом, река представляет собой результат противоборства множества капель воды и сопротивления окружающей среды. Можно также заметить, что все реки в природе имеют множество изгибов и поворотов, так как под действием силы тяжести, выбирая путь наименьшего сопротивления, вода движется по направлению к самой низкой точке.
Предполагается, что каждая капля воды может переносить некоторое количество грунта из одного места в другое. Грунт переносится с быстрых участков на более медленные, а значит, быстрые участки становятся более глубокими и, следовательно, могут вместить большее количество воды, а значит, привлекают больше капель. Кроме того, перемещаемое количество грунта зависит от скорости, а скорость капли зависит от количества грунта на данном участке пути: скорость капли быстрее возрастает на участке пути с меньшим количеством грунта. Так как капля, имея несколько вариантов пути, выбирает самый легкий, получается, что она предпочитает путь с меньшим количеством грунта.
На основании рассмотренных выше свойств Шах-Хоссейни в 2007 году предложил алгоритм умных капель [3]. Каждая умная капля воды (IWD) имеет два важных свойства: количество грунта (soil), который она несет, и скорость (velocity), с которой она двигается. Эти свойства могут изменять то, как движется капля в окружающей среде.
С математической точки зрения окружающая среда представляет собой решаемую задачу, а река, состоящая из капель, ищет оптимальный путь. Эффективность алгоритма зависит от многих параметров, часть которых (коэффициенты обновления скоростей капель и грунта и др.) в авторских экспериментах были фиксированы в соответствии с рекомендациями [3], но другие требовали настройки под конкретную задачу (начальное количество капель, начальная скорость каждой капли, параметр обновления грунта, значимость лучшего решения при обновлении матрицы грунта - всего 24 различных варианта).
Одним из классических методов решения задачи коммивояжера, как и задач оптимизации, является локальный спуск, в частности алгоритм 3-замена, или эвристика Лина-Кернигана [4]. При построении алгоритмов локального поиска основным является определение окрестности. Для задачи коммивояжера обычно используются окрестности типа k-замены: два обхода лежат в такой окрестности, если они могут быть получены друг из друга удалением и заменой k ребер. Алгоритм локального поиска перебирает элементы окрестности текущего решения до обнаружения улучшения. Если улучшение находится, то соответствующее решение становится центром окрестности и алгоритм продолжает поиск, в противном случае текущее решение и есть локальный оптимум. В своих работах Лин показал, что 3-оптимальные решения намного лучше 2-оптимальных, а 4-опти-мальные лучше 3-оптимальных, но не настолько, чтобы были оправданы дополнительные вычислительные затраты [4]. Именно поэтому в данной работе рассматривается алгоритм 3-замены, являющийся частным случаем k-замены.
ГА основывается на заимствовании из природы идеи естественной эволюции [1]. В связи с этим решение задачи является хромосомой индивида в популяции (множество решений). В своей работе ГА использует несколько операторов, итерационно следующих друг за другом: селекция, рекомбинация (порождение потомков), мутация, селекция выживших, формирование следующего поколения. В связи с тем, что представление решения в виде хромосомы при решении задачи коммивояжера отличается от стандартной бинарной строки (представляет собой перестановку n чисел), стандартные генетические операторы видоизменены. Однако сохраняется большое количество настраиваемых параметров, таких как ве-
роятность мутации, тип селекции - турнирная (с выбором размера турнира), пропорциональная и ранговая (с линейным или экспоненциальным ранжированием), тип скрещивания и т.д. Авторы экспериментально проверяли взаимодействие типов селекции и уровней мутации, приняв остальные параметры неизменными. Это привело к необходимости проверки 24 вариантов настройки алгоритма.
Выбор эффективных вариантов настроек ГА или АСО сам по себе является трудной задачей даже для специалиста в области эволюционных вычислений. Поэтому целесообразной кажется идея самонастраивающегося ГА и самонастраивающегося АСО с автоматической настройкой параметров алгоритма по ходу его работы.
Суть предлагаемого подхода для ГА в следующем. Для каждого оператора выбор его варианта осуществляется отдельно. Пусть г - число вариантов данного оператора. Например, если варианты оператора селекции турнирная с размерами турнира 2, 4 и 8 и пропорциональная, то 1=4.
В начале работы алгоритма вероятности выбора всех вариантов оператора одинаковы: р=\/г. На каждом поколении производится оценка эффективности каждого варианта оператора следующим
Z л
образом: averagefitnessi = --
i=1, 2,
z, где
п, - количество индивидов, полученных с применением 1-го варианта оператора; / - пригодность у'-го индивида, полученного /-м вариантом оператора; averagefitnessi - средняя пригодность потомков, порожденных /-м вариантом оператора.
Вероятность варианта оператора с наибольшим значением averagefitness (то есть наиболее эффективного) увеличивается на ((2-1)^К)/(2\М), тогда как вероятности всех остальных операторов уменьшаются на К/(г ^), где N - число прошедших поколений работы алгоритма; К - константа, обычно равная 2. Кроме того, устанавливается порог снижения вероятности, так как ни в одном из вариантов оператора эта вероятность не может быть равна нулю. При достижении минимально возможного значения вероятности такой вариант оператора перестает отдавать свою долю в пользу лучшего. Сумма вероятностей для всех вариантов одного оператора всегда равна единице. Таким образом, распределение вероятностей выбора варианта оператора постепенно смещается в сторону более эффективных за счет менее эффективных вариантов.
Описанным способом выбирается вариант каждого оператора для каждого будущего потомка перед началом процесса его порождения. В таком случае у самонастраивающегося алгоритма не остается вариантов выбора настроек - он единственный. Разумеется, необходимо заранее выбрать
n
n
размер популяции и число поколений алгоритма (предоставляемый ресурс), но это верно и для всех других алгоритмов и не рассматривается как их настройка.
Такой же подход к созданию адаптивных алгоритмов был применен и для АСО. В этом случае рассматриваются не операторы с различными вариантами настроек, а параметры (относительная важность следа и относительная важность расстояния до соседнего города) с различными значениями. Аналогично операторам ГА для каждого значения каждого из параметров вероятность его использования изменяется по приведенным выше формулам.
В данной работе адаптивный АСО располагал шестнадцатью вариантами настроек (по четыре для каждого из параметров), а именно 1, 2, 5, 10. Адаптивный ГА имел 8 вариантов селекции: турнирная с размером турнира 2, 4 и 8, ранговая с линейным ранжированием, ранговая с экспоненциальным ранжированием с параметром X, равным 0,95, 0,8 и 0,5, и пропорциональная, а также 5 вариантов мутации: очень низкая, низкая, средняя, высокая и очень высокая.
Анализ работы бионических алгоритмов комбинаторной оптимизации
Описанные выше алгоритмы были реализованы на языке программирования С++ в виде программной системы решения комбинаторных задач оптимизации на перестановках. Эффективность работы этих алгоритмов сравнивалась на двух широко известных тестовых задачах - ЕП51 и ОИ-ver30 [5], число городов в которых равно соответственно 51 и 30.
На задаче 01^ег30 алгоритм 3-замены для сходимости в среднем требовал 52 800 вычислений целевой функции, поэтому всем остальным алгоритмам давалось такое же количество ресурсов (30 индивидов, 1 760 итераций). Усреднение проводилось по 100 прогонам, оптимальное решение этой задачи имеет длину 423,741.
На задаче ЕП51 алгоритм 3-замены в среднем требовал 342 210 вычислений целевой функции, поэтому количество ресурсов, выделяемое остальным алгоритмам, - 51 индивид, 6 710 поколений. Усреднение на данной задаче проводилось по 50 прогонам, а оптимальное решение имеет длину 426.
Результаты работы при лучших настройках, а именно длина лучшего маршрута из всех прогонов, средняя длина маршрута по всем прогонам, а также среднеквадратичное отклонение (СКО) для обеих задач приведены в таблице 1.
Из нее видно, что адаптивные методы незначительно проигрывают неадаптивным с лучшими настройками. При этом не требуется проверка десятков вариантов настроек.
Таблица 1 Эффективность работы алгоритмов на задачах Oliver30 и Eil51
Алгоритм Длина лучшего обхода Средняя длина обхода СКО
Oliver30
3-замена 423,741 428,610 7,4740
ACO 423,741 423,782 0,1675
IWDs 423,741 425,500 3,7022
GA 423,741 432,356 13,2365
Adaptive GA 423,741 434,239 13,6875
Adaptive ACO 423,741 426,428 3,7653
Eil51
3-замена 428,872 438,598 5,0160
ACO 429,484 432,732 3,11622
IWDs 428,872 437,279 5,57137
GA 431,953 447,943 7,5848
Adaptive GA 429,118 449,938 9,94143
Adaptive ACO 429,484 433,936 2,88955
Поскольку эффективность бионических алгоритмов на конкретной задаче существенно различается в зависимости от настроек, более реалистичным будет предположение, что при однократном решении задачи, что и ожидается на практике, эффективность применяемых алгоритмов будет более близка к средней на этой задаче, а не к наилучшей. Такое сравнение на задаче 0liver30 приведено в таблице 2, где три строки для каждого алгоритма (GA, ACO, IWDs) содержат значения целевой функции, найденные при наилучших и наихудших настройках, а также усредненные по всем настройкам, а столбцы содержат усреднение по прогонам и СКО.
Таблица 2
Сравнение эффективности алгоритмов при различных настройках
Задача Oliver30
Настройки/прогоны Лучший Средний СКО
GA Лучшие 423,741 431,647 11,3784
Средние 424,139 442,982 12,8611
Худшие 425,267 469,459 27,0638
ACO Лучшие 423,741 424,040 0,4299
Средние 428,684 443,771 11,7151
Худшие 461,453 504,088 28,0251
IWDs Лучшие 423,741 426,413 3,1992
Средние 423,965 434,7496 10,1741
Худшие 424,692 449,307 19,0374
3-opt 423,741 434,610 11,9310
Adaptive GA 423,741 434,485 12,7539
Adaptive ACO 423,741 426,428 3,7653
Анализ полученных результатов показывает, что оба адаптивных алгоритма превосходят остальные алгоритмы с неоптимальными настройками, а адаптивный АСО превосходит и ГА с оптимальными настройками. Это позволяет сделать вывод о полезности выполненной модификации
бионических алгоритмов, предусматривающей их автоматическую настройку.
Подытоживая, отметим, что в данной работе предложен и апробирован подход к построению адаптивных бионических алгоритмов комбинаторной оптимизации, основанный на автоматической подстройке вероятностей выбора типов операторов или дискретных значений параметров. Показано, что полученные таким образом алгоритмы близки по эффективности к своим оптимально настроенным аналогам, хотя и не требуют усилий по настройке. Данный подход не может напрямую распространяться на алгоритм IDWs, обладающий большим количеством вещественных параметров, требующих тонкой подстройки. Для его применения в данном случае требуются отдельные исследования.
В дальнейшем предполагаются разработка адаптивных версий других бионических алгоритмов, расширение круга решаемых ими задач, а также их практическое применение.
Литература
1. Гуменникова А.В., Емельянова М.Н., Семенкин Е.С., Сопов Е.А. Об эволюционных алгоритмах решения сложных
задач оптимизации // Вестн. СибГАУ. 2003. № 4. С. 14-23.
2. Dorigo М., Gambardella L.M., Ant Colony System: A Cooperative Learning Approach to the Traveling Salesman Problem, IEEE Transactions on Evolutionary Computation, Vol. 1, Is. 1, 1997, pp. 53-66.
3. Shah-Hosseini H., Optimization with the Nature-Inspired Intelligent Water Drops Algorithm, Evolutionary Computation, Vienna, InTech, 2009, pp. 299-319.
4. Lin Sh., Kernighan B.W., An Effective Heuristic Algorithm for the Traveling-Salesman Problem, Operations Research, 1973, no. 21 (2), pp. 498-516.
5. Oliver I.M., Smith D.J., Holland J.R.C., A study of permutation crossover operators on the travelling salesman problem, Proc. 2nd Intern. Conf. on Genetic Algorithms and their application, 1987, pp. 224-230.
References
1. Gumennikova A.V., Emelyanova M.N., Semenkin E.S., Sopov E.A., Vestnik SibGAU [Bulletin of the SibSAU], 2003, no. 4, pp. 14-23.
2. Dorigo М., Gambardella L.M., IEEE Transactions on Evolutionary Computation, Vol. 1, iss. 1, 1997, pp. 53-66.
3. Shah-Hosseini H., Evolutionary Computation, Vienna, InTech, 2009, pp. 299-319.
4. Lin Sh., Kernighan B.W., Operations Research, 1973, no. 21 (2), pp. 498-516.
5. Oliver I.M., Smith D.J., Holland J.R.C., Proc. of the 2nd Int. Conf. on Genetic Algorithms and their application, 1987, pp. 224-230.
УДК 519.68
МОДЕЛИ И МЕТОДЫ АНАЛИЗА КОМПЬЮТЕРНЫХ СОЦИАЛЬНЫХ СЕТЕЙ
Т.В. Батура, к.ф.-м.н.
(Институт систем информатики им. А.П. Ершова СО РАН, просп. Лаврентьева, 6, г. Новосибирск, 630090, Россия, tbatura@ngs.ru)
Статья представляет собой обзор методов анализа компьютерных социальных сетей, который используется для исследования взаимодействий между участниками сети, прогнозирования их поведения, классификации участников, моделирования информационных потоков в сетях. Существуют четыре основных направления исследований при таком анализе: структурное, ресурсное, нормативное и динамическое. Для решения различных задач в данной области используются графовые и стохастические модели, модели эволюции сетей, методы с привлечением онтологий, структурные и реляционные модели, методы машинного обучения, методы визуализации графов и т.д. В работе дается краткое описание популярных компьютерных социальных сетей, рассмотрены различные подходы и модели, применяемые при вычислении характеристик сети, а также перечислены программные приложения, помогающие автоматизировать процесс анализа. Намечены некоторые возможные направления дальнейших исследований в этой области, в частности, более существенная адаптация методов обработки текстовой информации к сетевому контенту. Чтобы обобщить поведение конкретных участников сети на всю сеть, необходимо создание единой теории социальных сетей, в рамках которой можно было бы изучать методы обнаружения и описания характеристик сетей, закономерности распространения этих характеристик, создание методов, позволяющих по структуре социальной сети определять причины взаимодействий участников.
Ключевые слова: анализ социальных сетей, граф сети, центральность, модели сети, интеллектуальный анализ данных.
SOCIAL NETWORKS ANALYSIS MODELS AND METHODS Batura T. V., Ph.D. (A.P. Ershov Institute of Informatics Systems, Siberian Branch of RAS, Acad. Lavrentjev Av., 6, Novosibirsk, 630090, Russia, tbatura@ngs.ru) Abstract. The paper represents the survey of the social network analysis methods. That analysis is used to study the interactions between network members, prediction their behavior, classification of the members, modeling information flow in