КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Решение комбинаторных задач с помощью программы Evolver
При решении комбинаторных задач проблема заключается в поиске наилучшего решения среди возможных перестановок параметров задачи. В качестве примера можно назвать сортировку списка имен (пример 4.29) или задачу коммивояжера [33]. В программе Evolver для решения комбинаторных задач применяются генетические операторы, определение которых несколько отличается от аналогичных операторов, ориентированных на оптимизационные задачи. В частности: Скрещивание разбивается на следующие шаги: 1) случайным образом выбираются позиции у первого родите 2) находятся позиции с такими же значениями генов (аллеля 3) значения оставшихся позиций первого родителя копируют Описанный способ скрещивания иллюстрируется на рис. 4.111. На этом рисунке показаны две хромосомы родителей, состоящие из семи генов со значениями из интервала целых чисел от 1 до 7. Каждый ген в хромосоме характеризуется уникальным значением. Каждая хромосома представляет собой перестановку натуральных чисел от 1 до 7. Под каждым геном указан номер его позиции (locus). Допустим, что показатель скрещивания равен 0,5, и у первого родителя случайным образом выбраны позиции 1,4,5, 6, на которых находятся значения 3, 7, 6, 2 соответственно. У второго родителя эти значения находятся на позициях 1, 5, 6, 7. В результате копирования значений оставшихся позиций первого родителя (т.е. чисел 5,1, 4 с позиций 2, 3, 7 соответственно) на оставшиеся позиции второго родителя
4.11. Приложения эволющ (т.е. на позиции 2, 3, 4) в последовательности, в которой они записаны у первого родителя, образуется потомок со значениями генов 3, 5 1,4,7,2,6. Представленный метод скрещивания применяется в программе Evolver для решения задач, которые сводятся к поиску хромосом с наилучшим упорядочением генов. Описываемый способ подобен упорядоченному скрещиванию (order crossover) [9], показанному на рис. 4.112. Номера позиций выбираются случайным образом. Далее значения генов с выбранных позиций одного из родителей переносятся на соответствующие позиции второго родителя. В результате скрещивания образуются два потомка. Мутация. Оператор мутации реализует так называемую мутацию, основанную на упорядочении (order-based mutation) [9]. Определенная таким образом мутация заключается в случайном выборе двух позиций в хромосоме и обмене значений генов на этих позициях. Например, после мутации хромосомы [3 5 1 4 7 2 6] на выбранных позициях 2 и 5 будет получена хромосома [3714526]. Количество обменов возрастает или снижается пропорционально увеличению или уменьшению показателя мутации. Этот способ мутации отличается тем, что в результате ее выполнения формируется новая хромосома с измененной последовательностью генов. Такая мутация применяется для поиска наилучшей перестановки параметров задачи.
Дата добавления: 2015-06-04; Просмотров: 303; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |