русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Понятие о численных методах оптимизации


Дата добавления: 2013-12-23; просмотров: 2390; Нарушение авторских прав


Начальные сведения о численных методах оптимизации

 

Иногда удается, опираясь на условия оптимальности или на геометрическую интерпретацию, получить решение задачи оптимизации

f(x) ® min, x Î X, (2.1)

в явном виде, но в большинстве случаев задачу (2.1) приходится решать численно, с применением ЭВМ. Так, например, для решения задачи минимизации на Rn дифференцируемой функции f можно воспользоваться каким-либо численным методом решения системы уравнений f'(x) = 0. Однако, как правило, наиболее эффек­тивными оказываются методы, разработанные специально для реше­ния задачи оптимизации, так как они позволяют полнее учесть ее специфику.

В последующих главах будут рассмотрены численные методы решения задач различных типов: одномерных и многомерных, без­условных и условных, дискретных, а также задач оптимального управления.

В данном параграфе приводятся некоторые общие сведения, отно­сящиеся в первую очередь к численным методам безусловной и условной минимизации функции конечного числа непрерывно изменяющихся переменных. Такие методы занимают центральное место в численной оптимизации; они, в частности, используются при ре­шении дискретных оптимизационных задач и задач оптимального управления.

Любой численный метод (алгоритм) решения задачи оптимизации основан на точном или приближенном вычислении ее характеристик (значений целевой функции, функций, задающих допустимое множество, а также их производных). На основании полученной информации строится при­ближение к решению задачи – искомой точке минимума х* или, если такая точка не единственна, – к множеству точек минимума. Иногда, если только это и требуется, строится приближение к ми­нимальному значению целевой функции .

Для каждой конкретной задачи вопрос о том, какие характери­стики следует выбрать для вычисления, решается в зависимости от свойств минимизируемой функции, ограничений и имеющихся воз­можностей по хранению и обработке информации. Так, для мини­мизации недифференцируемой функции нельзя воспользоваться алго­ритмом, предусматривающим возможность вычисления в произвольной точке градиента функции. В случае, когда доступен небольшой объем памяти ЭВМ, при решении задачи высокой размерности нельзя воспользоваться алгоритмом, требующим вычисления на каждом шаге, хранения в памяти матрицы вторых производных и т.п.



Алгоритмы, использующие лишь информацию о значениях мини­мизируемой функции, называются алгоритмами нулевого порядка; алгоритмы, использующие также информацию о значениях первых производных, – алгоритмами первого порядка; алгоритмы, использую­щие, кроме того, информацию о вторых производных, – алгоритмами второго порядка.

В курсе рассматриваются алгоритмы только нулевого, первого и второго порядка.

Работа алгоритма состоит из двух этапов. На первом этапе вы­числяются предусмотренные алгоритмом характеристики задачи. На втором этапе по полученной информации строится приближение к решению. Для задач оптимизации выбор на втором этапе способа построения приближения, как правило, не вызывает затруднений. Например, для методов спуска, в которых на каждом шаге происхо­дит переход в точку с меньшим, чем предыдущее, значением функ­ции, за приближение к точке минимума обычно выбирается точка последнего вычисления. Поэтому для задания алгоритма достаточно указать способ выбора точек вычисления (конечно, при условии, что уже решен вопрос о том, какие именно характеристики решаемой задачи следует вычислять).

Если все точки выбираются одновременно до начала вычислений, то алгоритм минимизации называется пассивным. Необходимость при­менения пассивных алгоритмов возникает, например, в связи с использованием многопроцессорных ЭВМ, в связи с условиями постановки и проведения физических экспериментов, результатом которых являются значения минимизируемой функции, и т.д.

Однако для решения большинства задач точки вычисления выби­раются поочередно, т. е. точка xi+1 выбирается, когда уже выбраны точки предыдущих вычислений х1, ..., хi и в каждой из них произведены предусмотренные алгоритмом вычисления, результаты кото­рых будем обозначать соответственно через у1, ..., уi. Такие алго­ритмы называются последовательными. Таким образом, последова­тельный алгоритм определяется точкой х1 Î Х и набором отображе­ний вида

.

При этом

. (2.2)

В дальнейшем для записи методов минимизации мы будем поль­зоваться соотношением вида

xk+1 = xk + akhk, ak Î R, k = 0, 1, 2, … (2.3)

При этом конкретный алгоритм определяется заданием точки х0,правилами выбора векторов hk и чисел ak на основе полученной в результате вычислений информации, а также условием остановки. Таким образом, величины ak, hk в формуле (2.3) точно так же, как xi+1 в формуле (2.2), определяются теми или иными видами функ­циональной зависимости от точек и результатов всех ранее прове­денных вычислений, причем на практике обычно используются наи­более простые виды зависимости. Правила выбора ak, hk могут предусматривать и дополнительные вычисления, т.е. вычисления некоторых характеристик решаемой задачи в точках, отличных от x0, х1, ..., хk. Именно поэтому в формулах (2.2) и (2.3) употреблены различные индексы.

Вектор hk определяет направление (k+1)-го шага метода мини­мизации, а коэффициент ak – длину этого шага. При этом следует иметь в виду, что при

|| hk || ¹ 1 длина отрезка, соединяющего точки хk, xk+1, конечно, не равна |ak |. Обычно название метода минимизации определяется способом выбора hk, а его различные варианты связы­ваются с разными способами выбора ak. Наряду с термином шаг метода мы будем пользоваться также термином итерация метода.

Среди методов минимизации можно условно выделить конечно-шаговые и бесконечношаговые методы. Конечношаговыми, или конеч­ными, называются методы, гарантирующие отыскание решения задачи за конечное число шагов. Конечношаговые методы удается построить лишь для некоторых специальных типов задач оптимизации, напри­мер задач линейного и квадратичного программирования. Для бесконечношаговых методов достижение решения гарантируется лишь в пределе.

 



<== предыдущая лекция | следующая лекция ==>
Задачи оптимального управления | Направление убывания и методы спуска


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.902 сек.