51 (Вопросы по разным темам с ответами (программирование))

2017-06-10СтудИзба

Описание файла

Файл "51" внутри архива находится в следующих папках: ГОСЫ!!!, 19, 27, 51. Эволюционное моделирование. Генетическое программирование. Генетический алгоритм. Документ из архива "Вопросы по разным темам с ответами (программирование)", который расположен в категории "". Всё это находится в предмете "окончание университета" из 12 семестр (4 семестр магистратуры), которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "к экзамену/зачёту", в предмете "окончание университета" в общих файлах.

Онлайн просмотр документа "51"

Текст из документа "51"

Билет № 51. Эволюционное моделирование. Генетическое программирование.

Генетический алгоритм (1).

Эволюционное моделирование.

В 1966 году Л. Фогель, А. Оуэне, М. Уолш предложили схему эволюции логических автоматов, решающих задачи прогноза. В 1975 г. вышла основополагающая книга Дж. Холланда "Адаптация в естественных и искусственных системах", в которой был предложен генетический алгоритм.

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

Основные эволюционные алгоритмы (ЭА):

  • генетический алгоритм, предназначенный для оптимизации функций дискретных переменных и акцентирующий внимание на рекомбинациях геномов;

  • эволюционное программирование, ориентированное на оптимизацию непрерывных функций без использования рекомбинаций;

  • эволюционная стратегия, ориентированная на оптимизацию непрерывныхфункций с использованием рекомбинаций;

  • генетическое программирование, использующее эволюционный метод дляоптимизации компьютерных программ

Особенности ЭА как алгоритмов оптимизации:

  • параллельный поиск,

  • случайные мутации и рекомбинации уже найденных хороших решений.

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

Наибольшее распространение получил генетический алгоритм. На его основе осуществляются: оптимизация профилей балок в строительстве; распределение инструментов в металлообрабатывающих цехах; обработка рентгеновских изображений в медицине; оптимизация работы нефтяных трубопроводов и т.д.

Одна из основных областей применения генетического алгоритма - решение задач комбинаторной оптимизации (например, задача о коммивояжере).

Из пособия “Системы искусственного интеллекта” Тельнов Ю.Ф, Трембач В.М.

Группа алгоритмов, использующих в своей основе идею эволюции Дарвина, называется эволюционными алгоритмами.

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

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

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

Природный механизм

Живые существа характеризуются их внешними параметрами, некоторые из параметров полезны для выживания, другие - вредят. Все внешние данные особи кодируются ее цепью ДНК (генотипом). Отдельные участки этой цепи (гены) определяют различные параметры особи.

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

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

Изредка происходит мутация: некоторый случайный нуклеотид цепи ДНК особи может измениться на другой. Если полученная цепь будет использоваться для создания потомства, то возможно появление у детей совершенно новых качеств.

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

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

Практические моменты применения ГА.

В генетических алгоритмах никак не используются такие свойства функции, как непрерывность, дифференцируемость и т. д. Она подразумевается как “черный ящик”, который на вход получает параметры, а на выход выводит результат.

Для применения генетического метода необходимо:

  • Выделить совокупность свойств объекта, характеризуемых внутренними параметрами и влияющих на его приспособленность;

  • Сформулировать критерий оценки приспособленности особей объекта;

  • Разработать математическую модель объекта, представляющую собой алгоритм вычисления F для заданного набора параметров;

  • Закодировать набор параметров для представления им некоторой особи.

От конкретной задачи зависят только такие параметры ГА, как функция приспособленности и кодирование решений.

Функция приспособленности. Пусть есть задача нахождения оптимального размещения. Варьируя некоторые параметры (координаты размещаемых элементов), нужно найти такую их комбинацию, чтобы минимизировать занимаемую площадь. Такую задачу можно переформулировать как задачу нахождения максимума некоторой функции f(x1, x2, …, xn). Эта функция и есть функция приспособленности. Она используется для вычисления приспособленности особей и должна принимать неотрицательные значения, а область определения параметров должна быть ограничена.

Кодировка набора параметров. Закодируем каждый параметр строкой битов. Если он принимает непрерывное множество значений, то выберем длину строки в соответствии с требуемой точностью. Таким образом, параметр сможет принимать только дискретные значения (этих значений будет степень 2), в некотором заданном диапазоне.

Например, пусть переменная xk принадлежит отрезку [xminxmax]. Закодируем ее бинарной строкой из l битов. Тогда строка sk обозначает следующее значение переменной xk:

xk = xmin + sk(xmax − xmin) ⁄ 2l

если в формуле sk обозначает значение бинарного числа, кодируемого этой строкой.

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

101100 11001011 01101100 1100 1 11101

| x1 | x2 | | | | xn |

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

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

Шаблоном называется строка длины L (т. е. той же длины, что и любая строка популяции), состоящая из символов {0, 1, *} (где * — какой-то символ). Строка является представителем данного шаблона, если в позициях, где знак шаблона равен 0 или 1, она имеет тот же символ. Например, у шаблона 01*0*110 следующие представители: 01000110, 01001110.

Алгоритм работы

На рисунке изображена схема работы любого генетического алгоритма:


  1. Создание популяции.

На этом этапе случайным образом создается начальная популяция особей. Фиксируется размер популяции (количество особей в ней - N), который не изменяется в течение работы всего алгоритма. Каждая особь генерируется как случайная L-битная строка, где L — длина кодировки особи, она тоже фиксирована и для всех особей одинакова.

  1. Селекция

На этом этапе происходит отбор особей в следующее поколение. При этом больше шансов на выживание имеют более приспособленные. Самый распространенный метод селекции – рулетка: для каждой особи вычисляется ф-ция приспособленности, и шансы выжить у этой особи прямо пропорциональны значению этой ф-ции. Другими словами, колесо рулетки делится на секторы особей, размер которых пропорционален приспособленности, и запустив рулетку столько раз, сколько у нас особей, получаем новое поколение (в него входят те особи, напротив которых остановился шарик).

Также существует такой метод отбора как элитизм – при нем самая приспособленная особь всегда переходит в следующее поколение. Элитизм обычно внедряют в другие методы отбора – сохраняют “элитную особь” вне зависимости от других условий селекции.

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

Турнирный отбор осуществляется следующим образом: из популяции случайным образом выбирается t особей, и лучшая из них помещается в промежуточную популяцию. Этот процесс повторяется N раз, пока промежуточная популяция не будет заполнена. Наиболее распространен вариант при t = 2.

Отбор усечением: популяция сортируется по приспособленности, затем берется заданная доля лучших, и из них случайным образом N раз выбирается особь для дальнейшего развития.

  1. Скрещивание или кроссовер.

В этой части ГА выбираются особи, которые затем по определенным правилам обмениваются генами. Скрещиваются не все особи популяции – существует вероятность скрещивания для пары особей (обычно она берется порядка 60%). Самым простым методом скрещивания является одноточечный кроссовер: для родительских хромосом случайным образом выбирается точка раздела, и они обмениваются отсеченными частями. Полученные две строки являются потомками:

Родители: 11000011 и 10001001

Потомки: 11001001 и 10000011

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

Однородный кроссовер осуществляется следующим образом: один из детей наследует каждый бит с вероятностью p0 у первого родителя, а иначе у второго. Второй ребенок получает все остальные не унаследованные биты. Обычно p0 = 0.5.

  1. Мутация.

Э тот этап ГА с заданной (обычно очень маленькой, порядка 1%) вероятностью случайным образом изменяет случайный ген особи.

До мутации: 011001100101101 После: 1011001101101101

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

  1. 1Подготовила: Даша Д.

  2. Литература: Пособие “Системы искусственного интеллекта” Тельнов Ю.Ф, Трембач В.М.

4


Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5173
Авторов
на СтудИзбе
436
Средний доход
с одного платного файла
Обучение Подробнее