Как узнать, слишком ли я навязываю конвергенцию, если мой GA быстро сходится к ПРАВОМУ решению? - PullRequest
0 голосов
/ 22 сентября 2018

Я разрабатываю генетический алгоритм для решения двумерной задачи о ранце.В настоящее время я тестирую с 50 itens, каждый из которых имеет вес, объем и стоимость.В каждом цикле 10 (из моей популяции 500) лучших людей доживают до следующего цикла, и в моих тестах в конце эти 10 всегда являются наилучшим возможным решением, и очень небольшая часть остальных 490 разделяет это решение,Анализируя график пригодности, мне кажется, что он слишком быстро сходится к оптимальному решению.Тем не менее, как мне определить, хорош ли мой алгоритм, и проблему, которую я тестирую, просто решить, или я слишком сильно навязываю сходимость, что может привести к преждевременной сходимости к неоптимальному решению в более сложномслучаи?Фитнес-график ниже. enter image description here

1 Ответ

0 голосов
/ 27 сентября 2018

По этому вопросу много книг.Вы не можете сказать, является ли что-то "чрезмерно связанным".Вы можете использовать инъекцию, чтобы быть уверенным.Это означает, что, например, если у вас есть 5000 петель (в идеальном мире) на каждую 1000-ю петлю, вы вводите новый материал для населения.Это сработало для меня, и это также написано везде (я думаю)

...