Что ж, в CRAN доступен пакет под названием pso , и он действительно является оптимизатором частиц (PSO).
Я рекомендую этот пакет.
Он активно разрабатывается (последнее обновление 22 сентября 2010 г.) и соответствует эталонной реализации для PSO. Кроме того, в комплект поставки входят функции для диагностики и построения результатов.
Это, безусловно, сложный пакет, но интерфейс основной функции (функция psoptim ) прост - достаточно передать несколько параметров, которые описывают вашу проблемную область, и функцию стоимости.
Точнее, ключевые аргументы, передаваемые при вызове psoptim :
размеры задачи, как вектор
( п );
нижняя и верхняя границы для каждого
переменная ( нижняя, верхняя ); и
функция стоимости ( fn )
В сигнатуре метода psoptim есть и другие параметры; обычно они связаны с критериями конвергенции и т. п.)
Есть ли другие реализации PSO в R?
Существует пакет R, называемый ppso для (параллельный PSO). Это доступно на R-Forge. Я ничего не знаю об этом пакете; Я скачал его и просмотрел документацию, но это все.
Кроме этих двух, ни одного, о котором я знаю. Около трех месяцев назад я искал R реализации более популярной метаэвристики. Это единственная реализация pso, о которой я знаю. Привязки R к GSL Scientific Library Gnu) имитируют алгоритм отжига, но не имеют биологически вдохновленной метаэвристики.
Другое место, где можно посмотреть, это, конечно, CRAN Task View для оптимизации. Я не нашел другой реализации PSO, кроме той, что я здесь перечислил, хотя там перечислено довольно много пакетов, и большинство из них я не проверял, кроме просмотра имени и сводки из одного предложения.