Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

5335

.pdf
Скачиваний:
3
Добавлен:
13.11.2022
Размер:
1.25 Mб
Скачать

81

2.7. Лабораторная работа 7

Тема: Генетические алгоритмы

Цель работы – изучить особенности применения генетических алгоритмов к оптимизационным задачам, получить опыт применения генетических алгоритмов к конкретной предметной области.

Теоретические сведения

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

если те закодированы соответствующим образом.

Данные алгоритмы строятся на основе принципов эволюции биологических организмов Чарльза Дарвина. В природе наиболее приспособленные к окружающим условиям особи будут иметь больше шансов воспроизвести потомков. Следовательно, гены высокоадаптированных особей распространяются в популяции и количество их потомков возрастает в каждом следующем поколении, т.е. вид развивается за счёт приспособления к среде обитания.

Генетические алгоритмы по аналогии с эволюционным механизмом работают с популяцией, каждая из хромосом которой представляет возможное решение данной задачи. Каждая хромосома представляет собой конкатенацию ряда подстрок, называемых генами и оценивается мерой её

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

результате появляются новые особи, сочетающие в себе характеристики,

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

82

перспективное решение в широком пространстве поиска. В конечном итоге,

популяция сходится к оптимальному решению задачи.

Рассмотрим стандартный генетический алгоритм.

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

(0 или 1).

Функцией приспособленности в ГА может служить целевая функция оптимизации. Стандартный ГА генерирует начальную популяцию структур случайным образом и работает итерационно до тех пор, пока не выполнится заданное число поколений или критерий остановки. ГА реализует отбор хромосом пропорционально приспособленности, одноточечный кроссовер и мутацию для каждого поколения. Сначала пропорциональный отбор назначает каждой i-й хромосоме вероятность Ps(i), равной отношению её приспособленности к суммарной приспособленности популяции:

Ps (i)

fi

.

n

 

fi

 

 

i 1

 

Отбор и замещение всех n особей происходит в соответствии с величиной

Ps(i). Простейший оператор пропорционального отбора – «рулетка», которая отбирает особей с помощью n «запусков». Колесо рулетки содержат по одному сектору для каждого члена популяции. Размер i-го сектора пропорционален соответствующей величине Ps(i). При таком отборе члены популяции с более высокой приспособленностью выбираются чаще, чем особи с низкой. ГА выполняет оператор кроссовер для n выбранных особей с заданной вероятностью Рс, для чего n строк сбиваются на n/2 пар случайным образом. Для каждой пары применяется кроссовер с вероятностью Рс. Выражение 1- Рс

означает вероятность сохранения особей, которые переходят на стадию мутации.

83

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

Одноточечный кроссовер работает следующим образом. Сначала случайным образом выбирается одна из l-1 точек разрыва. Точка разрыва – граница между соседними битами в строке. Обе родительские структуры разрываются в этой точке на два сегмента. Затем соответствующие сегменты различных родителей склеиваются и получаются два генотипа потомков.

Пример одноточечного кроссовера:

Генотипы родителей:

Родитель-1: 1111111111

Родитель-2: 0000000000

Выбранная точка разрыва: 3

Генотипы потомков:

Потомок-1: 1110000000

Потомок-2: 0001111111

Пример выполнения Лабораторной работы 7

Условие оптимизационной задачи расчёта химической технологии:

Пусть имеется N химических реакторов, соединенных последовательно и перерабатывающих некоторый тип сырья с целью выделить из него полезный продукт. Пусть x = (xk1, xk2, …, xkn) – характеристика свойств данного продукта.

Обозначим xk = (xk1, xk2, …, xkn) характеристику продукта на входе реактора k,

тогда xk+1 – характеристика на выходе из реактора.

Пусть uk – набор параметров, регулирующих процесс преобразования продукта в k-ом реакторе. Считаем, что известна зависимость xk+1 = fk(xk, uk) для k-го реактора. При этом на реактор могут быть наложены ограничения

γk(uk) < dk.

Требуется найти оптимальные векторы uk, чтобы при заданных начальных свойствах x = (x11, x22, …, xnn) максимизировать величину φ(x1, x2, …, xN, u1,u2,

…, uN), которая может выражать, например, стоимость продукта.

84

В алгоритме жирным шрифтом выделены операции, приводящие к решению данной задачи.

1. Выбор направления эволюционного моделирования

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

2.Выбор типа перераспределения наследственных факторов:

1)рекомбинация хромосомных и нехромосомных генов;

2)рекомбинация целевых негомологических хромосом;

3)рекомбинация участков хромосом, представленных непрерывными молекулами ДНК.

3.Выбор типа рекомбинации участков хромосом:

1)кроссинговер.

Происходит обмен определенными участками между гомологичными хромосомами. Приводит к новому сочетанию сцепленных генов;

2) сайт.

На коротких специализированных участках хромосом происходит обмен генных носителей различных по объёму и составу генетической информации; 3) иллегальная рекомбинация.

Допускает негомологичные обмены (транслокации, инверсии и случаи неравного кроссинговера).

4. Выбор генетических операций:

1) мутация.

Получение разнообразного генетического материала; 2) инверсия.

Участок хромосомы поворачивается на 180о;

3) транслокация.

Перенос части одной хромосомы в другую хромосому;

85

4) транспозиция.

Перенос части хромосомы на другую позицию в пределах этой же хромосомы.

5) делеция.

Выпадение отдельных участков хромосом; 6) дупликация.

Повторение участка генетического материала.

Ген

Геном (ДНК)

Хромосома

5. Способ кодировки хромосомы:

L – длина хромосомы

N – количество реакторов в цепи

P – количество параметров, регулирующих процесс в реакторе

L = N*P

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вид хромосомы при частном случае 4 реактора по 3 параметра на каждый,

где знак «|» это граница элемента, uk j

– j параметр k-го реактора:

’’

u

’’

2 u

’’

’’’

u

’’’

2 u

’’’

3 | u

’’’’

1 u

’’’’

’’’’

u 1

u 2

u 3 | u

1

 

3 | u

1

 

 

 

2 u

3

6. Функция оптимальности хромосомы:

Прохождение через N реакторов материала x и оценка стоимости материала на выходе.

7. Вероятностные параметры:

- вероятность мутации

Mut = 0,001

8.Условие завершения эволюции:

1.Стоимость материала (приспособленность хромосомы) > порогового

86

значения.

2.Достигнуто максимально количество эволюционных циклов.

9.Содержание операторов:

отбор;

рекомбинация;

мутация.

10. Простой генетический алгоритм:

1. Создать начальную популяцию.

Создаётся T хромосом с соблюдением правил построения и случайными генами,

удовлетворяющими ограничениям.

2.Оценить приспособленность каждой особи

2.1.Осуществить прохождения материала x через все реакторы.

2.2.Оценить стоимость получившегося материала, которая и будет являться искомой оценкой приспособленности

3.Задание условия остановки. (Остановка := ложь)

4.ВЫПОЛНЯТЬ цикл, ПОКА НЕ выполнится условие (Остановка == истина):

--------------------------------------------------------------------------------------------------------

4.1. ПОВТОРИТЬ (размер популяции / 2) РАЗ следующее:

------------------------------------------------------------------------------------------------

4.1.1.Выбрать 2 особи с высокой приспособленностью из предыдущего поколения для скрещивания.

4.1.2.Скрестить выбранные особи и получить двух потомков.

4.1.3.Оценить приспособленности потомков

4.1.4.Поместить потомков в новое поколение

------------------------------------------------------------------------------------------------

4.2. ЕСЛИ (приспособленность лучшего потомка > порога), ТО

{Остановка:= истина }

--------------------------------------------------------------------------------------------------------

87

Библиографический список

1.Абдикеев Н. М. Проектирование интеллектуальных систем в экономике :

учебник / Н. М. Абдикеев, под ред. Н. П. Тихомирова. – М. : Экзамен , 2004. –

528 с.

2.Абдикеев Н. М. Интеллектуальные информационные системы / Н. М.

Абдикеев. – М. : КОС-ИНФ, Рос. экон. акад., 2003. – 188 с.

3. Андрейчиков А. В. Интеллектуальные информационные системы : учебник /

А. В. Андрейчиков, О. Н. Андрейчикова. – М. : Финансы и статистика, 2004. –

424с.

4.Гаврилова Т. А. Базы знаний интеллектуальных систем / Т. А. Гаврилова, В.

Ф. Хорошевский. – СПб. : Питер , 2000. – 348 с.

5.Гаскаров Д. В. Интеллектуальные информационные системы : учеб. для вузов /

Д. В. Гаскаров. – М. : Высш. шк., 2003. – 431 с.

88

6. Джексон П. Введение в экспертные системы / П. Джексон. – М. : Вильямс,

2001. – 624 с.

7. Искусственный интеллект : 3 кн. / ред. Э. В. Попова. – М. : Радио и связь,

1990.

8.Оссовский С. Нейронные сети для обработки информации / С. Оссовский, пер.

спольск. И. Д. Рудинского. – М. : Финансы и статистика, 2002. – 342 с.

9.Романов В. П. Интеллектуальные информационные системы в экономике :

учеб. пособие / В. П. Романов, под ред. проф. Н. П. Тихомирова. – М. :

Экзамен , 2003.

10. Фролов Ю. В. Интеллектуальные системы и управленческие решения / Ю. В.

Фролов. – М. : Изд-во МГПУ, 2000.

11.Ярушкина Н. Г. Основы теории нечётких и гибридных систем : учеб. пособие /

Н. Г. Ярушкина. – М. : Финансы и статистика , 2004. – 320 с.

12.Яхъяева Г. Э. Нечеткие множества и нейронные сети : учеб. пособие / Г. Э.

Яхъяева. – М. : Интернет-Университет Информационных технологий;

БИНОМ, 2008.

13.Уткин В. Б. Информационные системы в экономике : учебник для студ. высш.

учеб. заведений / В. Б. Уткин, К. В. Балдин. – М. : Академия, 2004. – 288 с.

14.Леоненков А. В. Нечёткое моделирование в среде MATLAB и fuzzy TECH / А.

В. Леоненков. – СПб. : БХВ – Петербург, 2005. – 736 с.

15.Анализ рязанского рынка СМИ при помощи самоорганизующихся карт Кохонена ( http://www.basegroup.ru/library/practice/media/ )

16.Kohonen's Self Organizing Feature Maps Англоязычный вариант детального описания структуры, процесса обучения и результатов работы SOM.

( http://www.ai-junkie.com/ann/som/som5.html )

17.Кластеризатор на основе нейронной сети Кохонена. Е. С. Борисов

( http://mechanoid.narod.ru/nns/kohonen/index.html )

18.T. Kohonen Self-Organizing Maps. Springer. 1995.

19.Нейронная сеть Кохонена. Материал из Википедии — свободной энциклопедии

( http://ru.wikipedia.org/wiki/Нейронная_сеть_Кохонена )

89

20. Самоорганизующаяся карта Кохонена: материал из Википедии — свободной энциклопедии

( http://ru.wikipedia.org/wiki/Самоорганизующаяся_карта_Кохонена )

21. Самоорганизующаяся карта. Статья от Basegroup Labs.

Приложение А – Методы представления знаний

В толковом словаре С.И. Ожегова знания определяются как « постижение действительности сознанием, наука» или « знание – это совокупность сведений,

познаний в какой-либо области».

Исследования в области искусственного интеллекта потребовали более конкретных определений знания, данных и информации.

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

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

90

методов преобразования, которые являются субъективными и, в свою очередь,

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

Классификация знаний может проводиться по различным основаниям.

По способу существования различают факты и эвристики.

Факты – это хорошо известные обстоятельства; эвристики – это знания из опыта экспертов в конкретной предметной области.

По формам представления знания бывают декларативные и процедурные.

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

Для описания знаний на абстрактном уровне используются специальные языки описания знаний. В компьютерах фон-неймановской архитектуры описание знаний производится языками процедурного типа.

По способу приобретения знания делятся на научные и бытовые.

По способу использования в экспертных системах различают:

-фактические знания ( знания типа « А – это А» );

-правила ( знания типа « Если – то» );

-метазнания.

Знания, относящиеся к конкретному объекту из какого-либо класса,

называются экстенсиональными. Знания, характеризующие весь класс объектов,

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

Знания о реальном мире это физические знания. Ментальные знания – это знания об отношениях объектов. Предметные знания – это знания о предметной области. Прагматические знания – знания о практическом смысле описываемых объектов и явлений в конкретной ситуации. Знания о смысле и значениях явлений и объектов – это семантические знания. Морфологические знания –

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]