Автор работы: Пользователь скрыл имя, 31 Марта 2011 в 21:02, курсовая работа
Генетические алгоритмы - это аналитические технологии, созданные и выверенные самой природой за миллионы лет ее существования. Они позволяют решать задачи прогнозирования, классификации, поиска оптимальных вариантов, и совершенно незаменимы в тех случаях, когда в обычных условиях решение задачи основано на интуиции или опыте, а не на строгом (в математическом смысле) ее описании.
1.Естественный отбор в природе. . . . . . . . . . . . . . . . . . . . . . . . . . . .3
2.Что такое генетический алгоритм. . . . . . . . . . . . . . . . . . . . . . . . . .4
3.Подробное описание генетического aлгоритма. . . . . . . . . . . . . . .6
4.Влияние параметров генетического алгоритма на эффективность
поиска. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
5.Особенности генетических алгоритмов. . . . . . . . . . . . . . . . . . . . .9
6.Список литературы и ссылки . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
Дальневосточный Государственный Университет
Институт Математики и Компьютерных Наук
Кафедра Информатики
Курсовой
проект
Тема:
“
Генетические Алгоритмы”
Исполнил – Студент 3-го курса
Несов
Роман Геннадьевич
Руководитель – Ассистент кафедры информатики
Кленин
Александр Сергеевич
Владивосток 1999 г.
Содержание:
поиска. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . .7
Генетические
алгоритмы
- это аналитические технологии, созданные
и выверенные самой природой за миллионы
лет ее существования. Они позволяют решать
задачи прогнозирования, классификации,
поиска оптимальных вариантов, и совершенно
незаменимы в тех случаях, когда в обычных
условиях решение задачи основано на интуиции
или опыте, а не на строгом (в математическом
смысле) ее описании.
Цель данного проекта – это обзор
выше упомянутой темы, для того чтоб в
дальнейшем разработать систему генерирующей
решение с помощью генетических
алгоритмов. Ниже будет подробно освещена
эта тема и затронуты наиболее важные
аспекты этой задачи. Вначале заглянем
в источник этих алгоритмов.
1 | Естественный отбор в природе |
Эволюционная
теория утверждает, что каждый биологический
вид целенаправленно
Основной
механизм эволюции - это естественный
отбор. Его суть состоит в том,
что более приспособленные
Чтобы
сделать понятными принципы работы генетических
алгоритмов, поясним также, как устроены
механизмы генетического наследования
в природе. В каждой клетке любого животного
содержится вся генетическая информация
этой особи. Эта информация записана в
виде набора очень длинных молекул ДНК
(ДезоксирибоНуклеиновая Кислота). Каждая
молекула ДНК - это цепочка, состоящая
из молекул нуклеотидов четырех типов,
обозначаемых А, T, C и G. Собственно, информацию
несет порядок следования нуклеотидов
в ДНК. Таким образом, генетический код
индивидуума - это просто очень длинная
строка символов, где используются всего
4 буквы. В животной клетке каждая молекула
ДНК окружена оболочкой - такое образование
называется хромосомой.
Каждое
врожденное качество особи (цвет глаз,
наследственные болезни, тип волос и т.д.)
кодируется определенной частью хромосомы,
которая называется геном этого свойства.
Например, ген цвета глаз содержит информацию,
кодирующую определенный цвет глаз. Различные
значения гена называются его аллелями.
При
размножении животных происходит слияние
двух родительских половых клеток и их
ДНК взаимодействуют, образуя ДНК потомка.
Основной способ взаимодействия - кроссовер
(cross-over, скрещивание). При кроссовере ДНК
предков делятся на две части, а затем
обмениваются своими половинками.
При
наследовании возможны мутации из-за
радиоактивности или других влияний,
в результате которых могут измениться
некоторые гены в половых клетках
одного из родителей. Измененные гены
передаются потомку и придают
ему новые свойства. Если эти новые
свойства полезны, они, скорее всего, сохранятся
в данном виде - при этом произойдет скачкообразное
повышение приспособленности вида.
2 | Что такое генетический алгоритм |
Пусть
дана некоторая сложная функция
(целевая функция), зависящая от нескольких
переменных, и требуется найти такие значения
переменных, при которых значение функции
максимально. Задачи такого рода называются
задачами оптимизации и встречаются на
практике очень часто.
Один
из наиболее наглядных примеров - задача
распределения инвестиций. В этой
задаче переменными являются объемы инвестиций
в каждый проект, а функцией, которую нужно
максимизировать - суммарный доход инвестора.
Также даны значения минимального и максимального
объема вложения в каждый из проектов,
которые задают область изменения каждой
из переменных.
Попытаемся
решить эту задачу, применяя известные
нам природные способы
Генетический
алгоритм - это простая модель эволюции
в природе, реализованная в виде
компьютерной программы. В нем используются
как аналог механизма генетического
наследования, так и аналог естественного
отбора. При этом сохраняется биологическая
терминология в упрощенном виде.
Вот
как моделируется генетическое наследование:
Хромосома | Вектор
(последовательность) из нулей и
единиц. Каждая позиция (бит) называется геном. |
Индивидуум
= генетический код |
Набор хромосом = вариант решения задачи. |
Кроссовер | Операция, при которой две хромосомы обмениваются своими частями. |
Мутация | Cлучайное
изменение одной или |
Чтобы
смоделировать эволюционный процесс,
сгенерируем вначале случайную
популяцию - несколько индивидуумов
со случайным набором хромосом (числовых
векторов). Генетический алгоритм имитирует
эволюцию этой популяции как циклический
процесс скрещивания
Жизненный
цикл популяции - это несколько случайных
скрещиваний (посредством кроссовера)
и мутаций, в результате которых
к популяции добавляется какое-
Отбор в генетическом алгоритме - это процесс формирования новой популяции из старой, после чего старая популяция погибает. После отбора к новой популяции опять применяются операции кроссовера и мутации, затем опять происходит отбор, и так далее.
Отбор
в генетическом алгоритме тесно связан
с принципами естественного отбора в природе
следующим образом:
Приспособленность индивидуума |
Значение целевой функции на этом индивидууме. |
Выживание
наиболее приспособленных |
Популяция следующего поколения формируется в соответствии с целевой функцией. Чем приспособленнее индивидуум, тем больше вероятность его участия в кроссовере, т.е. размножении. |
Таким
образом, модель отбора определяет, каким
образом следует строить
Возвращаясь к задаче оптимального распределения инвестиций, поясним особенности реализации генетического алгоритма в этом случае.
3 | Подробное описание генетического aлгоритма |
1.
Создание структуры решения
Структура определяется битовым массивом,
где каждому элементу массива сопоставлен
простейший многочлен типа xi, i=1,...n,
где n - максимальная степень полинома.
2.
Создание показателя эффективности
структуры, заполненной конкретными значениями.
Пример: Показателем эффективности для
нашего примера будет невязка определенная
методом наименьших квадратов Ja=I1+I2+..+Im,
где Ij=(yj–fa(xj))2,
где fa(x) есть сумма всех элементов
вида aixi, где ai = 0 или
1
3.
Задание некоторого массива
Данный массив можно сгенерировать случайно,
задав нули и единицы в каждой структуре.
4.
Расчет показателей
5.
Естественный отбор структур
по некоторому правилу выбора
наилучших структур среди