Новая версия популярного приложения программы Mathematica - Global Optimization 4.3
Global Optimization 4.3 - набор функций для глобальной оптимизации нелинейных функций с ограничениями или без них. Это приложение программы Mathematica, использующее интерфейс Mathematica для задания нелинейных систем и для вычисления численных значений функций. Любая функция, вычисляемая программой Mathematica, может быть использована как входная, включая функции аппроксимации данных, функции черного ящика и имитационные модели. Пакет используется с начала 1998 г. и тщательно протестирован мировым сообществом пользователей. В сравнительных тестах приложение превосходит такие стандартные инструменты, как Simulated Annealing, Genetic Algorithm, LGO, SQP и встроенные функции программы Mathematica. Версия 4.3 обеспечивает существенное повышение производительности для больших задач и решает задачи, которые раньше не решались оптимизационными инструментами.
Пакет включает десять функций.
- GlobalSearch - алгоритм поиска экстремума для нелинейных функций с аналитически заданными ограничениями в виде уравнений и неравенств. Он предназначен для надежного поиска локальных экстремумов и способен решать задачи с сотнями переменных. Не требуются производные функций, а определяемые пользователем целевые функции могут быть даже не дифференцируемы. Эта функция идеальна для нелинейной регрессии, инженерных расчетов, оценок моделей, финансового анализа и других применений. Нет необходимости ограничивать области поиска или начальных значений.
- GlobalPenaltyFn - алгоритм поиска экстремума для нелинейных функций с неаналитическими ограничениями в виде уравнений или неравенств. Он предназначен для надежного поиска локальных экстремумов и способен решать задачи с сотнями переменных. Не требуются производные функций, а заданные пользователем объектные функции могут быть даже не дифференцируемы. Нет необходимости ограничивать области поиска или начальных значений.
- IntervalMin решает задачи с использованием методов интервала. Эта функция надежно находит локальные экстремумы для задач с ограничениями, заданными неравенствами. Не нужны производные функций, а задаваемые пользователем целевые функции могут быть недифференцируемы. Эта функция полезна при решении задач нелинейной регрессии, инженерного проектирования, оценки моделей, финансового анализа.
- MultiStartMin - алгоритм поиска экстремумов для нелинейных функций с ограничениями (включая ограничения области изменения параметров) и без ограничений. Он надежен при поиске локальных экстремумов для задач среднего масштаба (до 15 переменных). Не требуются производные функций, а пользовательские функции могут быть даже недифференцируемы. Параметры могут быть смешанными: непрерывными, целочисленными и дискретными. Может быть применена для решения криптографических задач. Функция идеальна для задач нелинейной регрессии, инженерного проектирования, оценки моделей, финансового анализа. Нет необходимости ограничивать области поиска или начальных значений. NLRegression решает задачи нелинейной регрессии. Обеспечивается высокочувствительный анализ значений параметров вблизи точки решения. Вычисляются доверительные интервалы. Могут быть использованы нормы L1 и L2. Могут решаться задачи с ограничениями.
- MaxLikelihood решает задачи методом максимального правдоподобия. Предусмотрена сводная статистика. Для получения лучших результатов можно вводить ограничения. Прилагается библиотека оптимизированных по скорости однопараметрических функций.
- InterchangeMethodMin - функция для 0-1 целочисленных задач с линейными и нелинейными целевыми функциями. Она может решать транспортные задачи, задачи нахождения кратчайших путей в сети и другие дискретные сетевые задачи даже для нелинейных целевых функций.
- TabuSearchMin - функция для 0-1 целочисленных задач с линейными или нелинейными целевыми функциями. Дополнительная особенность "tabu" увеличивает эффективность решения сложных задач. Она может решать транспортные задачи, задачи нахождения кратчайших путей в сети и другие дискретные сетевые задачи даже для нелинейных целевых функций.
- GlobalMinima решает слабо-ограниченные или неограниченные глобальные нелинейные задачи. Этот алгоритм основан на идентификации допустимых значений, которые определяют множество решений на каждом шаге итерации. Поскольку точки находятся в процессе измельчения сетки, точки, удаленные от оптимальных на данном шаге, устраняются из набора решений. В результате одновременно могут быть найдены несколько экстремумов, если они существуют. Алгоритм также определяет оптимальные области поиска, которые могут быть границами для более точного решения другими методами.
- MaxAllocation - алгоритм предназначен для решения распределенных задач, таких как инвестиции, в которых фиксированное количество денег распределяется на множестве инвестиционных опций. Такие задачи имеют единственное ограничение в виде уравнения и ограничения положительности для всех переменных. Применяемый алгоритм способен эффективно решать подобные задачи с тысячами переменных. Функция идеальна для квадратичного программирования, распределения инвестиций, хеджирования.
Приложение разработано компанией Loehle Enterprises.