Solução de um problema de Programação Inteira - Método Branch and Bound
-
Upload
jorge-henrique-angelim -
Category
Documents
-
view
215 -
download
0
Transcript of Solução de um problema de Programação Inteira - Método Branch and Bound
-
7/24/2019 Soluo de um problema de Programao Inteira - Mtodo Branch and Bound
1/9
UNIVERSIDADE FEDERAL DO PARInstituto de Tecnologia
Programa de Ps-graduao em Engenharia Eltrica
OTIMIZAO DE SISTEMAS
Trabalho 1Programao Inteira
Jorge Henrique Angelim
Yasmim Corra
Zaire Souza
BELMPA2015
-
7/24/2019 Soluo de um problema de Programao Inteira - Mtodo Branch and Bound
2/9
INTRODUO
O presente relatrio, contm os passos e os resultados obtidos a partir da resoluo do
trabalho 1 de programao inteira, tipo 2, cujo problema :
() = 3 + 15
. . 10 + 2 75
6 + 7 60
, 0
OBJETIVOSEncontrar a soluo tima do problema relaxado (sem a condio de integralidade);
Encontrar a soluo tima inteira obtida pelo mtodoBranch and Bound;
Obter a soluo em rvore do problema, onde so mostrados os subproblemas resultados do
mtodo;
Obter a indicao grfica dos subespaos e dos subproblemas construdos ao longo do
processo;
Todos esses itens esto respondidos no decorrer desse relatrio.
MATERIAIS UTILZADOS
Neste trabalho, utilizamos o suplementosolverdisponvel no Microsoft Excel, que faz
parte de um conjunto de comandos algumas vezes chamado de ferramentas de teste de
hipteses. Com o Solver voc pode localizar um valor ideal de (mximo ou mnimo) para uma
frmula em uma clulachamada de clula do objetivo sujeitos a restries ou limites nos
valores de outras clulas frmulas em uma planilha. Neste trabalho, utilizamos esta ferramentapara a obteno das solues timas dos problemas de programao linear que fazem parte do
mtodo aplicado.
Os grficos foram obtidos atravs do programa Graph, disponvel em
http://www.padowan.dk/graph/.
-
7/24/2019 Soluo de um problema de Programao Inteira - Mtodo Branch and Bound
3/9
1 SOLUO TIMA CONTNUA
A soluo tima contnua obtida ao se relaxar a condio de integralidade. Nesse caso,
o problema de PLI se torna um problema de programao linear (PL). Nesta primeira etapa,
obtivemos a soluo tima do problema utilizando o mtodo simplex passo a passo e,
posteriormente, validamos o resultado utilizando o suplemento SOLVER, disponvel no
Microsoft Excel.
Abaixo, a resoluo do problema de PL.
x1 x2 x3 x4 b
L 3 15 0 0 0
x3 10 2 1 0 75
x4 6 7 0 1 60
x1 x2 x3 x4 b
L -9,85 0 0 -2,14 -128,57
x3 8,28 0 1 -0,28 57,85
x2 0,85 1 0 0,14 8,57
A soluo tima contnua obtida ao relaxar a condio de integralidade foi:
x1= 0;
x2= 8,57;
F(x) = 128,57
-
7/24/2019 Soluo de um problema de Programao Inteira - Mtodo Branch and Bound
4/9
Figura 1Grfico da soluo contnua do problema.
2 SOLUO TIMA INTEIRA PELO MTODO BRANCH AND
BOUND.
O algoritmo Branch & Bound foi utilizado para obter uma soluo tima inteira,
atravs do software Excel, utilizando o Solver, fazendo passo-a-passo cada restrio at
encontrar o ponto timo do problema de maximizao.
A soluo tima contnua ( = 0, = 8,57 () = 128,57) no admissvel
para o problema inteiro, pois x2viola esta condio. Pelo mtodo B&B, a busca por solues
inteiras viveis feita atravs da adio de novas restries ao problema original, reduzindo o
espao de solues admissveis e conduzindo ao ponto timo. Esta reduo do espao de
solues no pode resultar na melhoria da funo objetivo, de modo que o valor encontrado
para f(x) corresponde ao limite superior.
Na etapa de partio (Branch) da resoluo, pesquisamos a soluo em doissubespaos
8 9
Subproblema (1) Subproblema (2)
() = 3 + 15
. 10 + 2 75
6 + 7 60
, 0
() = 3 + 15
. 10 + 2 75
6 + 7 60
, 0
;
. -
. . . . . . . . . . .
-
7/24/2019 Soluo de um problema de Programao Inteira - Mtodo Branch and Bound
5/9
Dessa forma, a soluo no admissvel = 8,57 excluda da resoluo. As solues
timas dos dois novos subproblemas criados pela adio das restries, obtidas pelo Solver,
esto mostradas a seguir.
A soluo tima do subproblema (2) no vivel. Por outro lado, a soluo do
subproblema (1) no admissvel para o problema de PI, mas como o valor de () menor
que o limite superior, exploramos esse subespao. A soluo grfica do subproblema (1) est
mostrada na figura 2, onde pode ser observado que o espao admissvel limitado em 8.
Figura 2Grfico da soluo do subproblema (1).
Novamente, a partir do subproblema (2), dois novos subproblemas so criados:
0 1
= ; = = = =
= -
- - . . . . . . . . . . .
-
-
= 0;
= 8,57;
() = 128,57
= 0,667;
= 8;
() = 122
8 9(1)
(2)
-
7/24/2019 Soluo de um problema de Programao Inteira - Mtodo Branch and Bound
6/9
Subproblema (3) Subproblema (4)
() = 3 + 15
. 10 + 2 75
6 + 7 60
8
, 0
() = 3 + 15
. 10 + 2 75
6 + 7 60
8
, 0
Observe que as restries 0 e 0 do subproblema (3) levam = 0.As
solues timas obtidas foram:
Figura 3Grfico da soluo do subproblema (4).
O subproblema (3) conduz a uma soluo admissvel para o problema de PI, mas no
h garantias de que esse seja o valor timo do problema. Fazemos ento este valor de ()o
;
. -
. . . . . . . . . . .
(3)
= 0,667;
= 8;
() = 122
0 1
(4)
= 0;
= 8;
() = 120
= 1;
= 7,71;
() = 118,71
-
7/24/2019 Soluo de um problema de Programao Inteira - Mtodo Branch and Bound
7/9
limite inferior para a funo objetivo, pois no ser possvel obter uma soluo inteira melhor
num espao onde a soluo continua apresente valor de ()inferior ou igual a 120.
A soluo tima do subproblema (4), por sua vez, no admissvel para o problema de
PI, no entanto, () tem valor superior ao limite inferior fixado, sendo necessrio explorar
esse subespao. Os dois novos subproblemas descendentes de (4) so:
7e 8
Subproblema (5) Subproblema (6)
() = 3 + 15
. 10 + 2 75
6 + 7 60
8 1
, 0
() = 3 + 15
. 10 + 2 75
6 + 7 60
8 1
, 0
No subproblema (5), a restrio 8 redundante pois 7.
No subproblema (6), as restries 8e 8impem = 8.
(7)
= 1;
= 7,71;
() = 118,71
7 8(8)
= 1,83;
= 7;
() = 110,5
-
7/24/2019 Soluo de um problema de Programao Inteira - Mtodo Branch and Bound
8/9
Figura 4Grfico da soluo do subproblema (7).
Do subproblema (7), obtemos uma soluo que no admissvel para o problema de PI.
Como o valor de () = 110,5 menor que o limite inferior adotado para soluo inteira, no
ser possvel obter soluo melhor que a obtida anteriormente (( ) = 120).
Portanto, no havendo mais espao para analisar, a soluo tima do problema de
programao inteira :
;
. -
. . . . . . . . . . .
= 0;
= 8;
() = 120
-
7/24/2019 Soluo de um problema de Programao Inteira - Mtodo Branch and Bound
9/9
3 DIAGRAMA EM RVORE DA SOLUO DO PROBLEMA
MTODO BRANCH AND BOUND
= 0;
= 8,57;
() = 128,57
= 0,667;
= 8;
() = 122
8 9(1) (2)
(3)
0 1(4)
= 1;
= 7,71;
() = 118,71
= 0;
= 8;
() = 120
Soluo tima!
(7)
7 8(8)
= 1,83;
= 7;
() = 110,5