Набор инструментов для эволюционных вычислений Java - Java Evolutionary Computation Toolkit
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
ECJ - бесплатная программа эволюционные вычисления исследовательская система, написанная на Java. Это структура, которая поддерживает различные методы эволюционных вычислений, такие как генетические алгоритмы, генетическое программирование, стратегии эволюции, коэволюция, оптимизация роя частиц и дифференциальная эволюция. Эта структура моделирует итерационные эволюционные процессы, используя серию конвейеров, соединяющих одну или несколько субпопуляций людей с отбор, разведение (например, кроссовер, и мутация операторы, производящие новых людей. Фреймворк с открытым исходным кодом и распространяется под Академическая бесплатная лицензия. ECJ был создан Шон Люк, профессор информатики в Университете Джорджа Мейсона, и поддерживается Шоном Люком и множеством участников.
Возможности (перечислены из Страница проекта ECJ ):
Общие характеристики:
- Графический интерфейс с диаграммами
- Независимые от платформы контрольные точки и ведение журнала
- Файлы иерархических параметров
- Многопоточность
- Генераторы случайных чисел Mersenne Twister
- Абстракции для реализации различных форм ЭК.
Особенности EC:
- Асинхронные островные модели через TCP / IP
- Оценка Master / Slave на нескольких процессорах
- Генетические алгоритмы / стиль программирования Устойчивое состояние и эволюция поколений, с элитарностью или без нее
- Стиль эволюционных стратегий (мю, лямбда) и (мю + лямбда) эволюция
- Очень гибкая архитектура разведения
- Многие операторы выбора
- Множественные субпопуляции и виды
- Обмены между субпопуляциями
- Чтение популяций из файлов
- Коэволюция одной и нескольких популяций
- Многокритериальная оптимизация SPEA2
- Оптимизация роя частиц
- Дифференциальная эволюция
- Пространственно встроенные эволюционные алгоритмы
- Хуки для других методов многокритериальной оптимизации
- Пакеты для экономии давления
Представления дерева GP:
- Основанное на наборах строго типизированное генетическое программирование
- Эфемерные случайные константы
- Автоматически определяемые функции и автоматически определяемые макросы
- Множественные лесные леса
- Шесть алгоритмов построения дерева
- Обширный набор операторов селекции GP
- Семь предварительно подготовленных проблемных областей приложения GP (муравей, регрессия, мультиплексор, газонокосилка, четность, два блока, край)
Векторные (GA / ES) представления:
- Геномы фиксированной и переменной длины
- Произвольные представления
- Пять заранее подготовленных проблемных областей векторных приложений (сумма, розенброк, сфера, шаг, шумно-квартика)
Другие представительства:
- АККУРАТНЫЙ
- Геномы на основе множественных наборов в пакете правил для развития наборов правил подхода Питта или других основанных на наборах представлений.
Смотрите также
- Paradiseo, фреймворк метаэвристики
- Структура MOEA, Java-среда с открытым исходным кодом для многоцелевых эволюционных алгоритмов.
Рекомендации
- Страница проекта ECJ
- Уилсон, Дж. К. Макинтайр, А. Хейвуд, М. И. (2004), «Обзор ресурсов: три системы с открытым исходным кодом для развивающихся программ - Lilgp, ECJ и Grammatical Evolution», Генетическое программирование и эволюционирующие машины, 5 (19): 103-105, Kluwer Academic Publishers. ISSN 1389-2576