Сильна двоїстість

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Сильна двоїстість — випадок у математичній оптимізації, коли пряма і двоїсті цільові значення рівні. Існує подібний випадок, слабка двоїстість, коли пряма задача має оптимальне значення не менше за двоїсту, тобто, розрив двоїстості більший або рівний нулю.

Лінійне програмування[ред. | ред. код]

Пряма задача Двоїста задача
максимізувати мінімізувати
за умов за умов

Теорема про сильну двоїстість: Якщо пряма і двоїсті задачі розв'язні, тоді оптимальні точки задовольняють .

Доведення: Розглянемо таке рівняння

Якщо існують , що задовольняють цьому рівнянню, тоді , отже допустимий розв'язок, і , отже також допустимий розв'язок. Тоді оскільки та за принцип слабкої двоїстості маємо, що і на цьому доведення закінчено. Інакше, згідно з наслідком леми Фаркаша, існує вектор , що задовольняє

і

З цього маємо таке

  1. і
  2. , тобто

Якщо , тоді можна помножити вектор на і вважати, що . Однак, тоді пункти 1 і 2 показують, що і допустимі для прямої і двоїстої задач відповідно, а пункт 3 суперечить слабкій двоїстості.

Інакше, якщо , то з пункту 3 випливає, що або , або . У першому випадку двоїста програма необмежена, що суперечить розв'язності прямої. Це можна побачити так: припустимо, що  — допустимий розв'язок двоїстої програми, оберемо довільне і розглянемо . Ця сума також є допустимим розв'язком двоїстої програми, оскільки і і можна зробити як завгодно великим вибравши відповідне . Якщо , то аналогічні доводи показують, що пряма задача необмежена, що також дає суперечність.

Див. також[ред. | ред. код]