Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Otvety_na_voprosy_KAKIE_NADO.docx
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
452.36 Кб
Скачать

Классы эволюционных вычислений.

Усилия, направленные на моделирование эволюции по аналогии с природными системами, в настоящее время можно разбить на 2 категории:

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

  • Более реалистические биологически, но не имеющие пока прикладного назначения алгоритмы (системы, которые классифицируются как искусственная жизнь).

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

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

  1. Стандартный ГА – генетический алгоритм, в котором:

    • хромосомы представляются битовыми строками

    • используется принцип пропорционального отбора выбора родителей

    • функция оптимальности (фитнес-функция) позволяет проранжировать всех представителей популяции.

  2. Эволюционная стратегия – выделяют «ЭС +» и «ЭС ,» .

    • «ЭС +» родительское поколении берётся в расчёт при работе со следующим поколением.

    • «ЭС ,» берётся в расчёт только новое поколение «родители умирают».

    • ЭС с рекомбинацией – появляются операторы рекомбинации, которые позволяют из m родителей получить k потомков. Параметры m и k задаёт пользователь. Потомки не должны повторять родителей (клоны запрещены).

    • Устанавливаются m и k пользователем,

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

    • выбирается m-1 точек деления в родительских хромосомах, кусочки нумеруются

    • генерируются потомки, при этом сохраняются потомки,

    • из всех возможных потомков выбираются k потомков.

  • Существует ЭС «только мутации». После оператора селекции отсутствует оператор рекомбинации – сразу идёт мутация. Особи, полученные после мутации присоединяются к новому поколению. Особенность данной ЭС в том, что здесь пользователь должен эмпирически подобрать вероятность мутации, т.к. она может отличаться.

  1. Генетическое программирование – использование модели эволюционных вычислений для разработки программ. Объекты, которые составляют популяцию – это не решения, а программы (куски программ). Программы представляют вид грамматического дерева, кроссовер реализует случайный выбор ответвления в программе и их обмен, мутации в генетическом программировании не используется.

  2. Мобильный генетический алгоритм. В нём хромосома кодируется списком пар – {номер гена, значение гена}. Хромосомы популяции могут быть разной длины (неполные и избыточные хромосомы). Одна и та же хромосома может содержать несколько генов с разными значениями. Для интерпретации хромосом вводятся правила экспрессии (гены доминируют слева направо). Для мобильного ГА существуют свои генетические операторы cut и splice, которые имеют соответствующие вероятности pc и ps, вместо операторов кроссовера и мутации.

    • Cut – разрезание случайно-выбранной хромосомы в случайной позиции на 2. Новые хромосомы поступают в пул следующего поколения. Сut применяется к строке с вероятностью pc = (l -1)*pk. , где l – длина строки, pk. некоторая константа, например, 0.1.

    • Splice – склеивает 2 хромосомы в 1. В начале эволюции, когда преобладают длинные хромосомы вероятность cut выше вероятности splice, затем вероятность splice становится выше вероятности cut. Мутация – суммирование значений гена и некоторого параметра отклонения в некотором участке хромосом. Вероятность мутации невелика, обычно pm = 0.001. Мутация действует на сформированный пул следующего поколения, содержащий потомков и лучшие хромосомы предыдущего поколения. Оператор формирования нового поколения в мобильном генетическом алгоритме сводится просто к переходу по счетчику эволюционного времени, присваиванию пула текущего поколения пулу следующего и очистке текущего пула.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]