Расчеты эволюции на C#

ОГЛАВЛЕНИЕ

В данной статье будет рассмотрена библиотека C# для расчета эволюции. Применение библиотеки показано на четырех примерах: оптимизация функции, символическая регрессия (приближение), предсказание временного ряда, задача коммивояжёра.

•    Скачать исходники - 113 Кб
•    Скачать демонстрационный проект - 97 Kb

Введение

Было проведено много разных исследований в области расчета эволюции, обусловивших появление ряда различных эволюционных алгоритмов. Много исследователей тщательно изучило эти методы и пыталось применить их к большому диапазону задач. Известно, что имеется много разных задач, которые невозможно решить точно за приемлемый период времени с помощью традиционных методов. Также есть много задач, не имеющих формального пути решения, что делает их решение очень трудным или даже невозможным с помощью традиционных методов. Примером является задача коммивояжёра (TSP), где требуется найти кратчайший путь вокруг заданного количества городов, посетив их все всего однажды и вернувшись к начальному городу в конце. Применение к некоторым из таких задач расчетов эволюции зачастую позволяет найти хорошее решение за приемлемый период времени. Эти методы не гарантируют отыскание точного решения конкретной задачи, но они находят очень хорошее решение, близкое к лучшему решению. Вот почему эти методы широко используются для решения множества разных задач, которые нельзя решить (или их решение слишком трудное) традиционными методами.

В данной статье будет рассмотрена библиотека C# для расчета эволюции. Библиотека реализует несколько известных эволюционных алгоритмов, таких как генетические алгоритмы (GA), генетическое программирование (GP) и программирование выражений генов (GEP), и может применяться для решения множества разных задач. Применение библиотеки показано на четырех примерах: оптимизация функции, символическая регрессия (приближение), предсказание временного ряда, задача коммивояжёра. Библиотека гибкая и повторно применимая, что позволяет решать разные задачи с ее помощью. В статье нет подробного описания эволюционных алгоритмов. Вместо этого статья кратко знакомит с идеей этих алгоритмов и дает список ссылок, позволяющий детально изучить эти методы.

Читайте также:
  • Манипулирование цветами в .NET – часть первая
    • Скачать демонстрационный проект (.NET 1.1) - 58.8 Кб• Скачать исходники C# (.NET 1.1) - 110.0 Кб• Скачать исходники C# (.NET 2.0) - 111.2 Кб• Скачать исходники VB (.NET 2.0) - 115.7 Кб Введение Почему статья о "цветах"? На самом деле, в .NET, можно использовать только два формата цвета: цвет...
  • Назад к основам – обобщенные структуры данных и алгоритмы в .NET 2.0
    •    Скачать исходники - 265.8 Кб (с тестами NUnit)•    Скачать двоичные файлы - 40.5 Кб•    Домашняя страница проекта NGenerics (CodePlex)Статья не дает все подробности и полные описания внутреннего устройства этих коллекций и алгоритмов - наоборот, она дает ссылки на имеющиеся в интернете ресурс...
  • Определение цен барьерных опционов с помощью сеток. Часть первая – постоянные барьеры
    •    Скачать демонстрационный проект - 5.26 Кб•    Скачать исходники - 12.2 Кб Введение Стоит отметить, что представленный метод можно расширить до вмещения опционов с несколькими постоянными барьерами. После изучения простого примера перейдем к более сложным опционам с изменяющимися во времени ...
  • FuzzyAdvisor – простая экспертная система с нечеткой логикой на F#
    •    Скачать исходники - 108 Кб Введение Более 15 лет назад разрабатывали проект (Brulé и др., 1995), требовавший экспертную систему, выбирающую подходящий вариант исходя из некоторых основных параметров. Были опробованы несколько подходов, в том числе использование исчисления предикатов (...
  • Нейронные сети на C#
    •    Скачать исходники - 251 Кб•    Скачать демонстрационный проект - 181 Кб Введение История нейронных сетей начинается в 1950-х гг., когда была представлена архитектура простейших нейронных сетей. После начальной работы в области идея нейронных сетей стала весьма популярной. Но затем область...