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.
fonte
Respostas:
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.
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.
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çar9 1 y1 y2
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.y1 y2
A primeira desigualdade :5x1−6x2≤y1(2x1−x2)+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 .x1 x2 x1 5 5 x1≥0 5 x1 2y1+y2≥5
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 .x2 x2 −6 x2 −6 x2 −6 x2 x2 −y1+3y2=−6
A segunda desigualdade :
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 oy1 y2 y1 y1 y1 y2 y2 A variável não pode ser negativa. Portanto, devemos ter .y2≥0
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:y1 y2
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.
fonte
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 quex x=B x x≤C C B≤minC , 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.B B=minC B B
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 / ef f S,O f(S)≥(1−1/e)f(O) f f f(O)=1 f(S) minf(S)=1−1/e 1−1/e f(S)≥1−1/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.
fonte