Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Описание пакета Optimization
Пакет Optimization, входящий в состав Maple, предназначен для решения оптимизационных задач. Он загружается в память с помощью команды [> with(Optimization); Как видно, в состав этого пакета входят 8 процедур и функций. Описание наиболее важных из них приведено в табл. 4.1. Таблица 4.1.
Пусть даны целевая функция переменной ( – управляющие переменные, ) и система из ограничений, выраженных неравенствами (равенствами) (4.1) Ниже приведены варианты использования процедуры Maximize при решении различных оптимизационных задач: [> Maximize(object_function); процедура нахождения наибольшего значения целевой функции при любых значениях управляющих переменных (решается задача на безусловный экстремум: , ); [> Maximize(object_function, { constr}); процедура нахождения наибольшего значения целевой функции при выполнении системы ограничений {constr} (решается задача на условный экстремум: , , ); [> Maximize(object_function, { constr}, assume=nonnegative); процедура нахождения наибольшего значения целевой функции при выполнении системы ограничений {constr} (решается задача на условный экстремум: , , ). Здесь object_function – целевая функция , {constr} – список ограничений вида (4.1), параметр assume=nonnegative означает, что задача решается в области неотрицательных значений управляющих переменных. Процедура NLPSolve во многих случаях описывается одним из следующих способов: [> NLPSolve(object_function, initialpoint={x[1]=a1, x[2]=a2, …, x[n]=an}, maximize ); решается задача нелинейного программирования на максимум целевой функции (безусловный максимум): , ; [> NLPSolve(object_function, initialpoint={x[1]=a1, x[2]=a2, …, x[n]=an}, maximize, assume=nonnegative); решается задача нелинейного программирования на максимум целевой функции (безусловный максимум): , ; [> NLPSolve(object_function, {constr}, initialpoint={x[1]=a1, x[2]=a2, …, x[n]=an}, maximize ); решается задача нелинейного программирования на максимум целевой функции (условный максимум): , , ; [> NLPSolve(object_function, {constr}, initialpoint={x[1]=a1, x[2]=a2, …, x[n]=an}, maximize, assume=nonnegative); решается задача нелинейного программирования на максимум целевой функции (условный максимум): , , . Здесь обязательный параметр initialpoint={x[1]=a1, x[2]=a2, …, x[n]=an} означает точку начального приближения , где заданные числа. Пример 4.1. Исследовать на безусловный экстремум функцию . Решение. Данная функция подробно исследована в примере 2.3. Приведем текст рабочего листа с применением пакета Optimization.
Пример 4.2. Найти точку условного экстремума функции , где переменные удовлетворяют уравнениям связи
Решение. Данная задача была решена в примере 2.4. Приведем текст рабочего листа с применением пакета Optimization.
|