Применение пакета Optimization toolbox для решения задач оптимизации. Лабораторная работа №2а (1253749)
Текст из файла
Московский государственный технический университет им.Н.Э.БауманаКафедра “Системы автоматического управления”__________________________________________________________________________________ПРИМЕНЕНИЕ ПАКЕТА OPTIMIZATION TOOLBOXДЛЯ РЕШЕНИЯ ЗАДАЧ ОПТИМИЗАЦИИЛабораторная работа №2а по курсу ОУДПЦель работы: овладеть навыками и умением по построениюоптимальных систем на основе прямых методов оптимизации.Необходимое оборудование: ПЭВМ,операционной системой Microsoft Windows.пакетMATLABподПродолжительность работы: 2 часа.ВведениеПри решении задач оптимального управления, основанных на принципемаксимума Л.С.Понтрягина или классическом вариационном исчислении,возникает необходимость в оптимизации фyнкции Гaмильтoнa на каждом шагеинтегрирования.Пакет расширения (Optimization Toolbox) предназначен для решенияоптимизационных задач и систем нелинейных уравнений.
В пакете реализованыосновные методы оптимизации функций ряда переменных: безусловнаяоптимизация нелинейных функций; метод наименьших квадратов и нелинейнаяинтерполяция; решение нелинейных уравнений; линейное программирование;квадратичное программирование; условная минимизация нелинейных функций;метод минимакса; метод многокритериальной оптимизации.Пакет дает возможности решать задачи минимизации функций,нахождения решений уравнений, задачи аппроксимации («подгонки» кривых подэкспериментальные данные).Различные типы таких задач вместе с применяемыми для их решенияфункциями пакета Optimization Toolbox приведены в Приложении 1.Если при поиске минимума вещественной функции y=f(x) векторногоаргумента x на аргумент наложены те или иные ограничения в виде уравненийи/или неравенств, то основным методом решения задач условной минимизацииявляется использование множителей Лагранжа.
Каждое неравенство видаg(x)0 превращается в уравнение g(x)+v2=0, в котором слагаемое v2 заведомонеотрицательно. Затем левая часть каждого уравнения добавляется к целевойфункции с некоторыми множителями, которые вместе с величинами vвключаются в число переменных.Обращение к отдельным функциям приведено в Приложении 2.Практическая работа1.
Ознакомиться с имеющимся программным обеспечением OptimizationToolbox в среде MATLAB для решения задач оптимизации (Приложения 1 и 2).2. Используя наиболее подходящую оптимизационную функцию MATLAB,найти минимум скалярной функции J(х) при заданных ограничениях (Табл.1).Таблица 1Критерий оптимизацииОграниченияПримечания________________________________________________________________________________ 1Деменков Н.П.
Применение пакета Optimization Toolbox для решения задач оптимизацииМосковский государственный технический университет им.Н.Э.БауманаКафедра “Системы автоматического управления”__________________________________________________________________________________1Максимизировать J(x1,x2)=(x1+4x2)при условииЗадача линейногопрограммированияИначе max|cTx| Axb, x1,x20,x110, x210, x1+x214,x1,x201 010где cT=[1 4], A=0 1 , b= 101 1142J(x1, x2) = (x1 − 2)2 + (x2 − 2)2 → min3J(x1,x2,x3)=2 x1 +2x1+4x2-3x3→ min4min J(x1,x2,x3)=3 x 2 -11x1-3x2-x35minJ(x)=(-2x1+x2)/(x1+2x2+1)6minJ(x)=x12+2x22-2x1x2-2x1-6x27minJ(x)=x12+x22-10x1-15x28minJ(x)=x12+x22-20x1-30x29minJ(x)=x12+x22-10x1-8x210minJ(x)= x22+2x1x3-x211minJ(x)=(x1+x2+x3)212minJ(x)=3x12+x22+3x1-2x21322minJ(х) = С11х1^2 +С22х2^2.3+С33х3^1.4 +С44х4^2+С12х1^1.2*х2^0.5+С13х1^2.5 х3^1.1++С14х1^3 х4^0.7 + С23х2^1.6 х3^0.4+С24х2^2 х4 ^1.2 +С34х3^3.1х4^0.1+С1х1+ С2х2 + С3х3 + С4х4x12 +x22 4,−x1 + x2 0,x2 1,x1, x2 0.8x1-3x2+3x340,-2x1+x2-x3=-3,x20.x1-7x2+3x3+70,5x1+2x2-x32,x30x1-2x2≤2,2x1+x2+x3=6,xj≥0, j=1,2,3x1+x2≤2,-x1+2x2≤2,-x1+2x2≤2,x1,x2≥02x1+3x2≤13,2x1+x2≤10,x1,x2≥05x1+13x2≤51,15x1+7x2≤107,x1,x2≥02x1+3x2+x3=6,x1,x2,x3≥0x1+x2=4,x1+x3=8,x1,x2,x3≥0x1+2x2+3x3≤6,x1+x2≤1,x1+x3≤1,x1,x2,x3≥0x1+3x2+x3+x4=16,3x1-x2-x3+x4=4,x1,x2,x3, x4≥02x1 + 3,7x2 ≤ 8,1;4,2x3– 2,2x4 ≤ 13,4;0,5x1 + 3x2 + 4x3 ≤ 10Задача нелинейногопрограммирования,целевая функцияквадратичная,ограничениянелинейныеВвести переменныеy0=1/(x1+2x2+1),yj=y0/xjЛинейные неравенстваA*x ≤ bх = (х1, х2, х3, х4)TC11=2; C22=0.9; C33=3.7; C44=-2.5;C12=3.1; C13=4.2; C14=3.4;C23=- 4.1;C24=1.3; C34=3.8; C1=1; C2=2; C3=3;C4=4;________________________________________________________________________________ 2Деменков Н.П.
Применение пакета Optimization Toolbox для решения задач оптимизацииМосковский государственный технический университет им.Н.Э.БауманаКафедра “Системы автоматического управления”__________________________________________________________________________________14minJ(х) = С11х1^2 +С22х2^2.33x1 + 4,7x2 + 0,5x3 – 2x4Линейные равенства+С33х3^1.4 +С44х4^2+С12х1^1.2= 3,4;Aeq*x ≤ beq*х2^0.5+С13х1^2.5 х3^1.1+0,7x1 + 2,3x3 – 0,4x4 =+С14х1^3 х4^0.7 + С23х2^1.6 х3^0.44,6+С24х2^2 х4 ^1.2 +С34х3^3.1х4^0.1+С1х1+ С2х2 + С3х3 + С4х4х = (х1, х2, х3, х4)TC11=2; C22=0.9; C33=3.7; C44=-2.5;C12=3.1; C13=4.2; C14=3.4;C23=- 4.1;C24=1.3; C34=3.8; C1=1; C2=2; C3=3;C4=4;minJ(х) = С11х1^2 +С22х2^2.3+С33х3^1.4 +С44х4^2+С12х1^1.2*х2^0.5+С13х1^2.5 х3^1.1++С14х1^3 х4^0.7 + С23х2^1.6 х3^0.4+С24х2^2 х4 ^1.2 +С34х3^3.1х4^0.1+С1х1+ С2х2 + С3х3 + С4х4153.5x1^2 + 1,9x3^3 –3.4x5^1.6-4,3 ≤ 0;4.3x1^2.7 + 0,2x3^2 –3,2x4^2 +1.8 ≤ 0;Нелинейныенеравенстваc(x) <= 02x1^2 + 3,1x2^2 +0,5x3^2 – 3.7x4^2 - 3,4= 0;3.2x1^1.3 +2,9x3^2 –1.4x4^1.6 +0.8x1x2x3 5,7 = 0;1≤x1;0.5≤x2; 0.2≤x3;0.1≤x4;x1≤ 2.1; x2≤ 3.3; x3≤ 1.7;x4≤ 4.8;Нелинейные равенстваceq(x) = 0х = (х1, х2, х3, х4)TC11=2; C22=0.9; C33=3.7; C44=-2.5;C12=3.1; C13=4.2; C14=3.4;C23=- 4.1;C24=1.3; C34=3.8; C1=1; C2=2; C3=3;C4=4;minJ(х) = С11х1^2 +С22х2^2.3+С33х3^1.4 +С44х4^2+С12х1^1.2*х2^0.5+С13х1^2.5 х3^1.1++С14х1^3 х4^0.7 + С23х2^1.6 х3^0.4+С24х2^2 х4 ^1.2 +С34х3^3.1х4^0.1+С1х1+ С2х2 + С3х3 + С4х416х = (х1, х2, х3, х4)TC11=2; C22=0.9; C33=3.7; C44=-2.5;C12=3.1; C13=4.2; C14=3.4;C23=- 4.1;C24=1.3; C34=3.8; C1=1; C2=2; C3=3;C4=4;3.
Для заданного объекта управления (взять из табл.2) решить задачуоптимизации, используя любую из стандартных процедур оптимизации изOptimization Toolbox (fgoalattain, fminimax, fmincon, fminsearch и др.).Таблица 21234567891011121314151617181920k95959590858075706560555045403530252015100,10,150,20,150,10,150,20,150,10,150,20,150,10,050,10,150,20,150,10,05T0,50,40,30,20,50,40,30,30,40,30,20,30,40,50,40,30,20,30,40,5Сравнить с результатами, полученными при использовании методовБрайсона и Эллерта при решении задачи АКОР в ЛР№1.4. Сделать выводы и результаты продемонстрировать преподавателю.В результате выполнения ИПР студент должен получить следующиенавыки и умения:1. Навыки по оптимизации систем управления с помощью пакетаOptimization Toolbox.2.
Умение решить оптимизационную задачу на основе прямых методовоптимизации.________________________________________________________________________________ 3Деменков Н.П. Применение пакета Optimization Toolbox для решения задач оптимизацииМосковский государственный технический университет им.Н.Э.БауманаКафедра “Системы автоматического управления”__________________________________________________________________________________В результате выполнения ИПР студент должен получить следующиезнания:1. Прямых методов оптимизации.2.
Алгоритмов оптимизации.3. Процедур оптимизации.Оформление отчетаОтчет по лабораторной работе должен содержать:1. Название лабораторной работы.2. Цель исследования.3. Конкретную постановку задачи оптимизации.4. Уравнения исследуемых систем.5. Алгоритм и программу решения задачи оптимизации в MATLAB.6. Результаты оптимизации.7. Выводы по работе.Вопросы:1. Поставьте задачу оптимизации с применением принципа максимума.2. Какая связь существует между прямыми методами оптимизации ипринципом максимума?3. Какие существуют процедуры оптимизации в пакете OptimizationToolbox?4. Какие вычислительные проблемы возникают при решенииоптимизационной задачи прямыми методами?Литература1.
Дъяконов В.П., Круглов В.В. Математические пакеты расширенияMATLAB. Специальный справочник. – СПб.: Питер, 2001. – 480 с. (ПакетOptimization Toolbox – c. 376-436.)2. Сборник лабораторных работ по курсу «Управление в техническихсистемах»: Метод. Указания к лабораторным работам / Под ред. К. А.Пупкова.
- М.: Изд-во МГТУ им. Н.Э.Баумана, 2002. – 72с.3. Деменков Н.П. Вычислительные методы решения задач оптимальногоуправления на основе принципа максимума Понтрягина: Учеб. пособие. – М.:Изд-во МГТУ им. Н.Э.Баумана, 2015. – 78с.Приложение 1Типы задач, решаемых средствами пакета Optimization ToolboxТип задачиЗадачи минимизацииСкалярная (одномерная)минимизацияБезусловная минимизация(без ограничений)ЛинейноепрограммированиеМатематическая записьФункция MATLABmin f a , a1 a a 2fminbndmin f x fminunc,fminsearchaxmin f T x при условияхxlinprogA x b, Aeq x = beq,xL x xU1 Tminx Hx f T x при условияхxКвадратичное2quadprogпрограммированиеA·x b, Aeq·x = beq,xL x xU,________________________________________________________________________________ 4Деменков Н.П.
Применение пакета Optimization Toolbox для решения задач оптимизацииМосковский государственный технический университет им.Н.Э.БауманаКафедра “Системы автоматического управления”__________________________________________________________________________________min f T x при условияхxМинимизация при наличииограниченийс(x) 0, сeq(x) = 0,A·x b, Aeq·x = beq,xL x xU,min при условияхfminconx, γF(x) –wγ goal,с(x) 0, сeq(x) = 0,A·x b, Aeq·x = beq,xL x xU,min max {Fi (x)} при условияхДостижение целиfgoalattainx {Fi ( x )}с(x) 0, сeq(x) = 0,A·x b, Aeq·x = beq,xL x xU,Минимаксfminimaxmin f T x при условияхxПолубесконечнаяминимизацияЛинейные уравненияK(x,w) 0 для всех w,с(x) 0, сeq(x) = 0,A·x b, Aeq·x = beq,xL x xU,Нахождение решений уравненийC(x) d , n уравнений, n переменныхfseminf\ (оператор левогоделения, slash)Нелинейное уравнениеfzerof(a) = 0одной переменнойНелинейные уравненияfsolveF(x) = 0, n уравнений, n переменныхмногих переменныхЗадачи аппроксимации («подгонки» кривых)2Линейный методmin C x d 2 , m уравнений, n\ (оператор левогонаименьших квадратовxделения, backslash)(МНК)переменных2Неотрицательныйlsqnonnegmin C x d 2 , при условии x ≥ 0линейный МНКxЛинейный МНК приналичии ограничений2min C x d 2 , при условияхxminНелинейный МНКlsqlinA·x b, Aeq·x = beq, xL x xU,x112Fx 2 22 f x , при2iilsqnonlinусловииxL x xU,Нелинейная «подгонка»кривойminx12Fx, xdata ydata 2 , при2условииxL x xU,lsqcurvefitПринятые обозначения:• а – скалярный аргумент; x , γ – в общем случае векторные аргументы;• f(a), f(x) – скалярные функции; F(x), с(x), сeq(x), K(x,w) – векторныефункции;• A, Aeq, C, H – матрицы;• b, beq, d, f, w, goal, xdata, ydata – векторы;xL, xU, – нижняя и верхняя границы области изменения аргумента.________________________________________________________________________________ 5Деменков Н.П.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.