Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МЕТОД. УКАЗ. ПО выполн. ЛАБ. РАБ. по дисцпл. ''...doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
314.88 Кб
Скачать

Решение задач безусловной минимизации квазиньютоновским

методом с использованием MathCad.

Цель работы – изучение квазиньютоновского метода решения задач безусловной минимизации, приобретение практических навыков ввода исходных данных конкретных задач минимизации функций многих переменных в системе MathCad, построение графиков поверхностей и линий уровня, получение и анализ результатов решения задачи, исследование результатов решении при вариации различных параметров.

1. Математическая постановка тестовой задачи

В качестве тестовой задачи безусловной минимизации рассмотрим задачу, математическая постановка которой заключается в следующем.

Определить оптимальные значения переменных х1 и x2, минимизирующих функцию многих переменных

f(x1, x2)=100(x2 – x1)2 + (1– x­1)2 + 10(x2 – 1)2

2. Методические указания по решению тестовой задачи

Для выполнения данной работы необходимо осуществить следующие действия:

1. Вызвать MathCad.

2. Ввести с клавиатуры заданную функцию многих (двух) переменных и начальную точку на входном языке Mathcad

f(x1, x2):=100(x2 – x1)2 + (1– x­1)2 + 10(x2 – 1)2

и численное значение начальной точки

x1 := 0 x2 := 0

3. Ввести

Given

minimize(f, x1, x2).

4.Для выбора квазиньютоновского метода щёлкнуть правой кнопкой мыши по функции minimize(f,x1,x2).

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

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

Advanced Option … (дополнительные параметры),

просмотреть отмеченные флажками параметры

Derivative estimation - опция Central (аппроксимация с помощью центральной разности);

Variable estimation - опция Tangent (по направлению вектора градиента);

Следующим параметром должна быть установлена опция Linear variable check, Multistart, Evoltionary - опции no.

6. Щелкнуть мышью по значку = панели инструментов Calculator (Automatic calculation – автоматическое вычисление), получить оптимальные значения переменных x и y.

Для получения минимального числового значения функции f(x1, x2) ввести с клавиатуры числовые значения полученных переменных и имя функции и щелкнуть мышью по значку = панели Calculator;

5. Решить данную задачу с точностью TOL = 0.001 (по умолчанию).

6. Решить данную задачу при разных численных значениях начальной точки (несколько точек по заданию преподавателя);

7. Решить данную задачу при разных численных значениях точности TOL;

8. Построить график f(x1, x2) и линии уровня данной функции;

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

10. Построить график и линии уровня минимизируемой функции;

11. Составить отчёт по результатам решения тестовой и индивидуальной контрольной задач.

3. Методические указания по решению

индивидуальной контрольной задачи

1. Получить у преподавателя, проводящего занятия, минимизируемую функцию.

2. Решить данную задачу при различных численных значениях

начальной точки,

точности Tol.

3. Построить графики функции f(x, y) и линии уровня.

4. Cоставить отчет по выполненной работе при решении тестовой и контрольной задач минимизации функций многих переменных.

4. Методические указания по выполнению

лабораторной работы

1. Первоначально необходимо изучить основные стандартные команды

главного меню математической системы MathCad.

3. Решить тестовую задачу.

4. Решить индивидуальную контрольную задачу.

5. Составить отчет по выполненной лабораторной работе.

4. Содержание отчета

Отчет по данной работе должен содержать:

- краткое изложение постановки и методики решения задачи;

- математическую модель тестовой задачи и ее решение;

- постановку и решение индивидуальной задачи, представленной студенту преподавателем.

5. Вопросы

1. Перечислить методы второго порядка решения задач безусловной минимизации функций многих переменных.

2. В чем заключается сущность квазиньютоновского метода?

3. Перечислить основные шаги квазиньютоновского метода.

4. Каккая программа использована в данной лабораторной работе?

5. Возможно ли решить с помощью данной программы другие функции многих переменных?

6. Как влияют изменения численных значений начальной точки на результаты решения задач квазиньютоновским методом?

7. Как влияют изменения величины точности на результат решения рассматриваемых в лабораторной работе задач?

Л а б о р а т о р н а я р а б о т а № 7(2 часа)

Решение задач одномерной минимизации

методом золотого сечения с использованием Excel.

Цель работы – изучение метода золотого сечения, приобретение практических навыков решения задач минимизации функций одной переменной в системе MathCad, построение графиков функций, получение и анализ результатов решения задачи, исследование результатов решении задачи.

1. Математическая постановка тестовой задачи

В качестве тестовой задачи одномерной минимизации рассмотрим задачу, математическая постановка которой заключается в следующем.

Определить оптимальное значение переменной x, минимизирующее целевую функцию:

f(x) = 2x2 – ln(x)

на отрезке [0, 25; 1] с точностью 0, 1.

2. Методические указания по решению тестовой задачи

В качестве метода решения тестовой задачи выберем, например, метод золотого сечения.

Для выполнения данной работы необходимо осуществить следующие действия:

1. Вызвать Excel;

2. В первую строку ввести

Метод золотого сечения. Целевая функция f(x)=2x2 - ln(x)

3. Во второй строке в ячейки A2 – I2 ввести

A2

B2

C2

D2

E2

F2

G2

H2

I2

N

k

A

B

x1

x2

y1

y2

b-a

4. В третьей строке в соедующие ячейки ввести

A3 – 1, B3 – = 5^0.5 – 2, C3 – 0,25, D3 – 1

E3 – =(C3 – D3)/2 – &B&3*(D3 – C3/2)

F3 – =(C3 – D3)/2 + &B&3*(D3 – C3/2)

G3 – =2*E3^2 – LN(E3)

H3 – =2*F3^2 – LN(F3)

I3 – =(b – a)

5. В четвёртую строку в следующие ячейки ввести условия

С4 – =ЕСЛИ(G3<H3;C3;E3)

D4 – =ЕСЛИ(G3<H3;F3;D3)

с целью сужения интервала [a, b] с помощью функции ЕСЛИ.

6. Выделить ячейки F3, G3, H3 и скопировать формулы в ячейки F4, G4, H4.

7. Выделить строку 4 (вторая строка с расчетами) и скопировать формулы в другие строки до требуемой точности (n = 6) (восьмая строка).

8. Решить данную задачу с:

- различными величинами отрезка [a, b],

- различной точностью ℇ.

9. Построить график зависимости a, b, x1, x2 от номера итерации.

10. Получить у преподавателя, проводящего занятие, индивидуальное задание – функцию одной переменной − решить ее согласно авшеизложенной методике с различными величинами отрезка [a, b] и точности.

11. Построить соответствующие графики.

12. составить отчет по решенным тестовой и индивидуальной задачам.

3. Методические указания по решению

индивидуальной контрольной задачи

1. Получить у преподавателя, проводящего занятия, минимизируемую функцию.

2. Решить данную задачу при различных численных значениях

начальной точки,

точности Tol.

3. Построить графики функции f(x).

4. Составить отчет по выполненной работе при решении тестовой и контрольной задач минимизации функций одной переменной.

4. Методические указания по выполнению

лабораторной работы

1. Первоначально необходимо изучить основные стандартные команды

главного меню математической системы MathCad.

2. Изучить метод золотого сечения.

3. Решить тестовую задачу.

4. Решить индивидуальную контрольную задачу.

5. Составить отчет по выполненной лабораторной работе.

5. Содержание отчета

Отчет по данной работе должен содержать:

- краткое изложение постановки и метода решения задачи;

- математическую модель тестовой задачи и ее решение;

- постановку и решение индивидуальной задачи, представленной студенту преподавателем.

6. Вопросы

1. Перечислить методы решения задач одномерной минимизации.

2. Дать определение термина “золотое сечение”.

3. В чем заключается сущность метода золотого сечения?

4. Перечислить и объяснить шаги метода золотого сечения.

5. Какая программа использована в данной лабораторной работе?

6. Возможно ли решить с помощью данной программы различные функции одной переменной?

7. Как влияют изменения числовых значений коэффициентов функции одной переменной на результаты решения задач методом золотого сечения?

8. Как влияют изменения величины точности на результат решения рассматриваемых в лабораторной работе задач?

Л а б о р а т о р н а я р а б о т а № 8 (2 часа)

Решение задач безусловной минимизации функций

многих переменных методом Левенберга - Марквардта с использованием системы Mathcad

Цель работы – изучение метода Левенберга - Марквардта, приобретение практических навыков решения конкретных задач минимизации функций многих переменных в системе MathCad, построение графиков поверхностей и линий уровня, получение и анализ результатов решения задачи, исследование результатов решения при вариации различных параметров.

1. Математическая постановка тестовой задачи

В качестве тестовой задачи безусловной минимизации функции многих переменных (в данном случае – двух) рассмотрим задачу, математическая постановка которой заключается в следующем.

Определить оптимальные значения переменных х и y минимизирующих функцию Розенброка

f(x, y) = 100(y – x2)2 + (1 – x)2

2. Методические указания по решению тестовой задачи

В качестве метода решения данной тестовой задачи принимается, например, метод поиска безусловного минимума второго порядка - метод Левенберга – Марквардта, сочетающего в себе методы Ньютона и градиентного спуска.

Для выполнения данной работы необходимо осуществить следующие действия:

1. Вызвать Mathcad.

2.Ввести с клавиатуры функцию Розенброка с соответствующим Mathcad синтаксисом

f(x, y) : = 100(y – x2)2 + (1 – x)2.

3. Ввести численное значение начальных точек х := 2, y := – 2.

4. Ввести

given

minimize(f, x, y)

5. Выбрать метод решения тестовой задачи и точность ее решения.

5.1. Щёлкнуть правой кнопкой мыши по функции minimize(f, x, y).

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

6. Щелкнуть мышью по значку = панели инструментов Calculator (Automatic calculation – автоматическое вычисление) и получить оптимальные численные значения переменных x и y.

Для получения минимального числового значения функции f(x, y) ввести с клавиатуры числовые значения полученных переменных и имя функции и щелкнуть мышью по значку = панели Calculator.

7. Решить тестовой задачу при различных величинах точности:

TOL = 0,1; 0,01; 0,001; 0,0001; 0,00001. Для задания точности щелкнуть мышью на меню Tools (Инструменты) главного меню Mathcad. В появившемся меню щёлкнуть по команде Worksheet Options … (Параметры). Появится диалоговое окно, в котором необходимо выбрать вкладку Build-in Variable (Переменные). В результате появится список параметров, среди которых будет параметр Convergance Tolerance (TOL), численное значение которого по умолчанию будет равно 0,001.

8. Решить тестовую задачу при различных начальных точках, например,

x = 1, y = – 1;

x = 4, y = – 4;

x = 8, y = 8.

9. Построить графики функции f(x, y) и линии уровня.

Для этого щелкнуть мышью по меню Format главного меню, выделить опцию Graph, в результате чего высветится дополнительный список опций, в котором следует выбрать опцию 3D Plot и щелкнуть мышью. На экране появится очередное диалоговое окно с именем 3 – D Plot Format, в котором следует поочередно устанавливать флажки на командах Surface Plot, contour Plot, Bar Plot.

Для исследования поверхности следует проварьировать команды Rotation, titl, Twist (Вращение, наклон, Искривление – вкладка “Общие”).

10. Построить график и линии уровня минимизируемой функции;

11. Составить отчёт по результатам решения тестовой задачи.

3. Методические указания по решению

индивидуальной контрольной задачи

1. Получить у преподавателя, проводящего занятия, минимизируемую функцию.

2. Решить данную задачу при различных численных значениях

начальной точки,

точности Tol.

3. Построить графики функции f(x, y) и линии уровня.

4. Составить отчет по выполненной работе при решении тестовой и контрольной задач минимизации функций многих переменных.

4. Методические указания по выполнению

лабораторной работы

1. Первоначально необходимо изучить основные стандартные команды

главного меню математической системы MathCad.

3. Решить тестовую задачу.

4. Решить индивидуальную контрольную задачу.

5. Составить отчет по выполненной лабораторной работе.

5. Содержание отчета

Отчет по данной работе должен содержать:

- краткое изложение постановки и методики решения задачи;

- математическую модель тестовой задачи и ее решение;

- постановку и решение индивидуальной задачи, представленной студенту преподавателем.

6. Вопросы

1. Перечислить методы второго порядка решения задач безусловной минимизации функций многих переменных.

2. В чем заключается сущность метода Левенберга - Марквардта?

3. Перечислить основные шаги метода Левенберга - Марквардта.

4. Какая программа использована в данной лабораторной работе?

5. Возможно ли решить с помощью данной программы другие функции многих переменных?

6. Как влияют изменения числовых значений начальной точки на результаты решения задач рассматриваемым методом?

7. Как влияют изменения величины точности на результат решения рассматриваемых в лабораторной работе задач?

8. Сравнить результаты решения задачи минимизации функции многих переменных методами квазиньютоновским, сопряженных градиентов и Левенберга – Марквардта.

Литература

1.Акулич И.Л. математическое программирование в примерах и задачах. – М.: Высшая школа, 1986. – 319 с.

2. Интернет сайт

http://www.lindo.com

3. Летова Т.А., Пантелеев А.В. Экстремум функций в примерах и задачах. − М.: МАИ, 1998. − 373 с.

4. Пантелеев А.В., Летова Т.А. Методы оптимизации в примерах и задачах. − М.: 2003. − 443 с.

5. Салманов О.Н. Математическая экономика с применением Mathcad и Excel. − СПб.: БХВ-Петербург, 2003. − 456 с.

ЧЕРНИКОВ ЮРИЙ ГЕОРГИЕВИЧ

МЕТОДЫ ОПТИМИЗАЦИИ

Методические указания по выполнению

лабораторных рабоот

Темплан 2005 г., поз. 129.

Редактор Граве Е.П.

Технический редактор Аракелян Г.Ц.

Подписано в печать 26.09.2005 г. Формат 60х90/16

Объем 3,25 печ. л. Тираж 100 экз. Заказ №

_________________________________________________________________

Типография МГГУ, Ленинский проспект,

38