Ответ 1
Вот несколько бесплатных и с открытым исходным кодом С# implementationrions
- Внедрение Nelder Mead Simplex Альтернативная ссылка ]
- Numerical предоставляет множество алгоритмов, включая:
- Менеджер хромосом
- Генетический оптимизатор
- Оптимизатор скалолазания
- Максимизирующая точка
- Максимизация PointFactoy
- Максимизация вектора
- Минимальная точка
- Минимизирующая точка Factory
- Минимизация вектора
- Универсальный оптимизатор общих переменных
- Многофункциональный оптимизатор
- Один оптимизатор функциональных возможностей
- Оптимизация поиска брекетов
- Оптимизация точки
- Точка оптимизации Factory
- Оптимизация вектора
- Оптимизатор симплексов
- Менеджер векторных хромосом
- Векторный генетический оптимизатор
- Векторная проецируемая функция
- DNAnalytics
- Выполнено как чисто управляемое решение, так и тонкая оболочка по неуправляемому коде Intel.
- объединяется в MathNetNumerics
Подробнее можно найти на этом list
Обратите внимание, что оптимизаторы часто выигрывают от более экстремальной оптимизации кода (или сборки), которые на самом деле невозможны в чистом управляемом С#. Если серьезная скорость вызывает озабоченность, тогда нацеленность на неуправляемую реализацию, такую как NAG или MOSEK, может обеспечить существенные преимущества, которые перевешивают проблему доступа данных к неуправляемому API (например, закрепление управляемого буфера или использование файлов с отображением памяти).