1626434812-e667f6b6e7e69d3a0798830a58e9075b (844135), страница 46
Текст из файла (страница 46)
Виды операторов редукции особей с целью сохранения размера популяции практически совпадают с видами операторов отбора родителей. Среди них можно перечислить; ° случайное равновероятное удаление; ° удаление К наихудших (К равно размеру популяции); ° удаление, обратно пропорциональное значению целевой функции. Поскольку процедуры отбора родителей и редукции разнесены по действию во времени и именя разный смысл, сейчас ведутся активные исследования с целью выяснения, как влияет согласованность этих процедур на эффективность генетического алгоритма.
Одним из параметров, также влияющих на устойчивость и скорость поиска, является размср популяции, с которой работает алгоритм. Классические генетические алгоритмы предполагают, что размер популяции должен быть фиксированным. Такие алгоритмы называют алгоритмами стационарного состояния. В этом случае оптимальным считается размер 2!од,(п), где и — количество решений задачи.
Однако практика показала, что иногда бывает полезно варьировать размер популяции в определенных пределах. Подобные алгоритмы получили название поколенческих. В данном случае после очередного порождения потомков усечения популяции не происходит. Таким образом, на протяжении нескольких итераций размер популяции может расти, пока не достигнет определенного порога.
После чего популяция усекается до своего исходного размера. Такой подход способствует расширению области поиска, но вместе с тем не ведет к значительному снижению скорости, поскольку усечение популяции хотя и реже, но все же происходит, В последнее время в области исследований, направленных на повышение эффективности генетических алгоритмов, большое значснис приобрели идеи создания адаптивных генетических алгоритмов, которые могут изменять свои параметры в процессе работы.
Они стали продолжением развития идеи поколенческих алгоритмов, которые в процессе работы изменяют размер популяции. Адаптивныс алгоритмы способны изменять не только этот параметр, но и Глава 8. Генетические алгоритмы суть генетических операторов, вероятность мутации и даже генотип алгоритма. Как правило, данные изменения происходят путем выбора параметров из нескольких вариантов, определенных перед началом работы алгоритма.
Идея адаптивных генетических алгоритмов получила свое воплощение в концепции пбА, представляющей многоуровневые генетические алгоритмы Нижний уровень такого алгоритма непосредственно выполняет задачу улучшения популяции решений. Верхние уровни представляют собой генетические алгоритмы, решающие оптимизационную задачу по улучшеншо параметров алгоритма нижнего уровня. При этом в качестве целевой функции используется обычно скорость работы алгоритма нижнего уровня и скорость улучшения им популяции от поколения к поколению. В настоящее время генетические алгоритмы представляют одну из интенсивно развивающихся областей науки, исследования в которой ведут к постоянному повышению эффективности их использования, а также выдвижению все новых подходов к построению конкретных алгоритмов.
Отметим, что до недавнего времени в качестве критерия качества большинства конкретных генетических алгоритмов использовалась эффективность решения задачи получения битового вектора с максимальным числом единичных разрядов. Чем быстрее алгоритм находил наилучшее решение, тем он считался эффективнее. Сейчас эта задача уже не является объективным средством тестирования алгоритмов, что свидетельствует об их бурном развитии не только с точки зрения применимости к тем или иным классам задач, но и с точки зрения их внутреннего построения и принципов работы.
Область применения генетических алгоритмов в настоящее время достаточно обширна. Они успешно применяются для решения ряда больших и экономически значимых задач в бизнесе и инженерных разработках. С их помощью были разработаны промышленные проектные решения, позволившие сэкономить многомиллионные суммы. Финансовые компании широко используют эти средства для прогнозирования развития финансовых рынков при управлении пакетами ценных бумаг. Наряду с другими методами эволюционных вычислений генетические алгоритмы обычно используются для оценки значений непрерывных параметров моделей большой размерности, для решения комбинаторных задач, для оптимизации моделей, включающих одновременно непрерывные и дискретные параметры.
Другая область применения — использование в системах извлечения новых знаний из больших баз данных, создание и обучение стохастических сетей, обучение нейронных сетей, оценка параметров в задачах многомерного статистического анализа, получение исходных данных для работы других алгоритмов поиска и оптимизации. Практическая деятельность человека ставит перед наукой все новые исследовательские задачи Область применения генетических алгоритмов постоянно Бязи данных. Интеллектуальная обработка информации расширяется, что требует их совершенствования и исследования, Перечислим несколько новых задач, которые могут решаться с использованием генетических алгоритмов, и связанные с ними направления исследований в этой области. Традиционные оптимизационные задачи имеют целевую функцию с фиксированной областью значений, называемой также ландшафтом, В последнее время потребовалось рещение задач, в которых ландшафт со временем может изменяться.
То есть целевая функция при одних и тех же значениях аргументов в разные моменты времени может принимать различные значения. Создание алгоритмов, способных работать с такими задачами, является сейчас одной из актуальных и одновременно сложных проблем в области генетических алгоритмов. До сих пор продолжается дискуссия между сторонниками универсальных и проблемно-ориентированных представлений задач при использовании эволюционных вычислений. Можно говорить, что в этом вопросе чаша весов склоняется в сторону универсальных представлений.
поскольку осуществлять изменения на уровне генотипа значительно проще и эффективнее, чем на уровне фснотипа. Перспективным направлением развития является добавление к генетическим операторам ламарковских операторов, которые позволяют вводить в рассмотрение признаки, приобретенные особью не в результате наследования, а в течение своего жизненного цикла Это еще более приближает модель генетических алгоритмов к природным процессам и, по мнению ученых, сгюсобно повысить их эффективность.
Идея приближения генетических алгоритмов к реальному эволюционному процессу нашла свое отражение и в предложениях ввести в рассмотрение такие понятия, как вид и пол, учитывать взаимодействие особей в популяции в процессе "жизни", причем особей как одного вида, так и различных. Это позволит моделировать процессы сотрудничества„отношений хозяев и паразитов и т.д. Помимо этих новых течений, в области исследования генетических алгоритмов ведутся работы и в традиционных направлениях.
Создаются все новые разновидности операторов отбора„скрещивания и мутации. Конструируются адаптивные алгоритмы, совершенствуются методы распараллеливания вычислений и структурирования популяций. Одновременно разрабатываются методики оценки эффективности и тестирования генетических алгоритмов. Таким образом, генетические алгоритмы представляют собой одну из важных и активно развивающихся парадигм обширной области алгоритмов поиска оптимальных решений. И в последнее врсмя, с развитием методов компьютерной поддержки принятия решений, опи приобретают все большее значение.
8.5 Примеры программного обеспечения Решение конкретной оптимизационной задачи зачастую требует построения генетического алгоритма с уникальными значениями параметров. Однако ряд базовых свойств этих алгоритмов остается постоянным при решении со- Глава 8. Геметические алгоритмы вершенно разных задач. Поэтому в большинстве случаев для реализации конкретного генетического алгоритма не требуется создавать отдельный программный продукт. Приведем здесь несколько примеров программного обеспечения, позволяющего реализовывать широкий набор генетических алгоритмов, которые можно применять для решения самых различных задач. Заметим, что изменяемыми параметрами генетических алгоритмов в таких приложениях обычно являются значения различных вероятностей, размер популяции и ряд специфических свойств алгоритма.
А реализация генетических операторов, как правило, едина для всех алгоритмов и скрыта от пользователя. Пакет ЕчоЬег 4. О комиании Ра!Бай Согр. Пакет Е~оЬег представляет собой дополнение к программе МЯ Ехсе1 версий 5.0 и 7.0. При этом Ехсе1 используется как средство описания исходных данных алгоритма и расчетов в процессе его работьь В процессе установки Ею1чег добавляет в Ехсе1 дополнительную панель инструментов, которая обеспечивает доступ к пакету (рис.
8.4). Если Е~'о1~ег не запущен на выполнение, то панель управления не отображается. При запуске Ечо1чег приложение Ехсе1 запускается автоматически. Запустить, приостановить Запуск окна установки н пРскРатнть РаботУ 1 А ыГА пара Рис. 8.4. Панель инсизрументов ЕаоЬ ен Исходные данные для работы формируются обычным образом. При этом можно применять весь набор средств, предоставляемых Ехсе1. Особенность заключается лишь в том, что обязательно должна присутствовать ячейка, в которой задана формула для вычисления целевой функции.