Uma prova intuitiva / informal para LP Duality?


19

Qual seria uma boa prova informal / intuitiva para 'acertar o ponto inicial' sobre a dualidade do LP? Qual a melhor maneira de mostrar que a função objetivo minimizada é realmente o mínimo com uma maneira intuitiva de entender o limite?

A maneira como fui ensinado Dualidade apenas levou a um entendimento que tenho certeza de que é compartilhado por MUITAS pessoas que conheço: para cada problema de minimização correspondente, existe um problema de maximização equivalente que pode ser derivado pela inversão das restrições de desigualdade. Período. Essa "conclusão" da dualidade é o que parece persistir, mas não "por que isso é assim" (ou seja, como / por que existe um limite para a solução ótima).

Existe uma maneira de brincar com as desigualdades apenas para 'mostrar' o limite inferior / superior do ideal, o que poderia ser uma motivação para a prova?

Eu examinei o livro de Chvatal e alguns outros, mas não encontrei nada que pudesse ser entendido por noobs absolutos no LP. O mais próximo que cheguei foi do livro de algoritmos de Vazirani, onde ele fala sobre 'multiplicar as desigualdades por alguns números mágicos que mostram o limite' - não sei como reproduzir o efeito para um LP arbitrário.


5
Em esta resposta math.SE eu passar por um exemplo passo-a-passo de onde vem a dupla de - e por que - para um problema que tem a maioria das diferentes possibilidades que podem surgir com um LP. Talvez isso possa ajudar?
Mike Spivey

2
Não sei por que você acha que o argumento de Vazirani não funciona para um LP geral. Pessoalmente, gosto dessa explicação o melhor de tudo.
Suresh Venkat

1
Você está perguntando sobre a dualidade fraca ou a dualidade forte?
Tsuyoshi Ito 24/01

7
Você pode obter intuição geométrica visualizando (em 2d, por exemplo) o que significa obter uma combinação linear de restrições. Por exemplo, desenhe as restrições e no plano. Combinações lineares dessas restrições fornecem para qualquer . Desenhe isso para vê-lo. Geralmente, a combinação linear de restrições fornece os meios-espaços de suporte do poliedro. Agora pergunte: por que um desses meios-espaços de apoio é sempre suficiente, por si só, para limitar o custo? Se você vê, é uma forte dualidade. y 1 a x + b y a + b a , b 0x1y1ax+bya+ba,b0
Neal Young

@MikeSpivey - Eu desejo o seu comentário foi uma resposta :)
PhD

Respostas:


19

Por desejo do OP, aqui está a resposta math.SE que eu vinculo no meu comentário acima.


Talvez valha a pena discutir de onde vem o dual em um problema de exemplo. Isso levará um tempo, mas espero que o dual não pareça tão misterioso quando terminarmos.

Suponha que você tenha um problema primordial da seguinte maneira.

Primal={max    5x16x2   s.t.    2x1x2=1              x1+3x29    x10}

Agora, suponha que queremos usar as restrições do primal como uma maneira de encontrar um limite superior no valor ótimo do primal. Se multiplicarmos a primeira restrição por , a segunda por e as adicionarmos, obteremos para o lado esquerdo e para o lado direito. Como a primeira restrição é uma igualdade e a segunda é uma desigualdade, isso implica Mas, como , também é verdade que e, portanto, Portanto, é um limite superior do valor ótimo do problema primordial.919(2x1x2)+1(x1+3x2)9(1)+1(9)
19x16x218.
x105x119x1
5x16x219x16x218.
18

Certamente, podemos fazer melhor que isso, no entanto. Em vez de apenas adivinhar e como multiplicadores, vamos deixá-los serem variáveis. Portanto, estamos procurando multiplicadores e para forçar91y1y2

5x16x2y1(2x1x2)+y2(x1+3x2)y1(1)+y2(9).

Agora, para que esse par de desigualdades ocorra, o que tem de ser verdade sobre e ? Vamos pegar as duas desigualdades, uma de cada vez.y1y2


A primeira desigualdade :5x16x2y1(2x1x2)+y2(x1+3x2)

Temos que rastrear os coeficientes das variáveis e separadamente. Primeiro, precisamos que o coeficiente total no lado direito seja pelo menos . Obter exatamente seria ótimo, mas, como , algo maior que também satisfaria a desigualdade de . Matematicamente falando, isso significa que precisamos de .x1x2x155x105x12y1+y25

Por outro lado, para garantir a desigualdade para a variável , precisamos que o coeficiente total no lado direito seja exatamente . Como pode ser positivo, não podemos ir abaixo de , e como pode ser negativo, não podemos ir acima de (como o valor negativo de mudaria a direção da desigualdade). Portanto, para que a primeira desigualdade funcione para a variável , precisamos ter .x2x26x26x26x2x2y1+3y2=6


A segunda desigualdade :y1(2x1x2)+y2(x1+3x2)y1(1)+y2(9)

Aqui temos que rastrear as variáveis e separadamente. As variáveis vêm da primeira restrição, que é uma restrição de igualdade. Não importa se é positivo ou negativo, a restrição de igualdade ainda é válida. Assim, é irrestrito no sinal. No entanto, a variável vem da segunda restrição, que é menor ou igual à restrição. Se multiplicássemos a segunda restrição por um número negativo que mudaria de direção e a alteraria para uma restrição maior que ou igual. Para manter nosso objetivo de limitar o objetivo primordial, não podemos deixar isso acontecer. Então oy1y2y1y1y1y2y2A variável não pode ser negativa. Portanto, devemos ter .y20

Finalmente, queremos tornar o lado direito da segunda desigualdade o menor possível, pois queremos o limite superior mais rígido possível no objetivo primordial. Então, queremos minimizar .y1+9y2


Juntando todas essas restrições em e , descobrimos que o problema de usar as restrições do primal para encontrar o melhor limite superior do objetivo primordial ideal implica resolver o seguinte programa linear:y1y2

Minimize y1+9y2subject to 2y1+y25y1+3y2=6y20.

E esse é o dual.


Provavelmente vale a pena resumir as implicações desse argumento para todas as formas possíveis do primal e do dual. A tabela a seguir é retirada da p. 214 de Introdução à Pesquisa Operacional , 8ª edição, de Hillier e Lieberman. Eles se referem a isso como o método SOB, em que SOB significa Sensível, Ímpar ou Bizarro, dependendo da probabilidade de alguém encontrar essa restrição específica ou restrição variável em um problema de maximização ou minimização.

             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

7

Ao elaborar a resposta de Mike e o comentário de Vazirani, você obtém o dual considerando a forma geral de uma prova de otimização da solução para o problema original. Suponha que você tenha um problema de maximização, dadas algumas desigualdades lineares, e sem perda de generalidade, suponha que você esteja tentando maximizar a variável . Dada uma solução em que , como sabemos que é ideal? Uma maneira é tentar obter um limite para tomando combinações lineares das desigualdades lineares. Algumas combinações lineares fornecem limites da forma , e você está tentando obter o melhor (mínimo) possível. A dualidade fraca afirma quexx=BxxCCBminC, o que é óbvio por definição. Estados forte dualidade de que quando é finito, então . Isso significa que, se o máximo é , existe uma "razão" que você não pode ultrapassar , que também serve como prova de otimização.BB=minCBB

Este ponto de vista é realmente útil às vezes. Seja uma função de conjunto ( pega um conjunto e gera um número real) e são dois conjuntos. Suponha que você esteja tentando derivar uma desigualdade de várias desigualdades relacionadas à função (esse é um exemplo da vida real). Você escreve um programa linear no qual os valores de são as variáveis, é uma restrição e o objetivo é minimizar . A solução para este programa é (vamos assumir que é o melhor possível), e a solução para o dual fornece uma prova def S , S f ( S ) ( 1 - 1 / e ) f ( O ) f f f ( S ) = 1 F ( S ) min f ( S ) = 1 - 1 / E 1 - 1 / e f ( S ) 1 - 1 / effS,Of(S)(11/e)f(O)fff(O)=1f(S)minf(S)=11/e11/ef(S)11/e .

Isso deixa em aberto a questão de por que a dualidade forte realmente se mantém. Existem duas provas desse fato para a programação linear, uma envolvendo o algoritmo simplex, o outro lema de Farkas. O lema de Farkas é provavelmente a maneira "correta" de entender a situação, reduzindo tudo a algum fato geométrico intuitivo. No entanto, confesso que essa intuição passa por minha cabeça.

Em situações mais gerais (digamos programação semidefinida), é necessário usar as condições mais gerais de Karush-Kuhn-Tucker (uma forma de multiplicadores de Lagrange) para obter a dupla e as condições para uma forte dualidade. Isso é tratado em textos sobre otimização não linear ou convexa.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.