ПОИСК Статьи Рисунки Таблицы Сравнение различных методов поиска из "Методы оптимизации в химической технологии издание 2" Большое разнообразие методов решения задач нелинейного программирования (некоторые из них описаны в этой главе) указывает, прежде всего, на сложность проблемы поиска и трудности, связанные с оценкой эффективности использования того или иного метода для решения конкретной задачи. Тем не менее очень важно хотя бы с определенной степенью идеализации сопоставить практическую эффективность вычислительных возможностей разных методов. Такие оценки проводились для методов различных групп, что позволяет иногда наметить границы применимости этих методов с учетом соответствующих критериев. [c.543] Одним из таких критериев, имеющим чисто практическое значение, являются так называемые потери на поиск,, под которыми обычно понимают среднее число значений функции цели, которое необходимо при расчете для достижения оптимума. [c.543] Сделана попытка сравнить методы градиента, наискорейшего спуска и поочередного изменения переменных для функции цели квадратичной формы [13]. Показано, что средние потери на поиск для всех этих методов примерно одинаковы, если принять, что в методе градиента и методе поочередного изменения переменных используется один и тот же шаг спуска. [c.543] На рис. IX-36 показаны границы применимости указанных методов в зависимости от размерности задачи и удаления от оптимума, измеряемом в данном случае в единицах шага спуска. Область, расположенная над кривой, является областью более высокой эффективности метода случайного поиска и, наоборот, область под кривой — областью более высокой эффективности градиентного метода. [c.544] Эти результаты позволяют построить алгоритм решения задач нелинейного программирования высокой размерности, которые представляют собой сочетание метода случайных направлений с градиентным методом. При этом на значительном расстоянии от оптимума поиск производится методом случайных направлений, а при приближении к оптимуму осуществляется переход к градиентному методу. [c.544] Критерием для перехода к градиентному методу служит резкое возрастание относительного числа неудачных шагов. Вместе с тем, в подобном случае иногда достаточно эффективным оказывается также метод случайных направлений с переменным шагом. При уменьшении шага как бы производится возврат в область преимущественного использования случайного метода, так как число шагов до оптимума при этом, естественно, возрастает. [c.544] Следует иметь в виду, что приведенные выше оценки относятся к тем редким случаям, когда сопоставление проводилось в идентичных условиях, одним из которых является условие равенства шагов спуска в разных методах. При практической же реализации любого метода возможны улучшения за счет использования осо- бенностей целевой функции, стратегии выбора размера шагов спуска в различные моменты поиска, сочетания разных методов поиска и т. д. Поэтому не следует слишком категорично относиться к этим оценкам и только на их основании выбирать тот или иной метод для решения конкретной оптимальной задачи. Однако рассмотренные оценки весьма интересны, поскольку позволяют установить хотя бы приблизительные границы областей возможного применения различных методов. [c.545] В предыдущих главах неоднократно встречались случаи, когда при использовании того или иного метода решения задачи оптимизации, например принципа максимума- или динамического программирования, на некоторых этапах их применения возникала необходимость решения типичной задачи нелинейного программирования. [c.545] Таким образом, следует еще раз подчеркнуть, что методы нелинейного программирования служат не только для решения специфических задач, но, кроме того, являются необходимым средством, к которому приходится обращаться и при решении оптимальных задач другими методами, а также задач вычислительной математики. Простейший пример — проблема решения системы нелинейных уравнений с большим числом неизвестных, где практическая возможность получения решения в общем случае связана с применением методов нелинейного программирования. [c.545] Нужно также отметить, что ряд алгоритмов нелинейного программирования применяют для решения проблем обучения, самообучения и адаптации в автоматических системах [14], т. е. в области теории автоматического управления, возникшей относительно недавно и в настоящее время переживающей период бурного развития. [c.545] Наконец, по мере развития математического моделирования роль этих методов в решении оптимальных задач будет несомненно возрастать, что, в свою очередь, приведет к еще более глубокой разработке существующих и созданию новых алгоритмов поиска оптимума в задачах нелинейного программирования. [c.546] Вернуться к основной статье