2 5т, 8 9 1 3 «Як). {8,9,10,11,14,15} {1,2,3,4,5,6,7,13,16}
После этого производим операцию обмена, удаляем из генов р + 2 и р + 3 ребра принадлежащие циклу №6 и, наконец, сдвигаем значащие элементы влево, после чего операция мутации заканчивается:
2 5 7 8 9 1 3 0 0 0 {12,15} {3,5,8,9,10,11,14} {1,2,4,6,7,13,16}
Схема проведения операции инверсии аналогична операции мутации с той лишь разницей, что для обмена выбирается не один ген хромосомы, а несколько. Число обмениваемых генов задается случайным образом, однако оно не должно быть больше числа неначащих разрядов инвертируемой хромосомы.
Вероятности проведения операций мутации Р(ОМ) и инверсии Р(ОИ) задается случайным образом на интервале |0,1], причем их суммарная вероятность Р(виМ) = Р(ОМ) + Р(ОИ) = 1.
Для построения плоской укладки в сформированном базисе циклов Вр выбираются последовательно цикл за циклом, причем на каждом шаге разрастание происходит за счет включения новых ребер во внешний цикл. То есть, внешний цикл либо удлиняется - если в новом цикле число новых, незадействованных ребер больше числа повторяющихся, либо, укорачивается - в противном случае. При этом повторяющиеся ребра автоматически выпадают из внешнего цикла и оказываются внутри.
С точки зрения теории множеств мы на каждом і + 1 - м шаге находим разность множеств Свні’ ■= Свні \ С|+1 и С|+і’ = С!+1 \ Свні, где Свн - внешний цикл графа. После чего выполняем суммирование СвН|+І=Свні’ + С|+і’.
Плоская укладка сформирована когда не остается непройденных ребер.
Разработанный алгоритм имеет пространственную сложность 0(аМ2), где а переменная, зависящая от соотношения числа циклов к числу ребер и размера популяции. Временная сложность алгоритма определения планарности пропорциональна О(РМ), где 0 -переменная, зависящая от размера популяции вр и числа поколений 1ЧР. Очевидно, что при фиксированных значениях размера популяции и числа генераций 1ЧР алгоритм имеет полиномиальную теоретическую пространственную и временную сложность и, следовательно, имеет практическую полезность.
УДК 658.512
В.В. Курейчик, Н.В. Курейчик1 РЕШЕНИЕ ОПТИМИЗАЦИОННЫХ ЭКОНОМИЧЕСКИХ ЗАДАЧ НА ОСНОВЕ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ
В последнее время наблюдается неуклонное использование математических методов в экономике. Для построения математических моделей (ММ) экономических задач эффективно используется теория графов, а для разработок эвристических алгоритмов - методы и модели исследования операций. Одной из важнейших экономических задая является транспортная задача (ТЗ). Ее постановка следующая: задано некоторое множество товара Т={Т1, Т2,..., Т„}, 1т„ |=п, расположенное в различных местах М={М!, М2,..., Мр}, |м |=р. Товар должен быть перевезен в другие пункты П={П1, П2,..., Пч}, |п|=я. При этом задана матрица стоимости перевозок, определяющая стоимость каждой перевозки М; Пч. Необходимо построить оптимальный план перевозки, при котором транспортные расходы минимальны в смысле заданной целевой функции.
1 Работа выполнена за счет частичного финансирования по гранту РФФИ ГР № 99-01-00050
Материалы Международной конференции
“Интеллектуальные САПР”
Отметим, что практически все экономические задачи являются задачами оптимизации, в которых необходимо найти наилучшее решение. Такие задачи можно описать на основе кортежа длина три <Р, О, Р>, где I’ множество решений данной задачи, Б множество ограничений, позволяющее сузить множество Р и выделить в нем область допустимых решений Рдоп, таких что Рдоп £Р, И - целевая функция или критерий оптимизации.
Основные требования оптимизации:
Р(Р) —> экстремуму (максимуму или минимуму). Тогда решение Р1 е Рдоп, удовлетворяющее требованию оптимизации, и является оптимальным решением.
Существуют конкретные модификации ТЗ [1].
Это задача Монжа, когда на заданной площади размещено множество масс товаров, которые необходимо перевезти на другую заданную площадь с минимизацией транспортных расходов [2].
Это задача Ордена, когда распределение товара задано и в некоторых местах спрос превышает предложение, а в некоторых наоборот. При этом заданы стоимости перевозок единицы продукта. Необходимо при минимальных затратах удовлетворить спрос [2].
Это задача Хичкока, когда заданы ш портов отправления и п портов назначеняия. Дана матрица отдельых перевозов, число кораблей в каждом из портов назначения, количество товаров, необходимых в разных портах назначения. Задача найти план перевозок с минимальными издержками [2].
С ТЗ тесто связаны задачи об оптимальном назначении, задачи о складах, задачи построения экономических моделей, промышленных взаимосвязей и др.
В отличие от существующих эвристик или алгоритмов полного перебора для поиска оптимальных решений предлагается использовать эволюционные стратегии, основанные на моделировании эволюции и алгоритмах генетического поиска.
Генетические алгоритмы это поисковые алгоритмы, основанные на механизмах натуральной селекции и генетики. Они реализуют “выживание сильнейшихг' среди рассмотренных структур решений, формируя и изменяя поисковый алгоритм на основе моделирования эволюции. Центральная тема поиска в генетических алгоритмах (ГА) это поиск баланса между эффективностью и качеством для “выживания”, г.е. получения оптимальных решений в различных условиях, что как нельзя лучше подходит для приведенных экономических задач.
Базовый ГА для решения сформулированных экономических задач можно укрупненно сформулировать следующим образом:
1. Конструируется начальная популяция (набор решений заданной транспортной задачи).
2. Формируется целевая функция и производится оценка всех решений.
3. Производится селекция популяции на основе целевой функции (ЦФ). Вычисляется максимальное, минимальное, среднеее значение ЦФ.
4. Члены популяции, у которых значение ЦФ выше и равно среднему значению, копируются для продолжения генетического поиска.
5. Создается набор пар из отмеченного множества решений.
6. К каждой паре применяется генетический оператор кроссинговера. В результате получаются новые решения-потомки.
7. Производится подсчет значения ЦФ для новых решений.
8. Новые решения с высоким значением ЦФ вытесняют старые решения из популяции таким образом, чтобы размер ее оставался постоянным.
9. К лучшим решениям-потомкам применяются операторы мутации, инверсии, транслокации. Если в новых решениях значение ЦФ улучшается, то переход к 8, если нет, то проверяется, проведено ли данное число генераций; если да, то переход к 10, если нет, то переход к 4.
10. Конец работы алгоритма.
Данный алгоритм представляет собой модель процесса, протекающего в природе. Природа за огромное число поколений эволюции отработала оптимальные процедуры передачи наследственной информации и реализации ЦФ “выживания сильнейших”. Поэтому
применение генетических операторов кроссинговера, мутации, инверсии, транслокации, которые моделируют аналогичные процессы из генетики, позволяет перераспределить генетичский материал и находить наилучшие решения там, где другие методы оптимизации не могут этого сделать.
Пусть задано а* - число единиц груаза в А, пункте отправления 1=1,2,...,п, Ь| - число единиц груза, требуемого в пункте назначения ]=1,2,...,т. Пусть Ху число единиц груза, отправляемого из А( в .
Пусть
/I т
= О)
/ = 1 7 = 1
Введем следующие ограничения
П
хij ~ ajJ 1,2,..., w
/=1 W
т
X = bj,j = 1,2,...,w (3)
j“ |
Тогда целевая функция ТЗ:
п т
Цф=ХХ си’хи
1=1 J-1
В отличие от других оптимизационных эвристик ГА, как правило, анализируют Различные области пространства решений одновременно и более приспособлены к нахождению новых областей с лучшим значением ЦФ, т.е. с лучшими решениями за счет объединения квазиоптимальных решений из разных популяций.
Временная сложность ГА лежит в пределах 0(ап2) - 0((3п4), где а, Р - коэффициент, п -число входов алгоритма.
ГА - это мощная новая стратегия решения экономических задач большой размерности с Получением оптимальных или квазиоптимальных решений.
ЛИТЕРАТУРА
Исследование операций в 2-х томах. Том 1. Методологические основы и математические методы. М.: Мир, 1981.
^ Применение в экономике теории графов. М.: Прогресс, 1966.
^ Handbook of Genetic Algorithms. Ed LDavis, Van Nostrand Reinhold, 1991.
Курейчик B.M. Генетические алгоритмы. Монография. Изд-во ТРТУ, Таганрог, 1998.