Я хотел бы реализовать программу выбора функций на основе GA для УФ-системы SGI (ядра = 512, общая память = 4 ТБ), которая работает следующим образом: (Выбор функций - это процесс, при котором наименьшее подмножество исходных функцийнайдено, что делает различие между выходными классами лучше, чем использование исходного набора функций - или только то же самое - для заданных данных, например, данные состоят из: {Атмосферное давление, температура, myShoeSize} в качестве независимых переменных, и на выходе получается Rainfall, возможныйРезультатом выбора функции будет {Атм. Давление, Температура}).
GA хранит пул родителей, каждый из которых представляет отдельное подмножество функций.Эти родители должны оцениваться с использованием машины опорных векторов или любого другого метода машинного обучения (нейронная сеть и т. Д.), Поэтому я хочу, чтобы каждого родителя отправляли на следующее доступное ядро ЦП, оценивали с помощью любой программы, а пригодность отправляли обратно вGA.Таким образом, GA будет отвечать за все, кроме оценки (пригодности) каждого родителя - вместо этого GA отправит родителя в доступное ядро и будет ждать результата пригодности.Вот где будут распределенные функции метода (поэтому я не хочу, чтобы различные GA работали на разных ядрах, только один GA работал на одном ядре и порождали оценщики работоспособности в разных ядрах).
В порядкеЧтобы воспользоваться преимуществами распределенных вычислений моего оборудования, я бы хотел, чтобы GA работал в асинхронном режиме, в то время как есть две группы родителей: те, кто оценил свою пригодность, и те, кто ждет ее.Когда есть свободное ядро, GA берет родителя из пула не оцененных и отправляет его ядру.Тем временем, ГА берет родителей из оцененного пула, мутирует их и т. Д., Скрещивает их и отправляет своих детей в не оцененный пул и т. Д.
Итак, моя идея - получить библиотеку ГА с открытым исходным кодомизменить его немного, насколько это касается его функции оценки.Если библиотека предлагает этот «асинхронный» режим, это будет хорошо.В дополнение ко всему, я хотел бы, чтобы библиотека предлагала множество функций, например, cellGA.Что бы ни вышло, тоже будет с открытым исходным кодом.
У кого-нибудь есть предложения?Кстати, кто-нибудь знает какие-либо ссылки на публикации об этом «асинхронном» режиме - или вы видите какие-либо недостатки с этим?