В генетическом программировании (GP), когда используется островная модель, означает ли это, что она разделит размер популяции между островами?Модель острова в ECJ
Например, если в параметрах файла мы имеем
pop.subpop.0.size = 4000
и у нас есть 4 острова, это означает, что каждый остров будет иметь население размером 1000? Что, если мы поместим эту строку кода в файл параметров каждого острова? Возможно ли иметь различный размер популяции для каждого острова?
Я использую Java и ECJ package для реализации островных моделей в GP.
что, если я поставлю «поп».subpop.0 = 4000 'в файле server.params и не упоминать об этом (размер популяции) в islandID.params. В этом случае разделил бы он 4000 между всеми островами? – ashkanent
Если вы запустите server.params, вызывая ec.exchanger.IslandExchange (не ec.Evolve), этот параметр не будет использоваться. Если вы используете его с ec.Evolve, он создаст остров сервера с 4000 человек. –
Итак, вы должны явно задавать населенность на каждом острове вручную, нет возможности автоматически делить число. В этом случае вы можете использовать скрипт для генерации файлов параметров. См. Мой сценарий в качестве примера запуска множества конфигураций параметров (включая разные количества островов): https://github.com/fergunet/HPMOON/blob/master/launch.py –