Автор работы: Пользователь скрыл имя, 14 Декабря 2011 в 00:07, курсовая работа
Изобретение и дальнейшее развитие персонального компьютера значительно упростило жизнь человека.
Технологический скачок последнего десятилетия позволило разработать серию современных персональных компьютеров. Микро ЭВМ постепенно начали входить в нашу повседневную жизнь. Компьютерные и информационные технологии уверенно входят в нашу жизнь.
Введение………………………………………………………………………...…3
История появления эволюционных алгоритмов……………………….……….5
Решение задачи в формульном виде……………………………………….…...19
Решение задачи в числовом виде………………………………………….……25
Заключение……………………………………………………………………….32
Список литературы………………
Каждая хромосома (строка) представляет собой конкатенацию ряда подкомпонентов называемых генами. Гены располагаются в различных позициях или локусах хромосомы, и принимают значения, называемые аллелями. В представлениях с бинарными строками, ген - бит, локус - его Изм.
Лист
№ докум.
Подпись
Дата
Лист
13
КР.МГ-31.14.2011
позиция в строке, и аллель – его значение (0 или 1). Биологический термин "генотип" относится к полной генетической модели особи и соответствует структуре в ГА. Термин "фенотип" относится к внешним наблюдаемым признакам и соответствует вектору в пространстве параметров. Чрезвычайно простой, но иллюстративный пример - задача максимизации следующей функции двух переменных:
f (x1, x2) = exp(x1x2), где 0 < x1< 1 и 0 < x2 < 1.
Обычно, методика кодирования реальных переменных x1 и x2 состоит в их преобразовании в двоичные целочисленные строки достаточной длины - достаточной для того, чтобы обеспечить желаемую точность. Предположим, что 10-разрядное кодирование достаточно и для x1, и x2. Установить соответствие между генотипом и фенотипом закодированных особей можно, разделив соответствующее двоичное целое число - на 210-1. Например, 0000000000 соответствует 0/1023 или 0, тогда как 1111111111 соответствует 1023/1023 или 1. Оптимизируемая структура данных - 20-битная строка, представляющая конкатенацию кодировок x1 и x2. Переменная x1 размещается в крайних левых 10-разрядах, тогда как x2 размещается в правой части генотипа особи (20-битовой строке). Генотип - точка в 20-мерном хеммининговом пространстве, исследуемом ГА. Фенотип - точка в двумерном пространстве параметров.
Чтобы оптимизировать структуру, используя ГА, нужно задать некоторую меру качества для каждой структуры в пространстве поиска. Для этой цели используется функция приспособленности. В функциональной максимизации, целевая функция часто сама выступает в качестве функции приспособленности (например, наш двумерный пример); для задач минимизации, целевую функцию следует инвертировать и сместить затем в область положительных значений.
Простой
ГА случайным образом генерирует начальную
популяцию структур. Работа ГА представляет
собой итерационный процесс, который продолжается
до тех пор, пока не выполнятся заданное
число поколений или какой-либо иной критерий
остановки. На каждом поколении ГА реализуется
отбор пропорционально приспособленности,
одноточечный кроссовер и мутация. Сначала,
пропорциональный отбор назначает каждой
структуре вероятность Ps(i) равную
отношению ее приспособленности к суммарной
приспособленности популяции:
Изм.
Лист
№ докум.
Подпись
Дата
Лист
14
КР.МГ-31.14.2011
Затем происходит отбор (с замещением) всех n особей для дальнейшей генетической обработки, согласно величине Ps(i). Простейший пропорциональный отбор - рулетка (roulette-wheel selection, Goldberg, 1989c) - отбирает особей с помощью n "запусков" рулетки. Колесо рулетки содержит по одному сектору для каждого члена популяции. Размер i-ого сектора пропорционален соответствующей величине Ps(i). При таком отборе члены популяции с более высокой приспособленностью с большей вероятность будут чаще выбираться, чем особи с низкой приспособленностью.
После отбора, n выбранных особей подвергаются кроссоверу (иногда называемому рекомбинацией) с заданной вероятностью Pc. n строк случайным образом разбиваются на n/2 пары. Для каждой пары с вероятность Pc может применяться кроссовер. Соответственно с вероятностью 1-Pc кроссовер не происходит, и неизмененные особи переходят на стадию мутации. Если кроссовер происходит, полученные потомки заменяют собой родителей и переходят к мутации.
Одноточечный кроссовер работает следующим образом. Сначала, случайным образом выбирается одна из l-1 точек разрыва. (Точка разрыва - участок между соседними битами в строке.) Обе родительские структуры разрываются на два сегмента по этой точке. Затем, соответствующие сегменты различных родителей склеиваются и получаются два генотипа потомков.
Например, предположим, один родитель состоит из 10 нолей, а другой - из 10 единиц. Пусть из 9 возможных точек разрыва выбрана точка 3. Родители и их потомки показаны ниже.
Кроссовер | ||||||
Родитель 1 | 0000000000 | 000~0000000 | --> | 111~0000000 | 1110000000 | Потомок 1 |
Родитель 2 | 1111111111 | 111~1111111 | --> | 000~1111111 | 0001111111 | Потомок 2 |
Рисунок 2 -
Кроссовер
Изм.
Лист
№ докум.
Подпись
Дата
Лист
15
КР.МГ-31.14.2011
После того, как закончится стадия кроссовера, выполняются операторы мутации. В каждой строке, которая подвергается мутации, каждый бит с вероятностью Pm изменяется на противоположный. Популяция, полученная после мутации, записывает поверх старой и этим цикл одного поколения завершается. Последующие поколения обрабатываются таким же образом: отбор, кроссовер и мутация.
В настоящее время исследователи ГА предлагают много других операторов отбора, кроссовера и мутации. Вот лишь наиболее распространенные из них. Прежде всего, турнирный отбор (Brindle, 1981; Goldberg и Deb, 1991). Турнирный отбор реализует n турниров, чтобы выбрать n особей. Каждый турнир построен на выборке k элементов из популяции, и выбора лучшей особи среди них. Наиболее распространен турнирный отбор с k=2.
Элитные методы отбора (De Jong, 1975) гарантируют, что при отборе обязательно будут выживать лучший или лучшие члены популяции совокупности. Наиболее распространена процедура обязательного сохранения только одной лучшей особи, если она не прошла как другие через процесс отбора, кроссовера и мутации. Элитизм может быть внедрен практически в любой стандартный метод отбора.
Двухточечный
кроссовер (Cavicchio, 1970; Goldberg, 1989c) и равномерный
кроссовер (Syswerda, 1989) - вполне достойные
альтернативы одноточечному оператору.
В двухточечном кроссовере выбираются
две точки разрыва, и родительские хромосомы
обмениваются сегментом, который находится
между двумя этими точками. В равномерном
кроссовере, каждый бит первого родителя
наследуется первым потомком с заданной
вероятностью. В противном случае этот
бит передается второму потомку. И наоборот.
Шима (schema)
Хотя внешне кажется, что ГА обрабатывает строки, на самом деле при этом неявно происходит обработка шим, которые представляют шаблоны подобия между строками (Goldberg, 1989c; Голланд, 1992). ГА практически не может заниматься полным перебором всех точек в пространстве поиска. Однако он может производить выборку значительного числа гиперплоскостей в областях поиска с высокой приспособленностью. Каждая Изм.
Лист
№ докум.
Подпись
Дата
Лист
16
КР.МГ-31.14.2011
такая гиперплоскость
соответствует множеству
Шима
- это строка длины l (что и длина любой
строки популяции), состоящая из знаков
алфавита {0; 1; *}, где {*} - неопределенный
символ. Каждая шима определяет множество
всех бинарных строк длины l, имеющих в
соответствующих позициях либо 0, либо
1, в зависимости от того, какой бит находится
в соответствующей позиции самой шимы.
Например, шима, 10**1, определяет собой множество
из четырех пяти битовых строк {10001; 10011;
10101; 10111}. У шим выделяют два свойства -
порядок и определенная длина. Порядок
шимы - это число определенных битов ("0"
или "1") в шиме. Определенная длина
- расстояние между крайними определенными
битами в шиме. Например, вышеупомянутая
шима имеет порядок o(10**1) = 3, а определенная
длина d(10**1) = 4. Каждая строка в популяции
является примером 2l шим.
Строящие блоки
Строящие блоки (Goldberg, 1989c) - это шимы обладающие:
1) высокой приспособленностью,
2)низким порядком,
3)короткой определенной длиной.
Приспособленность шимы определяется как среднее приспособленностей примеров, которые ее содержат.
После процедуры отбора остаются только строки с более высокой приспособленностью. Следовательно, строки, которые являются примерами шим с высокой приспособленностью, выбираются чаще. Кроссовер реже разрушает шимы с более короткой определенной длиной, а мутация реже разрушает шимы с низким порядком. Поэтому, такие шимы имеют больше шансов переходить из поколения в поколение. Голланд (1992) показал, что, в то время как ГА явным образом обрабатывает n строк на каждом поколении, в тоже время неявно обрабатываются порядка n3 таких коротких шим низкого порядка и с высокой приспособленностью (полезных шим, "useful schemata"). Он называл это явление неявным параллелизмом. Для решения реальных задач, присутствие неявного параллелизма означает, что большая Изм.
Лист
№ докум.
Подпись
Дата
Лист
17
КР.МГ-31.14.2011
популяция имеет
больше возможностей локализовать решение
экспоненциально быстрее
Теорема шим
Простой ГА экспоненциально увеличивает число примеров полезных шим или строящих блоков. Доказательством этого служит следующая теорема, известная как "теорема шим".
Пусть m(H,t) - число примеров шимы H в t-ом поколении. Вычислим ожидаемое число примеров H в следующем поколении или m(H,t+1) в терминах m(H,t). Простой ГА каждой строке ставит в соответствие вероятность ее "выживания" при отборе пропорционально ее приспособленности. Ожидается, что шима H может быть выбрана m(H,t)Ч (f(H)/fср.) раз, где fср. - средняя приспособленность популяции, а f(H) - средняя приспособленность тех строк в популяции, которые являются примерами H.
Вероятность того, что одноточечный кроссовер разрушит шиму равна вероятности того, что точка разрыва попадет между определенными битами. Вероятность же того, что H "переживает" кроссовер не меньше 1-Pc_ (d(H)/l-1). Эта вероятность - неравенство, поскольку шима сможет выжить, если в кроссовере участвовал также пример похожей шимы. Вероятность того, что H переживет мутацию - (1-Pm)o(H), это выражение можно аппроксимировать как (1-o(H)) для малого Pm и o(H). Произведение ожидаемого число отборов и вероятностей выживания известно как теорема шим:
Теорема шим показывает, что строящие блоки растут по экспоненте, в то время шимы с приспособленностью ниже средней распадаются с той же скоростью.
Goldberg (1983, 1989c), в своих исследованиях теоремы шим, выдвигает гипотезу строящих блоков, которая состоит в том, что "строящие блоки объединяются, чтобы сформировать лучшие строки". То есть рекомбинация, и экспоненциальный рост строящих блоков ведет к формированию лучших строящих блоков.
Изм.
Лист
№ докум.
Подпись
Дата
Лист
18
КР.МГ-31.14.2011
Информация о работе Использование генетических алгоритмов для поиска решения задач ГЭТ