Добавил:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
73
Добавлен:
31.01.2021
Размер:
262.14 Кб
Скачать

Кафедра телекоммуникационных систем

«Основы математического моделирования»

Лекция №6:

Минимизация функций одной или нескольких переменных

Учебные вопросы:

1.Минимизация функции одной переменной. 2.Минимизация функции нескольких

переменных без ограничений.

Рекомендуемая литература: (L#6)

1.Половко А.М., Бутусов П.Н. MATLAB для студентов. – СПб.: БХВ-Петербург, 2005. – 320 с.

2.Дьяконов В.П. MATLAB 6: учебный курс. – СПб.: Питер, 2001. – 592 с.

3.Дьяконов В.П., Круглов В. Математические пакеты расширения MATLAB. Специальный справочник.

4.Дьяконов В.П. MATLAB 6.5 SP1/7.0 + Simulink 5/6. Основы применения. Серия «Библиотека профессионала». – М.: СОЛОН. Пресс, 2005. – 800 с.

5.Дьяконов В.П. MATLAB 6.5 SP1/7 + Simulink 5/6R в математике и моделировании. Серия Библиотека профессионала. – М.: СОЛОН- Пресс, 2005. – 576 с.

6.Потемкин В. Г. Система инженерных и научных расчетов MATLAB 5.х: в 2-х т.

7.Чен К., Джиблин П. Ирвинr А. МAТLAВ в математических исследованиях: Пер. с анrл. – М.: Мир, 2001. – 346 c.

8.Ануфриев И.Е., Смирнов А.Б., Смирнова Е.Н. MATLAB 7. – СПб.: БХВ-Петербург, 2005. – 1104 с.

Введение

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

Критерий оптимальности – показатель или система показателей качества работы некоторой системы, значение которого должно быть минимизировано

(максимизировано)

(Словарь по кибернетике, 1989 г.)

Например, необходимо минимизировать среднюю доставку пакетов в сети; максимизировать производительность ТКС; минимизировать стоимость использования (аренды) сетевых ресурсов;

максимизировать доход от продажи телекоммуникационных услуг.

1. Минимизация функции одной переменной

Важная задача численных методов — поиск минимума функции f(x) в некотором интервале изменения х — от х 1 до х 2 .

Если нужно найти максимум такой функции, то достаточно поставить знак «минус» перед функцией. Для решения этой задачи используется следующая функция:

[x,fval] = fminbnd(@myfun,x1,x2) - возвращает значение х, которое является локальным минимумом функции myfun(x) на интервале x1<x<x2 , а также дополнительно возвращает значение целевой функции fval в точке минимума, где

function f = myfun(x)

f = ... % Аналитически задаваемая функция с аргументом x. Ранее (в MatLab v6 R11) использовалась функция

[x,fval] = fmin('fun',x1,x2)

Пример №1

Необходимо найти минимум функции f(x)=x3-2x-5 на интервале от 0 до 2

% optim.m clear all;

fplot('fun1',[0,2]); grid on;

title('fun1'); xlabel('x'); ylabel('f(x)');

[x,fval]=fminbnd(@fun1,0,2) % fun1.m

function f = fun1(x) f=x.^3-2*x-5

Решение: x=0.8165; fval=-

6.0887

1. Минимизация функции одной переменной

Основные команды поиска локального минимума функции:

[x,fval] = fminsearch(@myfun,x0) [x,fval] = fminunc(@myfun, x0) где x0 - начальная точка поиска;

myfun – в общем случае нелинейная функция.

Пример №2

Необходимо найти минимум функции f(x)=arctg(x3- 2x-5) на интервале от -2 до 2

clear all; fplot('fun2',[-2,2]); grid on;

title('fun2'); xlabel('x'); ylabel('f(x)');

[x,fval]=fminunc(@fun2,0) Решение:

x=0.8165; fval=-1.4080 [x,fval]=fminunc(@fun2,-1) Решение:

x =-2; fval=-1.5708

2. Минимизация функции нескольких переменных без

ограничений

Основные команды поиска локального минимума функции:

[x,fval] = fminsearch(@myfun,x0) [x,fval] = fminunc(@myfun, x0), где x – вектор.

Пример №3

Необходимо найти минимум функции

f(x)= 3X2 + 2XY + Y2+5 вблизи точки [-20, 20]

% optim.m clear all;

x0 = [20,20];

[x,fval] = fminunc(@fun3,x0)

% fun3.m function f = fun3(x)

f = 3*x(1).^2 + 2*x(1)*x(2) + x(2).^2+5;

Пример №4 (постановка задачи)

Найти такое х, что является минимумом

при условии, что

Соседние файлы в папке .ppt