презентацию

Download Report

Transcript презентацию

Математическое
программирование
{
Подготовили студенты 3го курса:
Антонова А.А
Кухарский А.С
Макарова А.А
Введение


Математическое программирование – это раздел
математики, занимающийся разработкой методов
отыскания экстремальных значений функции, на аргументы
которой наложены ограничения.
Математического программирование делится:





Линейное программирование,
Нелинейное программирование (выпуклое, квадратичное),
Динамическое программирование,
Дискретное и целочисленное программирование,
Стохастическое программирование и др.
Линейное программирование



Типичным представителем задач линейного
программирование является следующая: найти максимум
линейной функции
(1)при условиях
i = 1, 2, ..., m, (2)
j = 1, 2, n, (3)
где cj, aij и bi — заданные величины.
Задачи линейного программирования можно решить при
помощи MatLab.
Linprog решает задачу линейного программирования
Нелинейное программирование

Нелинейное программирование – случай математического
программирования, в котором целевой функцией или
ограничением является нелинейная функция.

Нелинейное программирование включает в себя:


Выпуклое программирование;
Квадратичное программирование.
Выпуклое программирование

Выпуклое программирование – это задача нелинейного
программирования, у которой все функции являются
выпуклыми .
Квадратичное программирование

Квадратичное программирование - особый тип
оптимизационной задачи. Это задача оптимизации
(сведение к минимуму или максимуму ) квадратичной
функции нескольких переменных при линейных
ограничениях на эти переменные.
Целочисленное программирование

Целочисленное программирование – один из наиболее
молодых, перспективных и быстро развивающихся разделов
математического программирования. Можно перечислить
большое количество разнообразных задач планирования
экономики, организации производства, исследования
конфликтных ситуаций, синтеза схем автоматического
регулирования
Целочисленное программирование


Целочисленное программирование – один из наиболее
молодых, перспективных и быстро развивающихся разделов
математического программирования. Можно перечислить
большое количество разнообразных задач планирования
экономики, организации производства, исследования
конфликтных ситуаций, синтеза схем автоматического
регулирования
Включает в себя:


Условную оптимизацию;
Безусловную оптимизацию.
Условная оптимизация

Здесь мы используем функции MatLab fminbnd и fmincon
(Поиск минимума функции одной переменной для
фиксированного интервала когда x, x1 и x2 есть скаляры, а
f(x) - функция, которая возвращает скаляр.

fmincon находит минимум для скалярной функции нескольких
переменных с ограничениями начиная с начального
приближения. В общем случае, эта задача относится к
нелинейной оптимизации с ограничениями или к
нелинейному программированию.
Безусловная оптимизация

Для решения задач в среде MatLab используются функции
fminsearch и fminunc.

Fminunc находит минимум скалярной функции нескольких
переменных, стартуя с некоторой начальной точки. В общем,
задача относится к нелинейной оптимизации без ограничений

Fminsearch находит минимум скалярной функции нескольких
переменных, стартуя с некоторой начальной точки. В общем,
задача относится к нелинейной оптимизации без ограничений
Динамическое программирование

Динамическое программирование — способ решения сложных
задач путём разбиения их на более простые подзадачи.

Методы динамическое программирования являются составной
частью методов, используемых в исследовании операций, и
применяются как в задачах оптимального планирования, так и
при решении различных технических проблем
Динамическое программирование

Динамическое программирование — способ решения сложных
задач путём разбиения их на более простые подзадачи.

Методы динамическое программирования являются составной
частью методов, используемых в исследовании операций, и
применяются как в задачах оптимального планирования, так и
при решении различных технических проблем
Динамическое программирование имеет два приема:



Нисходящее;
Восходящее;
Дискретное программирование


Дискретное программирование— раздел оптимального
программирования, изучающий экстремальные задачи, в
которых на искомые переменные накладывается условие
целочисленности, а область допустимых решений конечна
Способы решения:


Для линейных дискретных задач;
Булевые задачи линейного программирования.
Стохастическое программирование


Стохастическое программирование — раздел
математического программирования, совокупность методов
решения оптимизационных задач вероятностного характера.
Представляется 2-мя элементами:



Последовательный;
Расчетный.
выполняется 2-мя способами:


Обычная задача Л.П;
Закон распределения С.В.
Спасибо за внимание!