Скачать презентацию Математическое программирование математическая теория принятия оптимальных решений Проф Скачать презентацию Математическое программирование математическая теория принятия оптимальных решений Проф

Математическое программирование.ppt

  • Количество слайдов: 53

Математическое программирование (математическая теория принятия оптимальных решений) Проф. Сагитов Р. В. Математическое программирование (математическая теория принятия оптимальных решений) Проф. Сагитов Р. В.

Примеры задач математического программирования 1. Задача планирования производства (оптимальное использование ресурсов) 2. Задача распределения Примеры задач математического программирования 1. Задача планирования производства (оптимальное использование ресурсов) 2. Задача распределения работ. 3. Задача оптимального распределения финансовых ресурсов.

Общая задача линейного программирования Линейная форма Система условий (система ограничений) Условия ограничений по знаку Общая задача линейного программирования Линейная форма Система условий (система ограничений) Условия ограничений по знаку

Каноническая задача линейного программирования Каноническая задача линейного программирования

Основные определения Допустимое решение (план) – вектор Х = (х1, х2, …, хn) -удовлетворяющий Основные определения Допустимое решение (план) – вектор Х = (х1, х2, …, хn) -удовлетворяющий системе ограничений ЗЛП. Решение ЗЛП (оптимальный план) – вектор Х* = (х1*, х2*, …, хn*) , доставляющий максимальное значение линейной форме т. е. Z( Х* ) = max Z(X)

Теорема 1: Всякая задача линейного программирования может быть приведена к каноническому виду. 1. 1. Теорема 1: Всякая задача линейного программирования может быть приведена к каноническому виду. 1. 1. Задача минимизации Z(x) →max равносильна задаче - Z(x) →min 1. 2. Неравенство уравнению и неравенству равносильно 1. 3 Переменная, на которую не наложено условие неотрицательности, можно представить в виде хj= х1 j – х2 j ;

Различные формы записи ЗЛП 1. Общая 2. Каноническая. 3. Симмет ричная Z(x) →extr Z(Х) Различные формы записи ЗЛП 1. Общая 2. Каноническая. 3. Симмет ричная Z(x) →extr Z(Х) →max Z(Х)→max AX≤B AX=B AX≤B AX≥B X≥ 0 AX=B

Геометрические свойства З. Л. П Рассмотрим симметричную форму задания задачи линейного программирования в матричном Геометрические свойства З. Л. П Рассмотрим симметричную форму задания задачи линейного программирования в матричном виде Z(х) →max АХ ≤ В G X ≥ 0 Пусть переменных n=2.

Геометрический способ решения задачи линейного программирования n=2 x 2 l 1 l 2 Z* Геометрический способ решения задачи линейного программирования n=2 x 2 l 1 l 2 Z* l 3 G X*(x 1*, x 2* ) Z 1=0 Z 2 l 4 l 5 x 1

Геометрический способ решения n=2 x 2 G x 1 Z(X) → ∞ Геометрический способ решения n=2 x 2 G x 1 Z(X) → ∞

Геометрический способ решения n=2 x 2 G=Θ x 1 ЗЛП неразрешима из-за противоречивости условий Геометрический способ решения n=2 x 2 G=Θ x 1 ЗЛП неразрешима из-за противоречивости условий системы ограничений

Геометрический способ решения З. Л. П( в пространстве) n=3 X 3 X* оптимальный план Геометрический способ решения З. Л. П( в пространстве) n=3 X 3 X* оптимальный план Z*= Z(Х*)=max. Z(X) G Z 1 X 2 X 1

Выпуклые множества Геометрическое представление Х 2 Х 3 Х Выпуклые множества Геометрическое представление Х 2 Х 3 Х" Х 1 Х 5 Х' Х 4 Х" Х' Х' Х" Алгебраическое представление Определение Множество отрезок имеет вид Х(Θ) = ΘХ' +(1 -Θ)Х" Θ Є [0; 1] Определение: Множество называется выпуклым, если вместе с двумя произвольными точками этого множества ему принадлежит и отрезок, соединяющий их. Определение: Выпуклой комбинацией называется выражение вида Хо = k 1 Х 1 +k 2 Х 2 +…+kr Хr ki ≥ 0 i=1, 2, …, r Σki = 1.

Свойства З. Л. П 1. Теорема 1. Множество планов З. Л. П – выпуклое Свойства З. Л. П 1. Теорема 1. Множество планов З. Л. П – выпуклое множество. 2. Лемма. Всякая точка выпуклого множества может быть представлена в виде выпуклой комбинации угловых точек множества. 3. Теорема 2. Решение З. Л. П. достигается в угловой точке множества планов З. Л. П.

Опорные планы З. Л. П. Определение: все угловые точки множества планов З. Л. П Опорные планы З. Л. П. Определение: все угловые точки множества планов З. Л. П называются опорными планами З. Л. П. Опорным планом называе тся такой план ЗЛП, для которого не найдется двух различных планов таких, что опорный план будет внутренней точ- кой отрезка соединяю-щего их Геометрическое представление Х 2 Х 1 xo. Х 3

Критерий опорности плана З. Л. П Теорема 3 ( критерий опорности плана ЗЛП) Для Критерий опорности плана З. Л. П Теорема 3 ( критерий опорности плана ЗЛП) Для того чтобы план ЗЛП был опорным, необходимо и достаточно, чтобы векторы условий, отвечающие положительным компонентам плана были линейно независимыми.

Пример G Пример G

Алгебраическая характеристика опорного плана Z(x)= 3 х1+х2 -2 х3→max 2 x 1 - x Алгебраическая характеристика опорного плана Z(x)= 3 х1+х2 -2 х3→max 2 x 1 - x 2 + x 3 = 1 x 1+2 x 2 – x 3 = 3 xj ≥ 0 j=1, 2, 3 Z(x)= 3 х1+х2 -2 х3→max x 2 - (3/5)x 3 = 1 x 1 +(1/5)x 3 = 1 xj ≥ 0 j=1, 2, 3 Xo = (1, 1, 0) Бхо (А 1, А 2) Z(Xo) = 4.

Базис опорного плана Хо= (х1 о; х2 о; …хno) – опорный план. Если хј Базис опорного плана Хо= (х1 о; х2 о; …хno) – опорный план. Если хј > 0, то Ај = Аѕі , если хј = 0, то Ај ≠ Аѕі Определение: Векторы, отвечающие положительным компонентам плана образуют базис опорного плана Х 1=(1, 0, 0, 1) – базис Бх1 = {А 1=Аѕ 1; А 4 =Аѕ 2 } таким образом Бх1 ={Аѕ 1 Аѕ 2}. Х 2=(0, 5, 0, 0) – вектор А 2 = Аѕ 1 войдет в базис, но его требуется дополнить еще каким либо вектором Бх2 = {А 2 = Аѕ 1 ; А? = Аѕ 2}

Переход от одного опорного плана к другому ХО = (х1 о; х2 о; . Переход от одного опорного плана к другому ХО = (х1 о; х2 о; . . xsⓡ. . ; хno) Б(хо)= (Аѕ₁ Аѕ₂…Аѕⓡ. . Аѕm) хiо≥ 0 Аѕi лин. незав. i = 1, 2, …m Х 1 = ( х11; х21; . . Θ. . , хn 1) Б(х1)= (Аѕ₁ Аѕ₂…Аk. . Аѕm) Хi 1 ≥ 0 Аѕi лин. незав. i = 1, 2, …m Геометрическое представление А 1 А 2 Ао А 3

Преобразование опорного плана Пусть дана каноническая ЗЛП Z(Х) = Σсj хj → max G Преобразование опорного плана Пусть дана каноническая ЗЛП Z(Х) = Σсj хj → max G A 1 x 1 +A 2 x 2 +…+ Amxm +…+ Anxn = B хj ≥ 0 j = 1, 2, …, n А 1 , А 2 , …, Аm , …, Аn – векторы условий В – вектор ограничений

Преобразование опорного плана Пусть дан опорный план Хо =(х1 ох2 о. . . х®о. Преобразование опорного плана Пусть дан опорный план Хо =(х1 ох2 о. . . х®о. . хmо 0… 0) Базис плана Б(Хо)={Аs 1; Аs 2; …; Аsr; …; Аsm } { X(Θ) = (Xo - Θαk) ; Θ } Є G αk =(α 1 k; α 2 k; … αrk; …αmk ) Аs 1 α 1 k +Аs 2 α 2 k+…+Аsrαrk+…Аsmαmk = Ak Аs 1 х1 о +Аs 2 х2 о+…+Аsrхsr+…+Аsmхmo +Am+1 0+…+An 0 =В Аs 1 α 1 k +Аs 2 α 2 k+…+Аsrαrk+…+Аsmαmk – Ak = 0

Преобразование опорного плана (1) As 1 x 1 o+As 2 x 2 o+…+Asrxro …+A Преобразование опорного плана (1) As 1 x 1 o+As 2 x 2 o+…+Asrxro …+A smxmo + ΣAj 0 = B (2) (As 1α 1 k+As 2α 2 k+…+Asrαrk …+A smαmk - Ak = 0)Θ Аs 1(x 1 o-Θα 1 k)+ …+ Asr(xro-Θαrk)+…+AkΘ = B (xio- Θαik) ≥ 0 i=1, 2, …, m и Θ≥ 0 Θ≤ выберем Θо = min αik>0 =

Что при этом произойдет с Z(X)? Подставим новый план { X(Θo) = (Xo - Что при этом произойдет с Z(X)? Подставим новый план { X(Θo) = (Xo - Θoαk) ; Θo } Є G в Z(X) ! Z(X(Θ)) = Σcj(xj(Θo )) = Z(X(Θo))= Z(Xo) – ΘΔk , где Δk =

Признак оптимальности плана Теорема Если для плана Хо выполняется условие Δj ≥ 0 при Признак оптимальности плана Теорема Если для плана Хо выполняется условие Δj ≥ 0 при j = 1, 2, …, n , то план Хо= Х* т. е. оптимальный план. Следствие Если существует Δк < 0 и при этом все αik≤ 0 , то ЗЛП не имеет решения из-за неограниченности линейной формы на множестве планов. (Z(X) → ∞)

Основоположники Л. В. Канторович (1912 -1986) академик РАН, Нобелевский лауреат. Российский математик Джорж Данциг(1914 Основоположники Л. В. Канторович (1912 -1986) академик РАН, Нобелевский лауреат. Российский математик Джорж Данциг(1914 -2005) американский математик

Блок-схема алгоритма симплексметода 1. Определение 1 Метод искусственного базиса первоначального опорного плана Исследование плана Блок-схема алгоритма симплексметода 1. Определение 1 Метод искусственного базиса первоначального опорного плана Исследование плана на оптимальность 2 Вычисление оценки Δj =

Δj ≥ 0 j=1, 2, . . . n Δj X = X* Δj Δj ≥ 0 j=1, 2, . . . n Δj X = X* Δj < 0 αij Δk<0 αik≤ 0 Z(X) → ∞ Δk<0 αik>0 Выбор вектора вводимого в базис 3

Выбор вектора выводимого из базиса 4 5 Пересчет таблицы Контроль вычислений По формулам Жордана. Выбор вектора выводимого из базиса 4 5 Пересчет таблицы Контроль вычислений По формулам Жордана. Гаусса 6 В блок 2

Таблица МПУП (симплексная таблица) Б(Х) Csi Ao С 1 С 2 C 3 Ск Таблица МПУП (симплексная таблица) Б(Х) Csi Ao С 1 С 2 C 3 Ск Сn А 1 А 2 A 3 Ак Аn As 1 cs 1 x 1 o α 11 1 0 α 1 k α 1 n As 2 cs 2 x 2 o α 21 0 1 α 2 k Asr αro 0 0 αrk αrn Asm csm xmo αmo 0 0 αmk<0 αmn Δ 1>0 0 0 Δk<0 Δn>0 х10 х20 α 2 n csr Θ Δk xro Xro αrk α 1 к α 2 к

Определение первоначального опорного плана Если ЗЛП задана в симметричном виде Z(х) →max АХ ≤ Определение первоначального опорного плана Если ЗЛП задана в симметричном виде Z(х) →max АХ ≤ В X ≥ 0 Если все компоненты вектора В положителны, тогда в каждое уравнение вводится дополнительная переменная и первоначальный план очевиден.

Определение первоначального опорного плана Если ЗЛП задана в каноническом виде Z(х) →max АХ = Определение первоначального опорного плана Если ЗЛП задана в каноническом виде Z(х) →max АХ = В X ≥ 0 Тогда рассматривают вспомогательную задачу с искусственным базисом, который получается путем введения в каждое уравнение искусственной переменной.

Теорема о решении вспомогательной задачи Если в оптимальном плане вспомогательной задачи не содержатся искусственные Теорема о решении вспомогательной задачи Если в оптимальном плане вспомогательной задачи не содержатся искусственные переменные , то полученный оптимальный план является первоначальным опорным планом исходной задачи. Если оптимальное решение вспомогательной задачи содержит искусственную переменную, то исходная задача неразрешима из за противоречивости множества планов исходной задачи.

ПРИМЕР Исходная Z(X) = 3 x 1+x 2 +2 x 3 →max x 1 ПРИМЕР Исходная Z(X) = 3 x 1+x 2 +2 x 3 →max x 1 + x 2 + x 3 = 3 Gиз x 1 + x 2 ≤ 1 x 1 – x 2 + x 3 ≥ 1 Gвз xj ≥ 0 j=1, 2, 3 Вспомогательная Z(X)= -x 4 – x 7→max x 1 + x 2 + x 3 + x 4 = 3 x 1 + x 2 + x 5 =1 x 1 – x 2 + x 3 – x 6 + x 7 = 1 xj ≥ 0 j=1, 2, 3, …, 7 Xo = (0, 0, 0, 3, 1, 0, 1)

Двойственность в линейном программировании Исходная задача Двойственная задача yi ≥ 0 i = 1, Двойственность в линейном программировании Исходная задача Двойственная задача yi ≥ 0 i = 1, 2, …, m 1 yi не ограничены по знаку i = m 1 +1, m 1 +2, …, m Хj ≥ 0 j = 1, 2, …, n 1

Свойства пары взаимно двойственных задач 1. Z(x) ≤ Ž(y) для любых X Є Gи. Свойства пары взаимно двойственных задач 1. Z(x) ≤ Ž(y) для любых X Є Gи. з. и У Є Gд. з. 2. Если для Xо Є Gи. з. и Уо Є Gд. з Z(xо) = Ž(yо), то Хо = Х*, а Уо = У*. 3. Если Ž(y) → -∞, то Gи. з = О Замечание: В обратную сторону свойство 3 не всегда выполняется

Теоремы двойственности Первая теорема двойственности. Если одна из пары двойственных задач разрешима, то разрешима Теоремы двойственности Первая теорема двойственности. Если одна из пары двойственных задач разрешима, то разрешима и двойственная к ней, при этом Z(Х*) = Ž(У*). Если одна из пары двойственных задач не имеет решения, то неразрешима и двойственная к ней.

Теоремы двойственности Вторая теорема двойственности: для того чтобы планы задач ХЄGиз и УЄGдз были Теоремы двойственности Вторая теорема двойственности: для того чтобы планы задач ХЄGиз и УЄGдз были оптимальными планами соответствующих задач, необходимо и достаточно, чтобы выполнялись следующие равенства: х*j ( ; y*i( .

Условия дополнительной нежёсткости Если строчное условие i исходной задачи выполняется как неравенство Σаijx*j< bi Условия дополнительной нежёсткости Если строчное условие i исходной задачи выполняется как неравенство Σаijx*j< bi , то переменная у*i = 0. Если строчное условие i исходной задачи выполняется как равенство Σаijx*j= bi , то переменная у*i > 0.

Условия дополнительной нежёсткости Если столбцовое условие j исходной задачи выполняется как неравенство хj>0, то Условия дополнительной нежёсткости Если столбцовое условие j исходной задачи выполняется как неравенство хj>0, то условие j двойственной выполняется как равенство Σаij у*i= сj Если столбцовое условие j исходной задачи выполняется как равенство хj=0, то условие j двойственной выполняется как неравенство Σаij у*I > сj

Теоремы двойственности Рассмотрим пару двойственных задач yi ≥ 0 Хj ≥ 0 i = Теоремы двойственности Рассмотрим пару двойственных задач yi ≥ 0 Хj ≥ 0 i = 1, 2, …, m j = 1, 2, …, n Введем функцию М(В) = max{Z(X)} XЄG BЄB из

Теоремы двойственности Теорема об оптимальных оценках (Третья теорема двойственности) Если невырожденная задача линейного программирования Теоремы двойственности Теорема об оптимальных оценках (Третья теорема двойственности) Если невырожденная задача линейного программирования разрешима, ∂М(В) / ∂bi = yi* Замечание: ΔВ велико, то теорема не имеет применения – область устойчивости оценок А-1ΔВ ≥ 0

Транспортная задача (матричная форма) bj аi a 1 a 2 … am b 1 Транспортная задача (матричная форма) bj аi a 1 a 2 … am b 1 b 2 c 11 x 11 … … x 12 c 22 cm 2 xm 2 c 2 n x 2 n … cm 1 xm 1 … x 22 … c 1 n x 1 n c 21 x 21 bn … … … cmn xmn

Транспортная задача (сетевая форма) Дана транспортная сеть 15 9 10 21 12 7 31 Транспортная задача (сетевая форма) Дана транспортная сеть 15 9 10 21 12 7 31 3 8 19 13 32 11 6 34 5 16 Поставщики Потребители

Математическая модель Т-задачи (матричная форма) Z(X) = xij ≥ 0 i=1, 2, …, m Математическая модель Т-задачи (матричная форма) Z(X) = xij ≥ 0 i=1, 2, …, m j=1, 2, …, n

Свойства Т - задачи Теорема: Для того чтобы Т-задача была разрешима необходимо о достаточно, Свойства Т - задачи Теорема: Для того чтобы Т-задача была разрешима необходимо о достаточно, чтобы выполнялось условие баланса Σ аі = Σ bj i j Теорема: Ранг системы условий (ограничений ) Т – задачи равен m+n-1

Методы построения первоначального опорного плана Т-задачи 1. Метод северо-западного угла. 2. Метод минимального элемента. Методы построения первоначального опорного плана Т-задачи 1. Метод северо-западного угла. 2. Метод минимального элемента. 3. Метод Фогеля.

Метод северо-западного угла bj аi 20 15 15 15 26 min(15; 20) min(15; 5) Метод северо-западного угла bj аi 20 15 15 15 26 min(15; 20) min(15; 5) X 11= 15 X 12= 5 - - min(10; 17) min(15; 7) 17 - X 22= 10 X 23= 7 - min(8; 34) 34 - - min(25; 26) X 11= 8 X 11= 26

Метод минимального элемента bj аi 15 15 15 26 20 5 4 2 3 Метод минимального элемента bj аi 15 15 15 26 20 5 4 2 3 17 7 3 6 2 34 4 8 5 4

Метод минимального элемента min (aij) = a 13 = 2 => min(15; 20) = Метод минимального элемента min (aij) = a 13 = 2 => min(15; 20) = x 13 = 15 min (aij) = a 13 = 2

Цепочки и циклы Если в позиции (ij) имеется перевозка хij > 0, то позиция Цепочки и циклы Если в позиции (ij) имеется перевозка хij > 0, то позиция называется отмеченной. Последовательность отмеченных позиций, в которой из каждой строки и каждого столбца последовательно включены две и только две отмеченные позиции называется цепочкой Цепочка, в которой первая позиция совпадает с последней называется циклом

Цепочки и циклы 15 bj аi 20 15 5 15 17 15 4 2 Цепочки и циклы 15 bj аi 20 15 5 15 17 15 4 2 7 4 2 3 6 2 5 4 3 3 13 34 26 4 8 8 26

Теорема Теорема