За бажанням ОП, ось відповідь math.SE, на яку я посилаюсь у своєму коментарі вище.
Можливо, варто поговорити, звідки походить дуал на прикладі проблеми. Це займе певний час, але, сподіваємось, дуал не здасться настільки загадковим, коли ми закінчимо.
Припустимо, з первісною проблемою є наступне.
Пr i m a l = ⎧⎩⎨⎪⎪⎪⎪⎪⎪макс 5 х 1- 6 х2 с . т . 2 х 1- х2= 1 х1+ 3 х2≤ 9 х1≥ 0⎫⎭⎬⎪⎪⎪⎪⎪⎪
Тепер, припустимо, ми хочемо використати обмеження примату як спосіб знайти верхню межу оптимального значення прима. Якщо помножити перше обмеження на , друге обмеження на , і скласти їх разом, отримаємо для лівої сторони та для правого боку. Оскільки перше обмеження - це рівність, а друге - нерівність, то це означає
Але оскільки , то також вірно, що , і так
Отже, є верхньою межею щодо оптимального значення первинної задачі.
1 9 ( 2 x 1 - x 2 ) + 1 ( x 1 + 3 x 2 ) 9 ( 1 ) + 1 ( 9 ) 19 x 1 - 6 x 2 ≤ 18. x 1 ≥ 0 5 x 1 ≤ 19 x 1 5 x 1 - 6 x 2 ≤ 19 x 1919 ( 2 х1- х2) + 1 ( х1+ 3 х2)9 ( 1 ) + 1 ( 9 )19 х1- 6 х2≤18.
x1≥05x1≤19x1185x1−6x2≤19x1−6x2≤18.
18
Звичайно, ми можемо зробити і краще, ніж це. Замість того, щоб просто вгадувати і як множники, давайте нехай вони будуть змінними. Таким чином, ми шукаємо множників і щоб змусити1 y 1 y 2 5 x 1 - 6 x 2 ≤ y 1 ( 2 x 1 - x 2 ) + y 2 ( x 1 + 3 x 2 ) ≤ y 1 ( 1 ) + y 2 ( 9 ) .91y1y2
5x1−6x2≤y1(2x1−x2)+y2(x1+3x2)≤y1(1)+y2(9).
Тепер, щоб ця пара нерівностей була дотримана, що має бути правдою щодо та ? Візьмемо по черзі дві нерівності.y 2у1у2
Перша нерівність :5 х1- 6 х2≤ y1( 2 х1- х2) + у2( х1+ 3 х2)
Ми повинні відстежувати коефіцієнти змінних та окремо. По-перше, нам потрібен загальний коефіцієнт праворуч, принаймні, . Отримати точно було б чудово, але оскільки , все, що перевищує , також задовольнило б нерівність для . Математично кажучи, це означає, що нам потрібно .x 2 x 1 5 5 x 1 ≥ 0 5 x 1 2 y 1 + y 2 ≥ 5х1х2х155х1≥ 05х12 років1+ у2≥ 5
З іншого боку, для забезпечення нерівності для змінної нам потрібен загальний коефіцієнт в правій частині дорівнює . Оскільки може бути позитивним, ми не можемо опуститись нижче ніж , а оскільки може бути негативним, ми не можемо піднятись вище (оскільки від'ємне значення для переверне напрямок нерівності). Отже, для першої нерівності, яка працює для змінної , нам доведеться мати .х2х2- 6х2- 6х2- 6х2х2- у1+ 3 у2= - 6
Друга нерівність :
у1( 2 х1- х2) + у2( х1+ 3 х2) ≤ y1( 1 ) + у2( 9 )
Тут ми повинні відслідковувати змінні та окремо. У змінні відбуваються з першого обмеження, що є стримуючим фактором рівності. Не має значення, якщо є позитивним чи негативним, обмеження рівності все ще виконується. Таким чином, не обмежений у знаку. Однак змінна походить від другого обмеження, яке є меншим або рівним обмеженням. Якби ми помножили друге обмеження на від’ємне число, яке переверне його напрямок і змінить його на обмеження, що перевищує або рівне. Щоб дотримуватися нашої мети - верхньої межі первинної мети, ми не можемо цього дозволити. Отже,у1у2у1у1у1у2у2змінна не може бути негативною. Таким чином, у нас повинно бути .у2≥ 0
Нарешті, ми хочемо зробити праву частину другої нерівності якомога меншою, оскільки ми хочемо максимально жорсткої верхньої межі щодо первинної мети. Таким чином, ми хочемо мінімізувати .у1+ 9 у2
Поклавши всі ці обмеження на та разом, ми виявимо, що проблема використання обмежень прималу для пошуку найкращої верхньої межі оптимальної первинної мети тягне за собою вирішення наступної лінійної програми:у1у2
Мінімізуйте у1+ 9 у2на тему 2 років1+ у2- у1+ 3 у2у2≥ 5= - 6≥ 0.
І це подвійне.
Напевно, варто узагальнити наслідки цього аргументу для всіх можливих форм первинного та подвійного. Наступна таблиця взята із с. 214
Введення в експлуатаційні дослідження , 8-е видання, Гільєр та Ліберман. Вони посилаються на це як на метод SOB, де SOB розшифровується як Senzible, Odd або Bizarre, залежно від того, наскільки вірогідним виявиться таке обмеження чи змінне обмеження в проблемі максимізації чи мінімізації.
Primal Problem Dual Problem
(or Dual Problem) (or Primal Problem)
Maximization Minimization
Sensible <= constraint paired with nonnegative variable
Odd = constraint paired with unconstrained variable
Bizarre >= constraint paired with nonpositive variable
Sensible nonnegative variable paired with >= constraint
Odd unconstrained variable paired with = constraint
Bizarre nonpositive variable paired with <= constraint