Подсистема оптимизации LabelMover пытается найти решение следующей задачи:
Дан набор переменных:
x1, x2, .. xn
и ограничения для этих переменных:
a1<= x1<= b1, a2<= x2<= b2, ... an<= xn<= bn .
Каждая переменная соответствует параметру, заданному в LabelMover. (Если параметр имеет тип Переместить в любом направлении, то ему соответствуют две переменные).
Множество всех значений переменных, удовлетворяющих ограничениям, называется пространством поиска или областью оптимизации.
Цель оптимизации - найти максимум или минимум функции f(x1, x2, .. xn), где f определяется значением, указанным в LabelMover в качестве цели. (Если выбрана цель Как можно ближе к, то ищется минимум расстояния между заданным значением и вычисленным значением).
Существуют два типа задач оптимизации: локальная оптимизация и глобальная оптимизация.
При локальной оптимизации ищется максимум или минимум целевой функции в некоторой окрестности оптимальной точки. Другими словами, найденный вариант не обязательно должен быть лучше всех других возможных вариантов. Достаточно, чтобы он был лучше всех близких к нему вариантов.
При глобальной оптимизации ищется максимальное или минимальное значение
для всего пространства поиска.
В текущей версии LabelMover реализована только локальная оптимизация.
Текущая версия LabelMover использует для многомерной оптимизации метод Нелдера-Мида (Nelder-Mead method). В метод внесены небольшие изменения, которые позволяют улучшить его работу для негладких функций. Для одномерной оптимизации используется метод Брендта (Brent method).
1. Если предполагается, что в исследуемом пространстве поиска есть несколько локальных экстремумов, то вы можете попробовать найти их, рассмотрев несколько вариантов исходной задачи.
Дело в том, что алгоритмы оптимизации начинают поиск оптимального решения с исходной задачи. Процесс поиска как правило (хотя и не всегда) находит ближайший локальный экстремум к исходному варианту. Таким образом, начав поиск с нескольких отличающихся друг от друга модификаций мы можем рассчитывать найти несколько локальных экстремумов.
2. Для поиска оптимального варианта рекомендуется использовать задачи, обеспечивающие достаточно высокую точность рассчетов (с достаточно густой конечно-элементной сеткой).
Если задача ELCUT решается с низкой точностью, то при поиске оптимального решения могут возникнуть случайные искажения результатов, вызванные ошибками моделирования. В результате, вместо настоящего экстремума может быть найден 'ложный', возникший в результате этих случайных искажений.
См также
Оптимизация - пошаговые инструкции