1 / 1 / 3
Регистрация: 12.10.2012
Сообщений: 150
|
|
1 | |
Генетические алгоритмы. Формирование хромосом из особей18.07.2018, 12:00. Показов 1382. Ответов 2
Метки нет (Все метки)
может не в тот раздел пишу, ну вдруг судьбинушка - и подскажете
Стоит задача "Оптимизация многомерных функций с помощью генетических алгоритмов". В моем случае поиск минимума функции , на заданном интервале . и тут я зависла на самом наверное.. начальном.. Последовательность выполнения генетического алгоритма я знаю, уже пытаюсь что-то делать.. 1. Случайным образом создала начальную популяцию, набор особей на своем интервале 2. Для каждой особи вычислила значение функции приспособленности, соответствующее значению заданной функции 3... Теперь необходимо на основе начальной популяции сформировать множество хромосом.. и вот тут я забуксовала.. Как правильно сформировать генотип в двоичной системе????????? вариантов несколько но хочется что В методичке идет речь только о логарифмическом кодировании, и как то я запуталась, ибо речь идет в нем о том что изначально уже дан какой-то двоичный код.и формула на представление вещественного числа из двоичного кода( а мне ж наоборот нужно - на основании вещественного числа, значения рассчитать этот код. Это очень сбило, запутало.. может подскажите как это сделать? или как правильнее закодировать еще варианты вообще речь идет о программной реализации, но для начала хочется понять - разобраться в алгоритме всех действий, используемых формулах
0
|
18.07.2018, 12:00 | |
Ответы с готовыми решениями:
2
Генетические алгоритмы Генетические алгоритмы Генетические алгоритмы Генетические алгоритмы |
294 / 265 / 48
Регистрация: 09.04.2013
Сообщений: 1,037
|
|
18.07.2018, 13:26 | 2 |
Ну, не знаю в какой именно форме требуется реализовывать, но смысл примерно следующий.
Есть "особи популяции" - это какие-то объекты для которых требуется оценить насколько они хороши, для тебя это предполагаемые минимумы функции, т.е. точки N-мерного пространства. Есть геном отдельной особи - это то что собой особь представляет, т.е. набор данных представляющий решение. В твоем случае в качестве генома я бы выбрал просто массив из координат N-мерной точки, и единичный ген - это одна координата точки. Если это не требуется в строгой форме, то никакого кодирования не требуется, хотя преобразование координат к логарифмической может иметь смысл для некоторых похожих задач. В качестве мутации, например, можно выбрать произвольный сдвиг координат точки, ограниченный какими-то рамками. В качестве скрещивания - для новой особи выбор генов - Хi либо от одного либо от другого родителя в произвольном порядке, например. Выживание - удаление набора особей обладающих наиболее "плохими генами", здесь - сделать список особей, отсортировать по величине функции, и отбросить, например, те которые идут после тысячного номера.
1
|
1487 / 1414 / 240
Регистрация: 19.02.2010
Сообщений: 3,916
|
|
19.07.2018, 13:10 | 3 |
Сообщение было отмечено Маринчик как решение
Решение
Маринчик, поскольку ГА и не гарантирует нахождения абсолютно точного решения (за конечное время) - можно его ещё немного загрубить. А именно - так:
1) Ширину интервала Xmax-Xmin делите на 65535 (число возможных значений 16битового целого) - получаете шаг, соответствующий приращению значения на 1. 2) И при начальной случайной генерации хромосомы, и при мутациях, и при скрещиваниях работаете с 16битовой хромосомой именно как со строкой бит. 3) Перевод хромосомы в плавучку делаете умножением 16битового целого числа (закодированного хромосомой) на найденный в п.1 "шаг" и прибавлением Xmin. Обратно из плавучки в целое (в 16битовую хромосому) Вам переводить не нужно - но если будет нужно, то из икса вычитает Xmin, делите полученную разность на величину шага (тоже плавучее=дробное число), и уже затем округляете частное до целого числа. Т.е. в данном рецепте все случайные генерации и мутации не смогут перебрать все возможные значения вещественных чисел на заданном интервале - ограничатся только числами, идущими с некоторым малым шагом.
1
|
19.07.2018, 13:10 | |
19.07.2018, 13:10 | |
Помогаю со студенческими работами здесь
3
Генетические Алгоритмы Генетические алгоритмы Генетические алгоритмы Генетические алгоритмы. Источник информации Генетические алгоритмы(курсовая работа) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |