Биомеметика − интеграция методов машинного обучения и эволюционных вычислений

УДК 004.81

С.И. Родзин

БИОМЕМЕТИКА - ИНТЕГРАЦИЯ МЕТОДОВ МАШИННОГО ОБУЧЕНИЯ И ЭВОЛЮЦИОННЫХ ВЫЧИСЛЕНИЙ*

Биомеметика - активно развивающаяся область эволюционных вычислений и методов оптимизации. Мем - это единица культурной информации, которая может быть передана от человека к человеку путём имитации или обучения. В биомеметике концепции из эволюционной теории (популяционной генетики) переносятся на человеческую культуру. Описываются метрические свойства мемов: распространение, живучесть, энтропия, влияние. С помощью метода анализа иерархий получена оценка приоритета каждого метрического свойства. Разработан алгоритм биомететики, построена его синтаксическая модель. Основными компонентами алгоритма биомеметики являются локальный поиск, кооперация, соревнование, критерий окончания поиска. Интеграция эволюционного алгоритма с машинным обучением заключается в том, что эволюционный алгоритм включает процедуру индивидуального обучения особей с использованием информации о структуре пространства возможных решений. Алгоритм биомеметики иллюстрируется на примере задачи составления расписания: задано множество требований и множество объектов на которых требования должны обслуживаться в соответствии с некоторым порядком, необходимо построить расписание, удовлетворяющее данным ограничениям. Приводятся результаты экспериментов. Качество найденных решений лучше, по сравнению с известными генетическими алгоритмами.

Эволюционные вычисления; биомеметика; задача расписания.

S.I. Rodzin

BIOMEMETICS - INTEGRATION OF MACHINE LEARNING ALGORITHMS AND EVOLUTIONARY COMPUTATION

Biomemetics - actively developing area of evolutionary computation and methods of optimization. Mem - a unit of cultural information that can be transmitted from person to person by imitation or learning. In biomemetics concept of evolutionary theory (population genetics) are transferred to human culture. Defined metrics and submetrics for evaluating of memes: propagation, persistence, entropy, impact. With the help of the analytic hierarchy the estimate of each priority metrically properties. The algorithm biometetics, built his syntactic model. The main components of the algorithm are biomemetics local search, cooperation, competition, end criterion search. Integration of evolutionary algorithm with machine learning is that the evolutionary algorithm includes a procedure of individual training individuals with information about the structure of the space of possible solutions. Biomemetics algorithm is illustrated by the scheduling problem: given a set of requirements and a set of objects on which requirements should be maintained in accordance with certain procedures, it is necessary to find a schedule that satisfies the data constraints. The results of experiments. Quality of the solutions found better compared to known genetic algorithms.

Evolutionary computation; biomemetics; task schedule.

Введение. Многие достижения в технике почерпнуты из природы: броня на танках, волокно кевлар и многое другое. Леонардо да Винчи обращался к природе в поисках конструкторских решений. Г. Эйфель заимствовал идеи у природы и использовал их для создания знаменитой башни. Дарвиновская теория эволюции [1] способствовала появлению направления в искусственном интеллекте (эволюционные вычисления и алгоритмы), которое использует и моделирует процессы естественного отбора. В своем труде [2] Р. Докинз, убежденный дарвинист, изложил геноцентрический взгляд на

* Работа выполнена при поддержке гранта РФФИ № 13-07-00204-а.

эволюцию - стремление генов к «эгоистичной» репликации определяет развитие популяций, сходящихся к эволюционно стабильным стратегиям, а любой самый сложный эволюционный процесс особей и видов может рассматриваться как совокупность эволюции их генов. Естественный отбор на уровне отдельных организмов и групп почти никогда не одерживает верх над отбором на уровне генов.

Одной из революционных идей, высказанных в [2], является схожесть эволюции генов и эволюции человеческой культуры. Р. Докинз назвал единицу культурного обмена, т.е. аналог гена в культуре - мемом. Мемом может быть жест, слово или идея. Любая единица культурной информации, которая может быть передана от человека к человеку путём имитации или обучения - это мем. Мемы передаются между поколениями, мутируют и проходят отбор. Как и гены, мемы стремятся к саморепликации. В биомеметике концепции из эволюционной теории (в особенности попу-ляционной генетики) переносятся на человеческую культуру. Биомеметика исходит из гипотезы, что эволюция культуры подчиняется законам дарвинизма, а ее элементы проявляют качества ключевые для дарвинистской модели - наследственность, изменчивость и воспроизводство с различной частотой. Со временем, самые приспособленные единицы культуры широко распространяются, а плохо приспособленные - исчезают. Чтобы успешно воспроизводиться, мемы должны стремиться к максимальной точности своей передачи, широкому распространению и, как можно более долгому по времени воспроизводству. Мемы, которые наилучшим образом решают эти задачи, являются победителями в процессе эволюции культуры.

Мемы, подобно генам, рассматриваются в качестве репликаторов как информация, копируемая вариационно и селективно. Иными словами, мемы копируются путём имитации, обучения и борются за выживание в нашей памяти и за шанс быть вновь реплицированными.

1. Метрические свойства мемов. Каким образом можно измерить мем как единицу культурной эволюции? Метрика - это мера, позволяющая получить численное значение некоторых свойств объекта. Метрику мема будем характеризовать через следующие его свойства: распространение, живучесть, энтропия и степень влияния [3]. Значения метрических свойств мемов представлены на рис. 1.

Большая (свыше

100 М5) _

Рис. 1. Метрические свойства мемов

В табл. 1 представлены примеры, характеризующие такие свойства мемов, как распространение и живучесть.

Дисперсия реципиентов

Энтропия, как одно из метрических свойств мема, указывает на количество информации, приходящейся на одно элементарное сообщение источника. Энтропия измеряется по Шеннону. Например, количество информации (энтропия), необходимое чтобы выбрать одно слово из словаря объемом 200 слов составляет 7,6 бит (^2200 = 7,6 бит). Для мема из 50 слов потребуется 380 бит. Если объем словаря составляет 20000 слов, то для мема из 50-слов потребуется только 714 бит. Для словаря из 30000 слов энтропия одного слова составляет около 15 бит.

Таблица 1

Примеры свойств мемов

Распространение (число реципиентов) Живучесть (час, год) Примеры мемов

1 1 час Источник мема

10 10 час Сплетня

100 100 час Газетная статья

1000 1000 час Городское событие месяца

10000 1 год Поваренная книга

100000 10 лет Революция

1000000 100 лет Политическая идеология

10000000 1000 лет Религиозный канон

100000000 10000 лет Технология выращивания пшеницы

1000000000 100000 лет Ритуал захоронения человека

10000000000 1000000 лет Алгоритм изготовления каменных орудий труда

В табл. 2 представлены примеры и значение свойства энтропии мемов.

В зависимости от рассматриваемой задачи, тип реципиентов (субъект, воспринимающий адресованное ему сообщение) можно охарактеризовать или классифицировать по экономическим, социальным или образовательным классам, по этнокультурной принадлежности, религии, полу, возрасту или роду занятий и т.д. В зависимости от рассматриваемой задачи, дисперсия реципиентов может классифицироваться как племенная, семейная, региональная, национальная и т.д.

Таблица 2

Энтропия мемов

Слов в меме (число) Энтропия (бит) Примеры мемов

1 1 Восклицание

10 10 Крылатые слова, слоган, увещевание

100 100 Молитва, шутка

1000 1000 Объявления, реклама, пропаганда

10000 10000 Политические речи, проповеди, полемика, статьи, блоги

100000 100000 Методические указания, манифест

1000000 1000000 Библия, Коран, сокращенный словарь

10000000 10000000 Полный словарь, религиозные каноны

100000000 100000000 Федеральный регистр, энциклопедия, Вики-педия

1000000000 1000000000 Инструкции по сборке атомохода или космического корабля

Подметрикой живучести мемов являются продолжительность передачи ме-мов и время запоминания (хранения). Будем различать следующие подметрики для энтропии мемов: малая (меньше или равна 100 Кбит), средняя (меньше или равна 100 Мбит) и большая (больше 100 Мбит).

Подметрикой для метрического свойства «влияние» являются индивидуальные последствия и потенциальное воздействие мема на общество в целом.

Наличие метрики позволяет экспертно произвести оценку относительной важности (определить «вес» или приоритет) каждого метрического свойства, например, с помощью метода анализа иерархий [4] и использовать полученные оценки для сравнения с альтернативными мемами. Наличие метрики упрощает процесс принятия решений, позволяет ранжировать альтернативные мемы.

Согласно экспертной оценке по методу анализа иерархий важности указанных выше четырех метрических свойств мемов был получен вектор локальных приоритетов следующего вида: (0,428; 0,285; 0,087; 0,2). Метрическое свойство «распространение» получило наибольший «вес», равный 0,428. Этот «вес» включает три составляющих: «количество реципиентов» (0,211), «тип реципиентов» (0,133) и «дисперсия реципиентов» (0,084). Следующим по важности метрическим свойством была признана «живучесть» (0,285): «время передачи» (0,18) и «время запоминания» (0,105). Далее по важности идет метрическое свойство «влияние». Его «вес» оказался равен 0,2. Он включал в себя следующие составляющие: «индивидуальные последствия» (0,069) и «общественные последствия» (0,131). Наконец, наименее значимым является свойство «энтропия» (0,087): малая (0,046), средняя (0,029), большая (0,012), т.к. размер мема не оказывает существенного влияния на возможности его распространение, запоминание, изменение поведения (особенно это заметно для цифровых медиа).

Наибольший «вес» для метрического свойства «распространение» мема имеет составляющая «количество реципиентов». Это показатель легко поддается измерению и является весьма полезным показателем успешности распространения мема. Наибольший «вес» для метрического свойства «живучесть» мема имеет составляющая «время передачи». Для метрического свойства «влияние» мема наибольшим «весом» обладает составляющая «социальные последствия» - изменение в общественном поведении считаются более важными, чем влияние отдельного индивидуума, даже если этот человек оказал заметное влияние на историю. Наконец, для метрического свойства «энтропия» наиболее важным является показатель «малая» энтропия (мы более чутко реагируем на короткие мемы).

2. Алгоритм биомеметики. Меметический подход представляет собой интеграцию эволюционного алгоритма с методом машинного обучения. Основными компонентами алгоритма биомеметики являются:

♦ локальный поиск на основе алгоритмов, использующих информацию о структуре области поиска. Для осуществления локального поиска в [5] предлагалось использовать алгоритм имитации отжига. На наш взгляд, перспективным является применение менее сложных в вычислительном отношении процедур, таких как алгоритм наискорейшего спуска/подъёма;

♦ кооперация для организации обмена информацией между особями, аналогичная применению оператора двухточечного кроссинговера в генетических алгоритмах [6] - выбирается некоторый диапазон в пределах длины решения, и соответствующие сегменты двух решений меняются местами. В результате получаются две новые особи, к которым впоследствии применяется процедура локальной оптимизации;

♦ соревнование путем отбора наиболее приспособленных особей из популяции и исключения из неё менее приспособленных (процедура аналогична селекции в генетических алгоритмах);

♦ критерий окончания поиска, который наряду с подсчётом числа итераций и оценкой улучшения результата может включать оценку разнообразия особей (в случае вырождения популяции бессмысленно продолжать поиск). Интеграция эволюционного алгоритма с методом машинного обучения заключается в том, что в эволюционный алгоритм включается процедура индивидуального обучения особей с использованием информации о структуре пространства возможных решений. Речь идет о сочетании популяционного и локального поиска при соблюдении определенного баланса между ними - при большом числе особей даже простая процедура локального поиска может занять непозволительно много времени.

Одним из первых алгоритм биомеметики предложил Р. Рейнольдс в [7]. Он утверждал, что адаптация и эволюция среди особей популяции происходит быстрее с использованием культурных связей. В дальнейшем этот подход был использован для решения следующих NP-сложных оптимизационных задач: разбиение графов [8], раскраска графа [9], покрытие множеств [10], упаковка рюкзака [11], квадратичное программирование [12], о коммивояжере [13, 14], обучения нейросе-ти [15], распознавания образов [16].

Основное отличие предлагаемого алгоритма состоит в том, что наряду с биологической эволюцией происходит культурная эволюция на двух уровнях: на уровне популяции и на уровне отдельного человека, т.е. происходит двойное наследование. Люди накапливают информацию о мире (базу знаний), которая передается другим поколениям, адаптируясь по мере изменения ситуации. Речь идет о различных видах культурных знаний: нормативных, ситуативных, исторических и др. Известные гибридные эволюционные алгоритмы не поддерживают механизмы двойного наследования [17].

На популяционном уровне предлагаемый биомеметический алгоритм работает аналогично эволюционным алгоритмам. Решениями являются отдельные индивидуумы, входящие в популяцию с различными характеристиками, которые могут оцениваться некоторой функцией пригодности. На втором уровне обрабатываются знания, полученные несколькими поколениями и доступные текущему поколению. Между двумя уровнями алгоритма существует специальный коммуникационный протокол для обмена информацией.

Входной информацией для алгоритма меметики является популяция индивидов и размерность задачи, выходной - база знаний KB, включающая ситуативные и нормативные знания. Ситуативные знания представляют собой описания ситуаций и решений, которые признаны в этих ситуациях наиболее разумными: KB = <Sk, Rk>, k = 1, 2,..., M, где Sk - описание ситуации, которая по мнению экспертов и/или по опыту работы возникает в популяции; Rk - решение, которое является целесообразным в этой ситуации; М - размерность ситуативной части КВ. Нормативная часть базы знаний включает общие нормы (законы, правила, заповеди, традиции), регламентирующие человеческое поведение.

Ниже приводится описание абстрактного алгоритма биомеметики на псевдокоде:

Input: Pt - популяция с номером t, N - размерность задачи. Output: KB - база знаний Инициализация популяции P^IP(N, Pt) KB-^Начальная база знаний IKB(N, P) while -(условие останова) do оценка Pt

ситуативная КВ-^accept ситуативная KB

нормативная КВ-^accept нормативная KB(Pt) update нормативная KB

end

return KB

Синтаксическая модель алгоритма меметики включает следующие элементы: MA = {Po, t, ц, So, 1, N, F, ф, L}, где P0 = (Pq1, P02,..., Р0ц) - исходная популяция мемов из конечномерного дискретного пространства; t - шаг эволюции (t = 0, 1,., tmax]); ц - размер популяции мемов; 50 - начальный набор параметров для операторов эволюции; 1 - размер множества мемов-потомков, сгенерированных на очередном шаге эволюции; N - размерность задачи; F - функция пригодности; ф - отображение, описывающее связь между мемами и кодируемыми объектами, управление и манипулирование которыми осуществляет алгоритм меметики; L = {L1, L2,..., Lm} - операторы генерации мемов, используемые алгоритмом в процессе эволюции.

В рамках данной синтаксической модели можно описать все разнообразие алгоритмов биомеметики при использовании различных сочетаний эволюционных операторов. С этой целью для характеристики таксономии алгоритмов биомеметики введем индекс I(MA) = (i3, i2, i1, i0), который представляет собой 4-битовое двоичное число. Младший бит указывает на использование унарного оператора эволюции, аргумент которого включает один мем, следующий бит указывает на использование не более ц мемов, следующий бит указывает на использование не более ц + 1 мемов, старший разряд - на использование 2P0u"uPt-1 мемов. Если операторы генерации мемов Lj(t) изменяют свои параметры, то говорят об адаптации мемов. Если изменяется сам оператор Lj(t), то говорят о самоадаптации мемов.

Задача составления расписания. Проиллюстрируем работу биомеметического алгоритма на примере задачи составления расписания [18].

Проблема составления разнообразных расписаний хорошо известна в исследовании операций, искусственном интеллекте. В общем случае она формулируется так: задано некоторое множество требований с определённым набором характеристик по их выполнению (длительность обработки требования, стоимость обработки требования, момент поступления требования, директивный срок окончания обслуживания требования и т.п.). Задано некоторое множество объектов (машин, приборов, аудиторий и т.п.), на которых требования должны обслуживаться в соответствии с некоторым порядком. Ставится задача дискретной оптимизации: построить расписание, минимизирующее время выполнения работ, стоимость работ и т.п. Например, составление расписания экзаменационной сессии в вузе всегда было трудной проблемой - необходимо выполнить «жесткие» ограничения и минимизировать отклонения для «мягких» ограничений.

«Жесткие» ограничения должны быть полностью удовлетворены и не могут нарушаться. Примерами такого рода ограничений являются следующие:

♦ студент не может сдавать два экзамена одновременно;

♦ экзамены для студентов разных групп должны быть запланированы в разные периоды времени;

♦ количество студентов, сдающих запланированный экзамен, не должно превышать вместимость аудитории.

Кроме того, часто встречаются жесткие ограничения, связанные с упорядочением экзаменов.

«Мягкие» ограничения регламентированы действующими санитарными нормами или общепринятой практикой (например, желательностью более равномерного расположения экзаменов в сессионном графике и пр.). Зачастую все «мягкие»

ограничения удовлетворить невозможно. Однако их выполнение положительно влияет на качество расписания. Соблюдение или не соблюдение «мягких» ограничений является критерием построения качественного расписания. Чем в большем объеме будут соблюдены «мягкие» ограничения, тем более качественным, методически проработанным и комфортным будет расписание. Однако несоблюдение «мягких» требований не лишает практической возможности использования расписания. Хотя большинство разработчиков расписаний даже не догадываются о ходе недельных кривых умственной работоспособности обучающихся.

Формализуем постановку задачи составления расписания.

Обозначим через Е, множество экзаменов (/ = 1,..., Ы); через Р - интервал времени между экзаменами; С = - матрица конфликтов, ее элементы равны

числу студентов, которым в ходе сессии необходимо сдавать экзамены / и у; М - число студентов; ^ - интервал времени, назначенный для сдачи экзамена к ((1 < 4 < Т, к = 1,..., Ы).

Целевая функция оптимизации имеет следующий вид:

in^F

mm

i=1

где F( i) = 27= i +1 cij -P(ti'tj)'

, Л { 25/2если 1 < 1t,~ t,| < 5 причем p ( ti,tj)=>

О, в пр оти в но м случ ae,

(1, если ti = tj при условии 2 f= 1127= i + 1 c ij - Я ( ti, tj) = О , гдe Я ( t, tj) = •

(0, иначе.

Соотношение (1) представляет затраты времени на экзамен i. Их величина определяется как сумма произведений элементов конфликтной матрицы на степень близости интервалов времени, назначенных для сдачи экзамена. Степень близости двух экзаменов определяется из соотношения (2). Указанное условие отражает требование о том, что студент не может сдавать два экзамена одновременно.

Для решения задачи составления расписания экзаменационной сессии был применен представленный выше алгоритм биомеметики. Полученные в ходе эволюции решения улучшались в течение одного поколения за счет использования алгоритма локального меметического поиска. Алгоритм был запрограммирован в Matlab, выполнен на компьютере Intel Pentium 4 (2,33 ГГц) и проверен на реальных наборах тестовых данных. Результаты экспериментов показали, что качество найденных решений лучше, по сравнению с известными генетическими алгоритмами [19], где приводятся результаты их применения для задачи расписания.

Заключение. Биомеметические алгоритмы обеспечивают неплохие результаты для решения целого ряда трудных задач: NP-сложных задач оптимизации, планирования, машинного обучения, автоматизированного проектирования, управления. Они решают сложные задачи быстро, надежно и точно. Алгоритмам биомеметики присущ параллелизм. Они проще генетических и роевых алгоритмов. Биоме-метика - активно развивающаяся область эволюционных вычислений и методов оптимизации в целом. На данный момент наиболее перспективным следует считать создание адаптивных версий алгоритма, учитывающих предысторию поиска, проблемно-ориентированную информацию об области поиска.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Дарвин Ч. Происхождение видов путем естественного отбора или сохранение благоприятных рас в борьбе за жизнь. - СПб.: Наука, 1991. - 540 с.

2. ДокинзР. Эгоистичный ген. - М.: Мир, 1993. - http://modernlib.ru/books/dokinz_richard/.

3. Родзин С.И. Метрика и алгоритмы меметики // Вестник РГУПС. - 2013. - № 4 (52). - С. 59-67.

4. Саати Т. Принятие решений. Метод анализа иерархий. - М.: Радио и связь, 1993. - 278 с.

5. MoscatoP. Memetic algorithms // Handbook of Applied Optimization. - 2002. - P. 157-167.

6. Курейчик В.В., Курейчик В.М., Родзин СИ. Теория эволюционных вычислений. - М.: Физматлит, 2012. - 260 с.

7. Reynolds R.G. An Introduction to cultural algorithms // Proc. of the third annual conf. on Evolutionary Programming. - 1994. - P. 131-139.

8. Merz P. Fitness landscapes, memetic algorithms and greedy operators for graph bi-partitioning // Evolutionary Computation. - 2000. - № 8. - P. 61-91.

9. Costa D. Embedding of a sequential procedure within an evolutionary algorithm for coloring problems in graphs // Journal of heuristics. - 1995. - № 1. - P. 105-112.

10. Beasley J. A genetic algorithm for the set covering problem // European journal of operational research. - 1996. - № 2 (94). - P. 393-404.

11. Beasley J. A genetic algorithm for the multidimensional knapsack problem // Journal of heuristics. - 1998. - № 4. - P. 63-86.

12. Merz P. Greedy and local search heuristics for the unconstrained binary quadratic programming problem // Journal of heuristics. - 2002. - № 2. - P. 197-213.

13. Krasnogor N., Smith J. A memetic algorithm with selfadaptive local search: TSP as a case study // Proc. of the Genetic and Evolutionary Computation Conference (GECC0-2000). Las Vegas, USA: Morgan Kaufmann. - P. 987-994.

14. Kureichik V.V., Kravchenko Y.A. Bioinspired algorithm applied to solve the travelling salesman problem // World Applied Sciences Journal. - 2013. - Vol. 22, № 12. - P. 1789-1797.

15. Topchy A., Lebedko O., Miagkikh V. Fast learning in multilayered networks by means of hybrid evolutionary and gradient algorithms // Proc. of int. conf. on evolutionary computation and its applications. - 1996. - P. 390-398.

16. Areibi S. An integrated genetic algorithm with dynamic hill climbing for VLSI circuit partitioning // Proc. of int. conf. on DM&EA. - 2000. - P. 97-102.

17. Kureichik V.M., Rodzin S.I. Evolutionary algorithms: genetic programming // Journal of Computer and Systems Sciences International. - 2002. - Vol. 41, № 1. - С. 123-132.

18. Бартенев А.С. Обзор основных вопросов автоматизированного составления расписания занятий в вузе // Современные научные исследования и инновации. - 2011. - № 5 [Электронный ресурс]. URL: http://web.snauka.ru/issues/2011/09/2576 (дата обращения: 20.02.2014).

19. Qu R. et al. A survey of search methodologies and automated system development for examination timetabling // Journal of scheduling. - 2009. - № 12. - P. 55-89.

REFERENCES

1. Darvin Ch. Proiskhozhdenie vidov putem estestvennogo otbora ili sokhranenie blagopri-yatnykh ras v borbe za zhizn [The origin of species by means of natural selection or the preservation of favorable races in the struggle for life]. Saint-Petersburg: Nauka, 1991, 540 p.

2. Dokinz R. Egoistichnyy gen [The selfish gene]. Moscow: Mir, 1993. Available at:http://modernlib.ru/books/dokinz_richard/.

3. Rodzin S.I. Metrika i algoritmy memetiki [Metrics and algorithms of memetics], Vestnik RGUPS [Herald Rostov State University Railway], 2013, No. 4 (52), pp. 59-67.

4. Saati T. Prinyatie resheniy. Metod analiza ierarkhiy [Making decisions. The method of analysis of hierarchies]. Moscow: Radio i svyaz, 1993, 278 p.

5. Moscato P. Memetic algorithms Handbook of Applied Optimization. 2002, pp. 157-167.

6. Kureychik V.V., Kureychik V.M., Rodzin S.I. Teoriya evolyutsionnykh vychisleniy [The theory of evolutionary computation]. Moscow: Fizmatlit, 2012, 260 p.

7. Reynolds R.G. An Introduction to cultural algorithms, Proc. of the third annual conf. on Evolutionary Programming, 1994, pp. 131-139.

8. Merz P. Fitness landscapes, memetic algorithms and greedy operators for graph bi-partitioning, Evolutionary Computation, 2000, No. 8, pp. 61-91.

9. Costa D. Embedding of a sequential procedure within an evolutionary algorithm for coloring problems in graphs, Journal of heuristics, 1995, No. 1, pp. 105-112.

10. Beasley J. A genetic algorithm for the set covering problem, European journal of operational research, 1996, No 2 (94), pp. 393-404.

11. Beasley J. A genetic algorithm for the multidimensional knapsack problem, Journal of heuristics, 1998, No. 4, pp. 63-86.

12. Merz P. Greedy and local search heuristics for the unconstrained binary quadratic programming problem, Journal of heuristics, 2002, No. 2, pp. 197-213.

13. Krasnogor N., Smith J. A memetic algorithm with selfadaptive local search: TSP as a case study, Proc. of the Genetic and Evolutionary Computation Conference (GECCO-2000). Las Vegas, USA: Morgan Kaufmann, pp. 987-994.

14. Kureichik V.V., Kravchenko Y.A. Bioinspired algorithm applied to solve the travelling salesman problem, World Applied Sciences Journal, 2013, Vol. 22, No. 12, pp. 1789-1797.

15. Topchy A., Lebedko ., Miagkikh V. Fast learning in multilayered networks by means of hybrid evolutionary and gradient algorithms, Proc. of int. conf. on evolutionary computation and its applications, 1996, pp. 390-398.

16. Areibi S. An integrated genetic algorithm with dynamic hill climbing for VLSI circuit partitioning, Proc. of int. conf. on DM&EA. 2000, pp. 97-102.

17. Kureichik V.M., Rodzin S.I. Evolutionary algorithms: genetic programming, Journal of Computer and Systems Sciences International, 2002, Vol. 41, No. 1, pp. 123-132.

18. Bartenev A.S. Obzor osnovnykh voprosov avtomatizirovannogo sostavleniya raspisaniya zanyatiy v vuze [An overview of the main issues of automated scheduling of classes in high school], Sovremennye nauchnye issledovaniya i innovatsii [Modern scientific research and innovation], 2011, № 5. Available at: http://web.snauka.ru/issues/2011/09/2576 (accessed: 20 February 2014).

19. Qu R. et al. A survey of search methodologies and automated system development for examination timetabling, Journal of scheduling, 2009, No. 12, pp. 55-89.

Статью рекомендовала к опубликованию д.т.н., профессор Л.С. Лисицына.

Родзин Сергей Иванович - Южный федеральный университет; e-mail: srodzin@sfedu.ru;

347928, г. Таганрог, пер. Некрасовский, 44; тел.: 88634371673; кафедра МОП ЭВМ; профессор.

Rodzin Sergey Ivanovich - Southern Federal University; e-mail: srodzin@sfedu.ru; 44,

Nekrasovskiy, Taganrog, 347928, Russia; phone: +78634371673; the department of software engineering; professor.

УДК 681.325

В.А. Ванидовский, О.Б. Лебедев

ДВУМЕРНАЯ УПАКОВКА В ПОЛУОГРАНИЧЕННУЮ ПОЛОСУ НА ОСНОВЕ МОДЕЛИРОВАНИЯ АДАПТИВНОГО ПОВЕДЕНИЯ МУРАВЬИНОЙ КОЛОНИИ*

Рассматривается задача двумерной упаковки в полуограниченную полосу (1.5 DBP). В качестве структуры данных, несущих информацию об упаковке, используется последовательность номеров прямоугольников, представляющую порядок их укладки. Существенную роль в получении решения играет декодер, осуществляющий укладку прямоугольников по заложенным в нем правилам. Предложены новые способы решения задачи упаковки, использующие математические методы, в которых заложены принципы природных механизмов принятия решений. В качестве базовой структуры декодера выбрана эвристика Floor Ceiling No Rotation (FCNR). Для построения декодера и кодовой последовательности использованы модификации эвристики (FCNR) и метаэвристики, базирующиеся на моделировании адаптивного поведения муравьиной колонии. В отличие от канонической парадигмы муравьиного алгоритма муравьем на графе поиска решений G=(X,U) строится маршрут с разбиением на части и формированием на вершинах, входящих в каждую часть, подграфов, на ребрах которых откладывается феромон. писывается структура графа

*

Работа выполнена при частичной поддержке РФФИ (проект № 12-01-00100). 34