Использование GNU Scientific multimin для поиска всех локальных минимумов

В научной библиотеке GNU есть многомерная функция минимизации рамки. Однако его предостережения явно говорят о том, что при использовании функции с несколькими разными локальными минимумами она просто возвращает одно произвольное решение. Кто-нибудь знает, как вы могли бы адаптировать его, чтобы он возвращал список всех локальных минимумов (с учетом некоторых пороговых критериев)?


person andygeers    schedule 17.10.2008    source источник


Ответы (3)


Он не основан на GNU Scientific, но я нашел этот алгоритм для поиска всех локальных минимумов: http://www.cs.uoi.gr/~lagaris/papers/MINF.pdf

person andygeers    schedule 17.10.2008

Любой стандартный алгоритм оптимизации ищет локальный минимум где-то «близко» к начальной точке, выбранный им самим или предоставленный вами. Нахождение всех локальных минимумов может быть невычислимой проблемой, потому что у вас может быть бесконечное их количество, даже в конечном диапазоне (например, f (x) = [cos (1 / x)] ^ 2 имеет бесконечное количество локальных минимумов в диапазоне (0, 1]). Предполагая, что у вас есть конечное число локальных минимумов, поиск всех из них является более сложной задачей, чем поиск глобального минимума, который, в свою очередь, является гораздо более сложной проблемой, чем поиск локального минимума где-нибудь. рядом с вами. Не существует простого способа адаптации алгоритмов локальной оптимизации для поиска глобальных минимумов. Даже популярные алгоритмы для поиска глобального минимума, такие как генетические алгоритмы / стратегии эволюции, не гарантируют, что они пройдут все локальные минимумы. Фактически, они пытаются этого избежать.

Лучший способ использовать GSL в этой ситуации - это посмотреть на минимизированную функцию и попытаться угадать, где должны быть минимумы, а затем искать их, используя код GSL.

person quant_dev    schedule 11.05.2009

Оказывается, метод оптимизации роя частиц - неплохой вариант для задачи поиска всех локальных минимумов и глобального минимума функции. Коды PSO для определения местного минимума PSO для определения глобального минимума доступны для справки.

person saunter    schedule 09.11.2018