Изучение и анализ генетического алгоритма
Описание принципа работы генетического алгоритма, проверка его работы на функции согласно варианту на основе готовой программы. Основные параметры генетического алгоритма, его структура и содержание. Способы реализации алгоритма и его компонентов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лабораторная работа |
Язык | русский |
Дата добавления | 03.12.2014 |
Размер файла | 20,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Министерство образования и науки Республики Казахстан
Карагандинский Государственный Технический Университет
Кафедра: ВТ и ПО
Лабораторная работа №3
по дисциплине: "Проектирование интеллектуальных систем"
на тему: "Изучение и анализ генетического алгоритма"
Выполнил: ст. гр. ВТ - 10-2
Тулебаев А.
Приняла: Наумова А.В.
Караганда 2013
Изучение и анализ генетического алгоритма
Цель работы: изучить принцип работы генетического алгоритма, проверить его работу на функции согласно варианту на основе готовой программы.
Описание индивидуального задания. Для своего варианта необходимо:
найти экстремум заданной функции в определённой области поиска;
подобрать значения Maxпокол, Maxхром, Pm, размер элиты () так, чтобы число поколений эволюции было минимальным.
На примере выборочных поколений продемонстрировать графически нахождение экстремума функции [фитнес-функция=f (x1)]:
на каждом выборочном поколении эволюции необходимо вычислить координату x1 всех хромосом данного поколения;
вывести на экран все точки одним цветом, а xоптим другим;
вывести значения фитнес-функции и всех координат точки xоптим;
на следующем выборочном поколении необходимо удалить с экрана все точки, кроме xоптим, и вывести на экран все точки нового поколения;
соединить линией xоптим предыдущего поколения с xоптим текущего;
эти шаги необходимо повторять для всех выборочных поколений, пока не будет достигнут оптимум.
Частота дискретизации (2) |
Размер популяции () |
Диапазон поиска (по всем координатам) |
Экстремум |
Функция |
|
128 |
260 |
[-12; 12] |
max |
F=5-x1*x2-x2-x3*x4*x5 |
Рассмотрим исследуемую функцию F=5-x1*x2-x2-x3*x4*x5. Согласно диапазону поиска каждая координата (х1, х2, х3, х4, х5) изменяется в пределах от - 12 до 12.
Функция F является суммой 4 слагаемых: 5, - x1*x2, - x2, - x3*x4*x5. Для получения максимума функции каждое слагаемое (в идеале) должно быть положительным и максимальным по модулю.
Исходя из этого получаем:
х2=-12; х1=12; х3=-12; х4=х5=12.
Откуда Fmax=5-12* (-12) - (-12) - (-12) *12*12=5+144+12+1728=1889.
Описание принципа работы генетического алгоритма
Генетический алгоритм (ГА) - это модель эволюции в природе, реализованная в виде компьютерной программы. В нем используются как аналог механизма генетического наследования, так и аналог естественного отбора. При этом сохраняется биологическая терминология в упрощенном виде. Под генетическим алгоритмом будем понимать алгоритмический подход к решению экстремальных задач переборного типа, основанный на моделировании основных факторов эволюционного развития популяции.
Существует множество способов реализации, как структуры ГА, так и основных его компонентов. Для задачи поиска экстремума функции используем ГА с применением элитарного подхода.
Описание алгоритма
Хромосома () в случае многопараметрической функции будет представлять координату точки на многопараметрической функции, а ген () координату точки на одном параметре функции (1 это ген, представляющий координату точки на параметре x1, 2 на x2 и т.д.). Соответственно число генов (n) равно числу параметров функции.
генетический алгоритм программа параметр
Разобьём каждую координату на 2 точек. Соответственно максимальное значение гена будет = 2. Это означает, что ген будет представлен битами (-двоичная длина гена). Двоичная длина хромосомы будет = *n. Все комбинации этого числа будут представлять допустимое решение задачи.
Генетический алгоритм имеет много регулируемых параметров, которые изменяются в зависимости от вида функции, количества параметров функции, точности вычисления, требуемой скорости вычисления и т.д.
Приведём основные параметры генетического алгоритма:
- размер популяции особей.
- размер элиты (количество элитных хромосом).
- двоичный размер гена.
n - количество генов.
Pm - вероятность мутации в гене.
P - поколение (P0 - нулевое поколение, P1 - первое и т.д.).
А так же условия для выхода:
Maxхром - число хромосом с максимальной фитнесс-функцией.
Maxпокол - число поколений с одинаковым значением максимальной фитнесс-функции (приспособленности особи).
Структура "Генетического алгоритма”:
1. Формирование начальной популяции P0 из особей :
Генерация хромосомного набора из бинарных строк (хромосом ), удовлетворяющих требованиям, предъявляемым к символьной модели исходной экстремальной задачи.
Особи образуют начальную популяцию Pt для поколения t=0.
2. Выбор элиты поколения (применение элитарного подхода).
Для каждой особи поколения происходит вычисление её фитнесс-функции (приспособленности).
Выбор определённого процента набора особей с максимальной приспособленностью, которые копируются и дополняют собой популяцию. Они не будут подвергаться скрещиванию.
3. Воспроизводство "потомков” с наследственными признаками "родителей”:
Выбор конкретной "родительской” пары для участия в процессе размножения. (Сначала берётся 1-я и (/2+1) - я особь, затем 2-я и (/2+2) - я особь и т.д., пока не скрестятся все особи.).
Выбор случайным образом точки разрыва родительских хромосом (хромосома разрывается на гены, которые остаются целыми).
Обмен частями хромосом (части образовались после разрыва хромосом) и построение их "потомков”, сохраняющих наследственные признаки "родителей”.
Вычисления повторяются с шага 3.1 до тех пор, пока не будут скрещены все особи, т.е. произойдёт /2 скрещиваний (т.к. элита не подвергается скрещиванию).
4. Мутагенез, приводящий к генетическим изменениям "родительских” признаков:
Мутации подвергается всё поколение, включая элиту. В каждой особи каждый ген с заданной вероятностью Pm подвергается мутации. (Обычно эта вероятность берётся маленькой - Pm=0,010,001)
Если ген должен подвергнутся мутации, то происходит следующее: Генерируется случайное число в пределах от 0 до 2, и это число, заменяет собой мутируемый ген.
Вычисления повторяются с шага 4.1 до тех пор, пока не будет подвержено мутации всё поколение.
5. Естественный отбор:
Всё поколение подвергается естественному отбору. Для каждой особи поколения происходит вычисление её фитнесс-функции (приспособленности).
Отбор происходит методом "рулетка". Виртуальная рулетка разбивается на + секторов, где величина сектора пропорциональна приспособленности особи. Таким образом, особи с большей приспособленностью имеют больше шансов выжить, чем менее приспособленные.
После одного запуска рулетки происходит выбор особи, на которую выпал "шарик", после чего эта особь удаляется с рулетки, и далее не участвует в отборе.
Запуск рулетки производится раз. Из выбранных особей формируется новое поколение Рi+1
6. Проверка условий окончания процесса эволюции популяции P.
Условия:
Если число поколений t не превысило заданноё число Tmin, то вычисления будут продолжаться в любом случае.
Если число особей, имеющих максимальную фитнесс-функцию превысит определённый заданный порог - Maxхром.
Если число поколений, в которых вычисляется одна и та же максимальная фитнесс-функция также превысит определённый заданный порог Maxпокол.
Если количество поколений t превысит заданное число Tmax (t>Tmax).
Выводы
чем больше число поколений с одинаковой максимальной фитнес-функцией (Maxпокол) требуется для решения, тем больше поколений придется рассчитывать, но тем больше вероятность найти максимальное значение фитнес-функции;
при увеличении требуемого % индивидуумов с максимальной фитнес-функцией в поколении (Maxхром, %) увеличивается требуемое число поколений эволюции. При слишком большом % возможно зацикливание - из-за мутаций и скрещивания такого количества особей никогда не наберется;
чем больше вероятность мутаций (Pm), тем больше вероятность зацикливания, однако при маленькой Pm эволюция замедляется и число поколений растет;
при увеличении объема элиты (, %) уменьшается разница между поколениями - эволюция замедляется и число поколений растет.
Размещено на Allbest.ru
Подобные документы
Этапы работы генетического алгоритма, область его применения. Структура данных, генерация первоначальной популяции. Алгоритм кроссинговера - поиск локальных оптимумов. Селекция особей в популяции. Техническое описание программы и руководство пользователя.
реферат [1014,2 K], добавлен 14.01.2016Содержание фундаментальной теории гена. Описание простого генетического алгоритма поиска оптимальных решений. Сущность понятий "кроссинговер", "сайт", "иллегальная рекомбинация". Этапы реализации алгоритма Девиса по перераспределению участков хромосом.
контрольная работа [23,7 K], добавлен 17.09.2010Сравнение результатов работы генетического алгоритма по решению "несимметричной незамкнутой задачи коммивояжера" с результатами работы алгоритма динамического программирования по параметрам - время работы, точность результата и объем используемой памяти.
курсовая работа [65,3 K], добавлен 16.04.2014Характеристика методов нечеткого моделирования и изучение системы кластеризации в пакетах прикладных программ. Разработка и реализация алгоритма для оптимизации базы правил нечеткого классификатора с помощью генетического алгоритма аппроксимации функции.
дипломная работа [1,9 M], добавлен 21.06.2014Основные свойства алгоритма. Формальный и неформальный исполнитель алгоритма, система его команд. Способы записи алгоритма. Словесное описание, построчная запись, опорный конспект. Характеристики алгоритмического языка. Выполнение алгоритма компьютером.
презентация [2,0 M], добавлен 04.04.2014Исследование системы распределения ключей на основе линейных преобразований. Описание компонентов сети конфиденциальной связи. Характеристика отечественного алгоритма шифрования данных. Обзор результатов расчетов криптостойкости алгоритма шифрования.
контрольная работа [56,5 K], добавлен 26.09.2012Разработка программы шифрования данных с использованием алгоритма DES. Структура алгоритма, режимы его работы. Электронный шифровальный блокнот. Цепочка цифровых блокнотов. Цифровая и внешняя обратная связь. Структура окна: функции основных кнопок.
лабораторная работа [830,3 K], добавлен 28.04.2014Основные особенности эволюционных алгоритмов. Описание алгоритмов селекции, мутации, скрещивания, применяемых для реализации генетических алгоритмов. Вычисление функции приспособленности. Программная реализация. Тестирование и руководство пользователя.
курсовая работа [1,3 M], добавлен 11.03.2014Оптимизация показателей эффективности функционирования технологического контура системы управления космическим аппаратом, исследование свойств его показателей. Настройка нейронной сети, гибридизация генетического алгоритма с алгоритмами локального поиска.
дипломная работа [4,5 M], добавлен 02.06.2011История создания алгоритма Форда-Фалкерсона, краткое описание его алгоритма, особенности работы, анализ сложности. Создание распараллеленного варианта алгоритма и его краткое описание. Основные характеристики теории графов, специфика, пути и маршруты.
контрольная работа [246,3 K], добавлен 06.08.2013