• Nenhum resultado encontrado

Publicações do PESC Um Algoritmo Eficiente para Encontrar Soluções Aproximadas de Problemas de Programação Bivalente (0-1), Utilizando Dualidade em Programação Inteira

N/A
N/A
Protected

Academic year: 2021

Share "Publicações do PESC Um Algoritmo Eficiente para Encontrar Soluções Aproximadas de Problemas de Programação Bivalente (0-1), Utilizando Dualidade em Programação Inteira"

Copied!
121
0
0

Texto

(1)

UM ALGORITMO E F I C I E N T E PARA ENCONTRAR SOLUGÕES APROXIMADAS DE PROBLEMAS DE PROGRAMAÇÃO BIVALENTE ( O

-

I), U T I L I Z A N D O

DUALIDADE EM PROGRAMAÇÃO I N T E I R A

-

~ é l i x E d u a r d o V a c a O b a n d o

T E S E SUBMETIDA AO CORPO DOCENTE DA COORDENAÇÃO DOS PROGF&MAS DE PÕS-GRABUAÇÃO DE ENGENHARIA DA UNIVERSIDADE FEDERAL DO R I O DE JANEIRO COMO PARTE DOS ~ Q U I S I T O S NECESSARIOS PARA A OBTENÇÃO DO GRAU DE DOUTOR EM CIÉNCIAS ( D e S c . )

A p r o v a d a por: P r o f . N e l s o n M a c u l a n d f l h o ( P r e s i d e n t e ) P r o f .

cdrlos

A l b e o N u n e s q o s è n z a

/

r

Prof Jack S c h e c h t m a n P r o f . ~ l a u d i o T . B o r n s t e i n R I O DE J A N E I R O , R J

-

B R A S I L AGOSTO DE L 9 7 8

(2)

VACA OBANDO, FELIX EDUARDO

Um Algoritmo E f i c i e n t e p a r a E n c o n t r a r ~ o i u ç Q e s Aproximadas de Problemas d e ~ r o g r m a ç ã o B i v a l e n t e

( 0 - l ) , U t i l i z a n d o ~ u a l i d a d e e m ~ r o g r a m a ç ã o I n t e i - r a . I ~ i o d e ~ a n e i r o

1

1978

I X , 1lOp. 29,7cm (COPPE-UFRJ, D.Sc., Engenharia de S i s t e m a s e computação, 1978)

Tese

-

Univ. Fed. R i 0 de J a n e i r o , Fãc. Engenha

-

r i a

1. ~ r o g r a m a ç ã o ~ a t e m â t i s a I . COPPE/UFRJ 11.

~i

-

t u 1 0 ( s g r i e )

.

(3)

ii

Curriculum V i t a e

F é l i x Eduardo Vaca Obando, n a s c i d o e m 2 0 de £ e

-

v e r e i r o de 1943, n a c i d a d e d e ~ u i c á n

-

Equador. Diplomado em Engenharia ~ e c â n i c a p e l a E s c o l a P o l i t é c n i c a Nacional d e

Q u i t o

-

Equador em 1967. Cursou p ó s - ~ r a d u a q ã o em Engenha

-

r i a I n d u s t r i a l na E s c o l a P o l i t é c n i c a Nacional de Q u i t o de

1 9 6 7 a 1 9 7 0 . Trabalhou como P r o f e s s o r A u x i l i a r na mesma E s

-

c o l a desde 1967 a t é f e v e r e i r o de 1970. Realizou c u r s o s n a

Companhia S i d e r ú r g i c a Nacional

-

V o l t a Redonda, com b o l s a do I t a m a r a t i , de a g o s t o a o u t u b r o de 1968 e n a comissão Na

-

c i o n a l de E n e r g i a ~ t ô m i c a em Buenos A i r e s

-

A r g e n t i n a , com b o l s a da OEA, de março a junho d e 1970. Em j u l h o de 1 9 7 0

i n g r e s s o u na COPPE/UFRJ onde o b t e v e o t í t u l o de Mestre em

c i ê n c i a s em Engenharia d e produção em 10 de dezembro de

1971. Em j a n e i r o de 1972 f o i c o n t r a t a d o como P r o f e s s o r da COPPE/UFRJ e a p a r t i r de maio d e 1977 é P r o f e s s o r do Depar

-

tamento de Engenharia I n d u s t r i a l da E s c o l a de Engenharia

da UFRJ. Desenvolveu p r o j e t o s r e l a c i o n a d o s com Modelos Ma -

t e m ã t i c o s e o u t r a s á r e a s a f i n s n a COPPETEC. P a r t i c i p o u d e v á r i o s Congressos e r e u n i õ e s c i e n t í f i c a s tendo p u b l i c a d o

(4)

iii

A Guadalupe T . Eduardo e Cxis t i a n

(5)

Agradecimentos

Meu agradecimento muito e s p e c i a l ao P r o f , Nelson Maculan F i l h o que como o r i e n t a d o r , c o l e g a e amigo f o i um

cons t a n t e i n c e n t i v a d o r d e s t a caminhada que a q u i t e r m i n a .

Aos c o l e g a s do Programa de Engenharia de S i s t e - mas e ~ o m p u t a ç ã o p e l o a p o i o e compreensão que souberam b r i n

-

d a r d u r a n t e a e l a b o r a ç ã o d e s t e t r a b a l h o .

Ao p e s s o a l da B i b l i o t e c a do Centro de Tecnologia p o r s e u e s p í r i t o d e colab.oração d u r a n t e a p e s q u i s a b i b l i o - g r á f i sa

.

A s NCE p e l a u t i l i z a ç ã o d e s u a s i n s t a l a ç õ e s .

A t o d o s a q u e l e s q u e de uma ou forma cólaberãram p a r a a c o n c l u s ~ o d e s t a Tese.

A ~ o n s o l a ç ã o de Maria Moreira Lima p o r s e u exce- l e n t e t r a b a l h o de mecanografia.

(6)

Resumo

Este trab.alho a p r e s e n t a um procedimento que g e r a

m a s e q u ê n c i a f l w i t ã de so&uções d e um problema de programa

-

ção i n t e i r a b i v a l e n t e (-0

-

11, u t i l i z a n d o d u a l i d a d e e m pro- gramação Inteira e O metodo de g e r a ç ã o d e coluna. O l a l g ~ -

r i t m o g e r a simultaneamente soluç6>es denominadas

6

- v i á v e i s que podem s e r mais i n t e r e s s a n t e s que a p r ó p r i a s o l u ç ã o 6 t i - ma p a r a determinada c l a s s e d e problemas. s ã o mostrados e a n a l i s a d o s o s r e s u l t a d o s , de um c o n j u n t o de problemas t e â -

t e , que f s r m o b t i d o s mediante um programa e l a b o r a d o em l i n

-

çuagem F o r t r a n ,

(7)

A b s t r a c t

T h i s work p r e s e n t s a p r s c e d u r e f o r g e n e r a t i n g a

f i n i t e sequence Q£ s o l u t i o n s t o a g i v e n zero-one i n t e g e r programming prsblem, u s i n g d u a l i t y i n i n t e g e r programming and t h e g e n e r a t i n g column method. T h i s a l g o r i t h m g e n e r a t e s s i m u l t a n e u s l y

6

-

f e a s i b l e s o l u t i o n s t h a t c s u l d be more i n t e r e s t i n g t h a n o p t i m a l s o l u t i o n s f o r a c l a s s s f s p e c i f i c problems. W e p r e s e n t and a n a l y s e , r e s u l t s f o r a s e t o £ t e s t problems, o b t a i n e d by means o£ a F o r t r a n program.

(8)

vii

INDICE

Página

~ntrodução 1

O Problema de programação Linear Inteira 3

O Problema de programação Linear Inteira Bivalente 4

Problema de Programação Zero-Um Equivalente ao Problema de

programação Inteira com variáveis Limitadas 5

Aplicações de programação Zero-Um 5

Métodos de solução 6

CAP~TULO II

1. O Problema Knapsack

2. O Problema Knapsack Unidimensional 10

3. O Problema Knapsack Multidimensional 12

4 . O Problema de Alocação de Recursos

5. Métodos de solução para o Problema Knapsack

6. Redução de um Problema Multidimensional num Problema Unidi

mensional 16

6.1 Métodos de ~ransformaqão 17

6.1.1 Método de Kendall e Zionts 20

(9)

viii

~ntrodução

Dualidade em programação Inteira

Propriedade dos Problemas Prima1 e Dual

considerações sobre as ~oluqões Geradas

~esolução do Problema Irrestrito

5.1 soluções

5

-

viáveis ~xistência de "gaps"

vali ação

de u

7.1 cálculo de

u

por inspeção

7.2 ~esolução do Problema por ~iseção

~ é t o d o Dual de ~ecomposição

8.1 Primeira Fase

8.2 Segunda Fase

Algoritmo

Fluxograma do Algoritmo Dual de ~ecomposição

10. ~onclusões

Exemplo 2

Exemplo 3

(10)

1. ~ n t r o d u ç ã o

2. Resultados e Análise dos Resultados

Problema 1 Problema 2 Problema 3 Problema 4 Problemas 5, 6, 7, 8, 9, e 10 Problema 5 Problema 6 Problema 7 Problema 8 Problema 9 Problema 10 Problema 11 Problema 12 Problema13 Problema 14 Bibliografia

(11)

1. I n t r o d u ç ã o

É p e r f e i t a m e n t e conhecido que o s modelos de progra-

mação matemática s ã o uma a b s t r a ç ã o d a r e a l i d a d e de umproblema.

A s s i m também s u a s o l u ç ã o Btima pode s e r v i s t a como uma s o l u ç ã o próxima da "Ótima r e a l " . aí a i m p o r t â n c i a d a s t é c n i c a s d e pós

-

o t i m i z a ç ã o , a n á l i s e de s e n s i b i l i d a d e e p a r a m e t r i z a ç ã o que p e r -

tensem uma informação mais completa do comportamento do modelo quando s u j e i t o a d e t e r m i n a d a s mudanças em s e u s p a r h e t r o s e que encontram um c o n j u n t o d e s o l u ç s e s d a s q u a i s algumas s e r ã o de m a i s f á c i l implementação.

à medida que a s t g c n i c a s de programação matemátkea s ã o mais d i v u l g a d a s , s u a u t i l i z a ç ã o s e d i f u n d e cada vez mais e vão aumentando a s á r e a s de a p l i c a ç ã o d e s t a s t é c n i c a s .

Deve-se sempre lembrar que a s t é c n i c a s d e programa- ç ã o matemática s ã o uma f e r r a m e n t a p a r a o planejamento e p a r a tomadas de d e c i s õ e s e p o r i s t o fornecem uma s é r i e d e a l t e r n a t i

-

v a s ~ e n t r e a s q u a i s uma é s e l e c i o n a d a i n i c i a l m e n t e e n a s u a i m

-

p l e m e n t a ç ~ o , a l g u m a s a l t e r a ç õ e s d e v e r ã o s e r e f e t u a d a s , a fim d e c o n s e g u i r o s melhores r e s u l t a d o s p o s s i v e i s na s o l u ç a o de um determinado problema. Também se deve lembrar q u e , a c o n s t ~ u ç ã o de um modelo matemático complementada com o s dados, o s q u a i s nem sempre s ã o c o n f i á v e i s cem p o r c e n t o , p o r t a n t o s o l u ç õ e s 6 t i

-

mas o b t i d a s p a r a um modelo continuaram a e s t a r prQximas d e Qti

-

ma r e a l . A s s i m sendo, p a r a tomar uma d e c i s o e m b a s e a e s t a s

(12)

da Ótima p a r a que s i r v a m como a l t e r n a t i v a s , c a s o não s e j a conve

-

n i e n t e implementar a s o l u ç ã o 6 t i m a . Se alguma d e s t a s s o l u ç õ e s é i n v i á v e l e e s t a i n v i a b i l i d a d e s e v e r i f i c a em uma percentagem mínima de um ou v á r i o s dos r e c u r s o s u t i l i z a d o s , e s t a s o l u ç ã o p o

-

d e r 5 t o r n a r - s e mais a t r a t i v a que alguma v i á v e l porém mais a f a s

-

t a d a da Ótima.

Dentro d e s t e c o n t e x t o , s e r á a p r e s e n t a d o um método p a r a r e s o l v e r problemas de programaqão i n t e i r a zero-umrque pode ser u t i l i z a d o p a r a o b t e r s o l u ç õ e s de v á r i o s problemas r e a i s .

O método a q u i a p r e s e n t a d o r g e r a uma s e q u ê n c i a f i n i t a de s o l u ç Õ e s , u t i l i z a n d o d u a l i d a d e em programação i n t e i r a e o m é

-

t o d o de g e r a ç ã o de c o l u n a s , E devido a s u a e f i c i ê n c i a e s i m p a i

-

c i d a d e possue vantagens s o b r e o u t r o s métodos t a i s c o m o ~ o s a l - g o r i t m o s c l & s i c o s de programação i n t e i r a . O tempo de computa- ção g a s t o p a r a a obtenção de s o l u ç õ e s d e problemas d e programa

-

ção zero-mrcom um número r e l a t i v a m e n t e grande d e v a r i á v e i s r é

pequeno em r e l a ç ã o a o tempo u t i l i z a d o p o r o u t r o s a l g o r i t m o s .

A e f i c i ê n c i a do método pode s e r melhorada a i n d a me

-

d i a n t e a t r a n s f o r m a ç ã o d e problemas com v á r i a s r e s t r i ç õ e s I e m

um problema e q u i v a l e n t e com uma r e s t r i ç ã o .

O método a q u i a p r e s e n t a d o ,pode s e r u t i l i z a d o também p a r a uma ~ n g l i s e de P 6 s - ~ t i m i z a ç ã s dos problemas de programa- ção zero-um, dado que na p r o c u r a d a melhor s o l u ç ã o v i á v e l s ã o e n c o n t r a d a s o u t r a s s o l u ç õ e s v i a v e i s de menor v a l o r ( p a r a maxi- mizar)- e s o l u ç õ e s que chamaremos d e

5

-

v i á v e i s , d e maior v a l o r , sem nenhum e s f o r ç a computaciona1 a d i c i o n a l .

(13)

2 . O Problema

Um

3

de ~ r o g r m a ç ã o L i n e a r I n t e i r a

problema de programação l i n e a r , em que a s v a r i ã - v e i s devem assumir v a l o r e s não f r a c i o n á r i o s ou i n t e i r o s ! s ã o c l a s s i f i c a d o s como problemas de programação l i n e a r i n t e i r a .

E s t e s p r o b l e m a s t s ã o i m p o r t a n t e s porque um g r a n d e número de problemas r e a i s t n o campo da p e s q u i s a operacional, po

-

dem ser r e p r e s e n t a d o s como problemas com v a r i á v e i s i n t e i r a s .

O problema g e r a l de programação i n t e i r a pode ser d e f i n i d o como: s u j e i t o a AX

-

b x > 0 e i n t e i r o j j

-

onde : C = (_c . ) ê m v e t o r l i n h a J - = l b " ' ) n de n componentes X = Lx.) é um vetoa: c o l u n a de n componentes I - A = (-a. . ) é uma m a t r i z m x n 1 3 -

b = ( b i ) é um v e t o r coluna com m componentes

Se t o d a s a s v a r i á v e i s x j s ã o i n t e i r a s teremos um problema chamado t o t a l m e n t e i n t e i r o . Se somente algumas das v a r i ã v e i s x s ã o i n t e i r a s sendo a s r e s t a n t e s c o n t i n u a s t e r e -

j

mos um problema chamado de programação m i s t a .

A p a r t i r da t é c n i c a a p r e s e n t a d a por Gomsryrem 1 9 5 8 , p a r a r e s o l v e r o problema de programação l i n e a r i n t e i r a , v & - i a s o u t r a s t 6 c n i c a s Eoram d e s e n v o l v i d a s . Ainda m a i s , t g c n i c a s

(14)

4

e s p e c i a i s r p a r a problemas espec.?fisos d e programação i n t e i r a , f o

-

ram p e s q u i s a d a s e continuam a ser p e s q u i s a d a s , c o n s t i t u i n d o - s e assim e s t e campo numa f o n t e g e r a d o r a de t é c n i s a s , q u e pretendem ser cada vez mais e f i c i e n t e s e e s p e c i a l i z a d a ã ,

Dentre o s problemas e s p e c i a i s de programação i n t e i

-

r a que vem d e s p e r t a n d o maior i n t e r e s s e podemos c i t a r o p r o b l e - ma d e programação l i n e a r i n t e i r a b i v a l e n t e ou zero-um,

3 . O Prob-lema de ~ r o g r a m a ç ã s L i n e a r I n t e i r a B i v a l e n t e

O problema de programação l i n e a r i n t e i r a b i v a l e n t e ou zero-um, que daqui p o r d i a n t e denominaremos simplesmente de problema de programação b i v a l e n t e ou zero-um, é um problema em que a s v a r i z v e i s s ó podem a s s u m i r v a l o r e s z e r o ou um, pode s e r e x p r e s s a d o como:

n Maximizar z = C c . x

j = i 1 j

Consideremos que:

a). o s c . '> O- (.j = 1, 2 ,

.

. .

, i a )

,

c a s o i s t o não a c o n t e ç a podemos 3 - u t i l i z a r a mudança de v a r i s v e i s s e g u i n t e , x = 1

-

xl quan j I

-

do c . < O .

a

b ) o s b . . > Q p a r a i = 1,. . . , m a - c). o s a i j > Q

-

p a r a i = l , .

..,

m e j = l,

...,

n

(15)

5

0 problema d e programação zero-um 6 c o n s i d e r a d o i m - p o r t a n t e , p o r s u a s a p l i c a ç õ e s p r á t i c a s e também devido a que t o d o problema de programação i n t e i r a com v a r i á v e i s limitadas,po - de s e r transform-ado em um problema de programação zero-um.

4 . Problema de Programação Zero-Um E q u i v a l e n t e ao Problema de

Programação I n t e i r a . com V a r i z v e i s L i m i t a d a s

Consideremos o problema ( 2 ) onde a s v a r i á v e i s x i n

1

-

t e i r a s possuem l i m i t e s s u p e r i o r e s conhecidos. S e j a uma v a r i á - vel. x < i1

k - k P xk poderá s e r e x p r e s s a d a como

onde K s e r á determinado corno 2 Ki-1.

2

u k + l S u b s t i t u i n d o xk em função de y temos o r e s u l t a d o d e s e j a d o .

kp

Como uma desvantagem d e s t a t r a n s f o r m a ç ã o temos que, o problema r e s u l t a n t e p o s s u i r a um grande nfimero de v a r i á v e i s zero-um, o que poderá d i f i c u l t a r a p r o c u r a da s o l u ç ã o do pro-

blerna,devido

2

c a p a c i d a d e da memória do computador d i s p o n l v e l ou, o tempo de c o m p u t a ç ~ o que s e r i a n e c e s s a r i o p a r a e n c o n t r a r

a s o l u ç % poderá s e r i n a c e i t s v e l ,

5, ~ p l l c a ç õ e s de ~ r o g r m a ç ã o Zero-Um

Problemas d e programação zero-um podem s e r g e r a d o s a p a ~ t i r de problemas de programação i n t e i r a , programaçao não- l i n e a r , po&m e x i s t e m problemas c u j o modelo pode s e r d e f i n i d o d i r e t a m e n t e como um problema d e programaçZio zero-um. Nesta

(16)

6

classe de problemas se enquadram os problemas de orçamento de capital, seleção de projetos,alocação de recursos, fluxos em redes de comunicação, recuperação de infomaçÕes, assignaçãode experimentos, localização industrial, dimensionamento de fro- tas de ve~culos, alocação de tripulação em linhas agreas, se- quenciamento, multicomodidade, o problema "cutting-stock", prg blema do caixeiro viajante, problemas de recobrimento (set 60-

vering)

,

aãocação de hor&ios, problema Knapsack, alocação de tarefas, balanceamento de linhas de montagem, planejamento de vooâ, seleção de jornais e revistas, etc. O problema knapsack

(niochi1a) será abordado detalhadamente no ~apftulo 11

,

assim como alguns outros problemas similares.

Teoricamente existe uma infinidade de métodos para resolver os problemas de programaçao zero-um, porem estão sem- pre relacionados com métodos que podem ser considerados Pa- dr&srjz que nestes são introduzidas algumas mudanças a fim de torns-10s mais eficientes ou adaptá-los a estruturas especiais da matriz de coeficientes. Basicamente esses metodos podem ser considerados como:

i)- Métodos dos planos de corte

ii) Métodos que utilizam Teoria dos Grupos ili2 ~Gtodos de "branch and bound"

2 ~ ) - Metodos do subgradiente

v1

Metodos heuristicos

(17)

v i i l ~ é t o d o s de programa dinâmica

v l i i l Métodos de enumeraqao i m p l l c i t a

Alguns a l g o r i t m o s resolvem o s problemas de programa

-

çãs

zero-um u t i l i z a n d o um ou mais dos mÊkõdos acima.

M6todss de enumeraqão i m p l l c i t a

Em 1965 B a l a s [10] prop6s o a l g o r i t m o a d i t i v s que s e r v i u d e b a s e p a r a a a p r e s e n t a ç ã o de o u t r o s t r a b a l h o s , t a i s como o s que foram desenvskvidos p a r Glover [5l], Mao e Walling

-

f o r d P4], B a l a s [ll], G e o f f r i o n [49], P e t e r s e n [83], G a r f i n k e l

-

-C Nemhauser [43], [46]

,

Cahot [20], E i l o n e C h r i s t o d i d e s

p67

,

De Maio e Roveda [23], E l l w e i n p 5 ]

,

S a l k i n e Koncal [89]

,

Bra

-

ã l e y e WahiLlS], E t d i e b e r r y

0 4 1 ,

Arora

1

e n t r e o u t r o s .

Dentre o s t r a b a l h o s que u t i l i z a m programação d i n â -

mica podemos c i t a r o s de Weingartner e Ness [98], Nemhauser e

Ullman [78]

,

S h a p i r o e Wagner [93], S h a p i r o

[gol

,

Nemhauser e K r a f t e H i l l [65], Gearing, Swart e Var [38]

.

~ é t o d o s

-

d o s P l a n o s de C o r t e

Alguns d e s t e s m6todos foram d e s e n v o l v i d o s p o r : B e l l

-

more e R a t l i f f p 7 ] , Salkin e Koncal [89], Glover e Klingman

, F i s h e r e ~ h a p i r o [29

1

,

C h a m e s , D.Granot e F.Granot

I211

B a l a s e Zemel

[.

4 1 t

[

51

,

Kianf a r [64] e B a l a s [2

3

.

Mgtodos que utibizarn T e o r i a dos G r u p ~ s

(18)
(19)

8

do que pode s e r apontado como um dos t r a b a l h o s p i o n e i r o s o de S h a p i r o

b l ]

ao q u a l se seguiram o s t r a b a l h o s de B e l l [i3] Houck e Vemuganti [ 5 4 , Wosley

Lg9],

Gorry, Northup e S h a p i r o

c37

1

~ é t o d o s e s p e c i f i c a m e n t e d e s e n v o l v i d o s p a r a programa - ç6bo zero-um e que u t i l i z a m a t g c n i c a "Branch and Bound" e s t ã o d e s c r i t o s em: K o l e s a r [67], Greenberg e Herich @ 7 ] , Lernke-Sal -

k i n e S p i e l b e r g

p l l ,

H e l d e Karp Li. r5~9], F i s h e r e S h a p i r o p9]

,

E t c h e b e r r y

e 4 1 ,

P i e r c e p 2 ] , Shih [ 8 2 ] , Nauss (761 e I n g a r i o

-

l a e Korch p 2 ] .

Métodos. i30 'Subqr'adien t e

E n t r e e s t e s métodos temos o s d e s e n v o l v i d o s por H e l d , Wolfe o Crowdes [58], E t c h e b e r r y [ 2 4 ] , - Golden e 5 ] , Legendre e

Minoux [70;]

.

Devido a d i f i c u l d a d e em e n c o n t r a r s o l u ç õ e s

.

Õ-bimas p a r a problemas com um grande n6mero d e v a r i á v e i s e r e s t r i ç õ e s , cada vez mais e s t ã o sendo u t i l i z a d o s mêtodos h e u r i s t i c o s que fornecem soluçGes próximas d a ó t i m a com um e s f o r ç o computacio- n a 1 muito r e d u z i d o se comparado com o tempo n e c e s s á r i o ' p a r a

a c h a r s o l u ç 6 e s Ótimas p o r o u t r o s mêtodos. E n t r e e s t e s m6todos podemos a n o t a r o s a p r e s e n t a d o s p o r H i l l e r

FO],

E i l o n e C h r i s - t o £ i d e s [26]

,

S a l k i n e ~ o n c a l

,

Magazine, Nemhauser e T m t t e r

(20)

centemente o t r a b a l h o d e B a l a s e M a r t i n

.

Outros métodos que sem s e r h e u r f s t i c o s fornecem so-

l u ç õ e s aproximadas do problema s ã o o s d e s e n v o l v i d o s p o r S e n j u e

Toyoda [92], Toyoda [96]

,

~ o y s t c j r - ~ e y e S l i v k a [86].

Pode-se a f i r m a r que o t r a b a l h o que deu i n l c i o

5

u t i - l i z a ç ã o do método dos m u l t i p l i c a d o r e s de Lagrange f o i o de

E v e r e t t [ 2 7 ] em 1963 e a e s t e s e seguiram o s t r a b a l h o s de Fisher

[28]

,

B e l l [13], Kaplan [68], Brooks e G e o f f r i o n [18], Green- b e r g [3

41

,

Fox e Landi C311

,

Legendre e M inoux [7 O]

.

E s s e s méto

-

dos s e preocupam em c a l c u l a r o s m u l t i p l i c a d o r e s p a r a o problema

(21)

I.

O Problema Knapsack

s e r á d e s c r i t a a q u i uma c l a s s e de problemas de p r o g r a

-

mação zero-um chamados algumas v e z e s de problemas combinatórios. E s t e s problemas possuem um grande número de s o l u ç õ e s v i á v e i s e

poderão ser r e s o l v i d o s mediante enumeração e c á l c u l o das sobu- ç õ e s v i a v e i s .

E n t r e e s t e s problemas e s t ã o o s problemas Knapsackccm uma 6 n i s a r e s t r i ç ã o e o problema Knapsack m u l t i d i m e n s i o n a l . E x i s

-

tem na l i t e r a t u r a d i v e r s o s métodos p a r a r e s o l v e r e s t a c l a s s e de problemas porém a q u i pretendemos d i s c u t i r a s u a s o l u ç ã o como um problema de programação zero-um.

2 . O Problema Knapsack Unidimensional

O nome do prob.lema, Knapsack, se r e f e r e a uma s i t u a - 9% e m que s e q u e r c a r r e g a r bima mochila que p o s s a s u p o r t a r um peão mSximo. P a r a e n c h e r a mochila s e selecionam v a r i o s i t e n s cada um dos q u a i s possue um v a l o r e um p e s o , O problema c o n s i s - t e em e n c h e r a mochila de t a l forma que s u a capacidade não s e j a e x c e d i d a e o v a l o r t o t a l dos i t e n s , i s t o é, a soma d e t o d o s o s v a l o r e s r e l a t i v o s , s e j a maximizada.

O problema s e r 5 a p r e s e n t a d o como:

(22)

x 5 O e i n t e i r o ( j = l , .

.

.

, n ) j

-

onde c é O v a l o r d e cada i t e m j j a 6 o peso do i t e m j j

b G o peso que a mochila pode s u p o r t a r

Sem p e r d e r g e n e r a l i d a d e pode- se assumir que o s

c j >

O (-j = l ,

...,

n ) t b

-

> O e a > O . Porém, s e G . = O i m p l i

j

-

J

-

c a que x = O em t o d a s o l u ç ã o Btima, s e b = O i m p l i c a que a

j

Única s o l u ç ã o v i á v e l 6 x = Q j = 1 . desde que a > 0.

j j

Se algum a = O com c > O , a s o l u ç ã o ótima é i l i m i

j j

-

t a d a desde que

x

p o s s a s e r q u a l q u e r v a l o r i n t e i r o a r b i t r a r i a - j

mente g r a n d e ,

O problema que se p r e t e n d e a b o r d a r a q u i é o p r o b l e - ma Knapsack em que s 6 pode ser c a r r e g a d o um elemento de cada i t e m , i s t o 6 , x = l se o elemento é c a r r e g a d o e x = 0 , c a s o

j j

c o n t r a r i o .

O problema Knapsack t e m s i d o e s t u d a d o com muito i n teresse p o r poder r e p r e s e n t a r muitos problemas r e a i s , t a i s co- mo: akocação de r e c u r s o s , s e l e ç ã o de p r o j e t o s , i n v e s t i m e n t o s d e c a p i t a l , problemas de c a r g a , s e l e ç ã o de j o r n a i s e r e v i s t a s , o problema " c u t t i n g â t o c k "

,

e tamb&m a p a r e c e com sub-problema de a l g u n s a I g o r i t m o s de programação i n t e i r a .

(23)

3 , O Problema Knapsack M u l t i d i m e n s i o n a l

O problema Knapsack m u l t i d i m e n s i o n a l

,

6 -

o problema ~ n a p s a c k d e s c r i t o em ( 2 ) com o u t r a s l i m i t a ç õ e s a d i c i o n a i s a s s i m p o r exemplo, l i m i t a ç ã o de p e s o , volume, l a r g u r a ou com- primento. A s v a r i á v e i s poderão s e r i n t e i r a s , porém assumimos a q u i que e s t a s v a r i á v e i s s õ poderão s e r O ou 1, c o n s i d e r a n d o

que não e x i s t e a p o s s i b i l i d a d e d e i n c l u i r mais do que um a r t i

-

Um t i p o de a p l i c a ç ã o p a r a e s t a c l a s s e de problemas

é o problema de a l o c a ç ã o d e c a p i t a l e m que o s melhores p r o j e - t o s de i n v e s t i m e n t o s s ã o s e l e c i o n a d o s s u j e i t o s a l i m i t a ç õ e s d e g a s t o s ou d e s p e s a s em d i v e r s o s p e r í o d o s d e tempo ou a l i m i t a - ç õ e s de v ã r i a s e n t r a d a s ( d e c a p i t a l ) . Em algumas a p l i c a ç õ e s de a l o c a ç ã o de r e c u r s o s onde a s c o n s t a n t e s do segundo membro não s ã o r í g i d a s pode-se a n a l i s a r o problema mediante o método que no ~ a p i t u l o III ser5 a p r e s e n t a d o .

O modelo pode ser d e s c r i t o como segue: n Maximizar 2 = 1 c . x j = i I j s u j e i t o a n o < x . $ 1

-

3 x i n t e i r o j Sendo c a r e c e i t a d e v i d o

2

i n c l u s ã o do p r o j e t o j, j a - . 6 a q u a n t i d a d e de r e c u r s o r e q u e r i d o p e l o p r o j e 11 b;. a q u a n t i d a d e de r e c u r s o d i s p o n í v e l p a r a s e r gas

-

1

(24)

t o no p e r í o d o i

x j = 1 s e o p r o j e t o é a c e i t o

x j = O s e o p r o j e t o é r e j e i t a d o

Se assome também que o s a i j s ã o não n e g a t i v o s 4 . O Problema de locação de Recursos

O problema d e a l o c a ç ã o de r e c u r s o s s e r e l a c i o n a com a a v a l i a ç ã o de uma v a r i e d a d e de p r o j e t o s de i n v e s t i m e n t o eseuob

j e t i v o é s e l e c i o n a r o s melhores de um c o n j u n t o de p r o j e t o s sob a condição de t e r d i s p o n i b i l i d a d e de r e c u r s o s l i m i t a d o s .

O problema poder5 s e r e s t a b e l e c i d o p a r a um p e r í o d o ou p a r a v á r i o s p e r í o d o s de planejamento. E x i s t e uma grande v 2 r i e d a d e de formulações de problemas d e a i o c a ç ã o de r e c u r s o s . T.al - vez a f o n t e p r i n c i p a l d e s t a s d i v e r s a s formulações é a d e f i n i ç ã o da func$oobjetivo, dado que e m g e r a l e s t e problema não é muito

d e t e r m i n í s t i c o . Alguns p e s q u i s a d o r e s acham que a u t i l i z a ç ã o do r e t o r n o e s p e r a d o não é s u f i c i e n t e como um c r i t é r i o o b j e t i v o da - do que i g n o r a a d i s p e r s ã o e m t o r n o da média.

O modelo 6 formulado da s e g u i n t e forma: n Maximizar E ( z ) = C E ( c . ) x . j = i I j s u j e i t o a

a

L: ~ ( a x ~ ~E ( b i ) ) i = O:, 1;2,... , m j = i j

-

onde : x = 1 se o j-ésimo p r o j e t o é a c e i t o e x = O s e o j j j-ésimo p r o j e t o é r e j e i t a d o .

(25)

c é uma v a r i á v e l a l e a t ó r i a que r e p r e s e n t a o v a l o r a j

-

t u a 1 do j-ésimo p r o j e t o de i n v e s t i m e n t o e E ( c . ) é 7 s e u v a l o r e s p e r a d o . a . é a v a r i á v e l a l e a t ó r i a que r e p r e s e n t a o c u s t o do ' i j

j-ésimo p r o j e t o -d e i n v e s t i m e n t o no i- ésimo peczo do e E ( a i j ) é s e u v a l o r e s p e r a d o .

bi é a v a r i á v e l a l e a t ó r i a r e p r e s e n t a n d o o v a l o r d i s - p o n l v e l no i- ésimo p e r í o d o p a r a a l o c a ç ã o dos pro-

j e t o s de i n v e s t i m e n t o e E ( b i ) é s e u v a l o r esperado. Se assume que a s funções de densidade das v a r i á v e i s a l e a t ó r i a s podem s e r a v a l i a d a s .

O modelo também poderá ser formulado s u b s t i t u i n d o c a - da v a r i á v e l a l e a t ó r i a p o r s e u v a l o r e s p e r a d o .

5 . Métodos de Solução p a r a o Problema Knapsack

O número de s o l u ç õ e s p a r a a c l a s s e d e problemas a p r e

-

s e n t a d o s nos i t e n s ( 2 ) , ( 3 ) e ( 4 ) e da ordem de 2 n , onde

n o número de v a r i á v e i s do problema.

Nesse c a s o a u t i l i z a ç ã o do esquema enumerativo das s o l u ç 6 e s puro e s i m p l e s , p a r a s e l e c i o n a r a melhor s o l u ç ã o s e t o r n a i n v i á v e l . E x i s t e na l i t e r a t u r a uma grande q u a n t i d a d e de métodos que resolvem: e s t e s problemas de forma e f i c i e n t e . E s t e s métodos foram d e s e n v o l v i d o s u t i l i z a n d o programação dinâmica, t é c - n i c a s de "braneh and bound", enumeração i m p l í c i t a , p l a n o s de c o r t e , t é c n i c a s h e u r i s t i c a s e o s que u t i l i z a m d u a l i d a d e em programação i n t e i r a e e n t r e o s q u a i s s e enquadra o metodo que

(26)

15

Podemos c l a s s i f i c a r o s métodos p a r a r e s o l v e r o p r o b l e

-

ma Knapsack e m 2 g r a n d e s g r u p o s , a q u e l e s que r e s o l v e m o problema

Knapsack u n i d i m e n s i o n a l , e o s que resolvem o problema . Knapsack

m u l t i d i m e n s i o n a l . Ainda d e n t r o d e s t a s duas c l a s s e s e x i s t e m OS

métodos q u e consideram a s v a r i á v e i s i n t e i r a s ( x . 2 - > O e i n t e i r a ) e a q u e l e s em q u e a s v a r i á v e i s s ó podem a s s u m i r v a l o r e s z e r o ou um.

P a r t i c u l a r m e n t e desenvolveremos um método que r e s o l v e r á o p r o b l g

ma Knapsack m u l t i d i m e n s i o n a l com v a r i á v e i s zero-um, sendo q u e o

método p o d e r á r e s o l v e r também o problema Knapsack unidimensimai,

D e n t r e o s métodos que u t i l i z a m a s t é c n i c a s acima i n d i

-

c a d a s podem c i t a r :

programação dinâmica: Weingartner e N e s s [98']

,

S h a p i

-

r o e Wagner r 9 31, S h a p i r o 1901 e Nemhauser e Ullman [ 7 8 ] .

numeração

I m p l í c i t a : P e t e r s e n [ 8 3 ] , Mao e W a l l i n f o r d

[ 7 41, P i e r c e [ 8 2 ] e ~ a b o t [ 2 0 ] .

~ é c n i s a s d e "Elranch and Bound" : K o l e s a r [67

]

, e Green- b e r e Hegerich [ 4 71.

P l a n o s de c o r t e : K i a n f a r [6 41.

~ e u r ~ s t i c o s : Magazine, Nernhauser e T r o t t e r [73

1,

Hu e Lenard [57

]

e B a l a s e M a r t i n

b]

.

Dualidade: Nauss [ 7 61, Legendre e Minoux [703; Maculan,

Vaca Obando e V i l l a r e s [7 21.

O u t r o s métodos : S e n j u e Toyoda [92

1 ,

Toyoda [96

]

e S o y s t e r , Lev e S l i v k a [ 8 61.

(27)

6 . ~ e d u ç ã o de um Problema M u l t i d i m e n s i o n a l num Problema Unidimen - s i o n a l

Um problema Knapsack m u l t i d i m e n s i o n a l pode s e r r e d u z i - do a um problema Knapsack e q u i v a l e n t e com uma r e s t r i ç ã o . como s e poderá v e r p o s t e r i o r m e n t e , a p r o c u r a da s o l u ç ã o de um p r o b l e

-

ma com uma r e s t r i ç ã o s e t o r n a mais f á c i l , r a z ã o p e l a que em a 1

-

guns problemas poderá ser u t i l i z a d o e s t e t i p o de t r a n s f o r m a ç ã o .

Consideremos o c o n j u n t o de r e s t r i ç õ e s x i n t e i r o j = 1,

...,

n j onde a i j f b . e u s ã o p o s i t i v o s e i n t e i r o s . 1 j O problema c o n s i s t e em e n c o n t r a r v a l o r e s wl,

...

,

w m t a i s que t o d a s o l u ç ã o n ã o - n e g a t i v a e i n t e i r a p a r a o c o n j u n t o de x i n t e i r o j m

onde a . = C W a ( j 1,

. .

.

,

n ) e b = , Z wibi é uma s o l u

-J i=l i i j .-J =1

-

ção p a r a ( 3 )

.

Dado que a s r e s t r i ç õ e s ( 3 ) implicam em ( 4 )

,

t o d a s o l u ç ã o i n t e i r a n ã o - n e g a t i v a p a r a ( 3 ) é uma s o l u ç ã o p a r a ( 4 ) . Po - rém p a r a v a l o r e s a r b i t r á r i o s dos w i r o conjunto-:de i n t e i r o s não-

n e g a t i v o s X= ( x l ,

.

. .

,

x ) que s a t i s f a z e m ( 4 1 é g e r a l m e n t e maior n

(28)

Exemplo 1

-

Balas

1111

O problema Minimizar z = 5x 1 7x2

+

10x3

+

3x4

+

x 5 s u j e i t o a

-

X1

+

3x2

-

5x3

-

x 4

+

4x5 i- x 6 =

-

2 ( i ) (iii) x > 0 e i n t e i r o ( j = 6 , 7 , 8 ) j

-

possue como s o l u ç õ e s v i á v e i s ( 0 , 1 , 1 , 0 , 0 ) e ( 1 , 1 , 1 , 0 , 0 , ) . Se s e

-

lecionamos a r b i t r a r i a m e n t e o s v a l o r e s w 1 = w 2 = w 3 = 1 a s t r ê s

equações somadas fornecem a equação

que possue como s o l u ç õ e s v i á v e i s a s d u a s a n t e r i o r e s mais o u t r a s

5 que s ã o ( 0 , 0 , 1 , 0 , 0 ) , 0 , 1 , 1 0 , l l ( 1 , 0 , 1 , 0 t 0 ) e

( ~ 1 1 t l t ~ r O )

Existem na l i t e r a t u r a um g r a n d e número d e t r a b a l h o s

r e l a t i v o s

2

agregação d e r e s t r i ç õ e s . Alguns d e s t e s mêtodoscom

-

binam d u a s r e s t r i ç õ e s em uma que l o g o combinam com a t e r c e i r a

e a s s i m sucessivamente a t é que t o d a s a s r e s t r i ç õ e s sejam combi

-

nadas.

Um t r a b a l h o p i o n e i r o n e s t e s e n t i d o é o d e Mathews (a> que com seu Teorema mostra como a d i c i o n a r d u a s r e s t r i ç õ e s d e

t a l forma que o c o n j u n t o d e s o l u ç õ e s i n t e i r a s n ã o - n e g a t i v a s n ã o

aumente. I s t o p e r m i t e r e d u z i r q u a l q u e r c o n j u n t o d e m r e s t r i

-

ç õ e s a uma Única r e s t r i ç ã o .

(1) P a r a m a i o r e s d e t a l h e s v e r S a l k i n r851

(29)

Teorema de Mathews (1)

Considere o sistema de duas equações lineares (2 n = ' 1

-

j=l ( i (ii) Os coeficientes a (i = 1 , 2, j = 1,

...

,

n) são es i j

-

tritamente positivos e inteiros.

se existem valores não-negativos xl,

...,

x n satisfazem (i) e (ii) logo

a /a2

2

bl ao menos para um j (l<j<n)

11

- -

se

w

é qualquer inteiro positivo tal que w

r

b2 máximo {al j/a2

1

3

logo o conjunto de soluções de (i) e (ii)

6

o que a equação

( 3 ) foi observado que o Teorema

Posteriormente ,

que

mesmo

de

Mathews pode ser utilizado para agregar um sistema de equações

como as de (3) pela utilização das condições

(ii)

'

que Mathews indica também como aplicação do Teorema, onde as du

-

as equações são substituidas por i e i

'

.

Isto é, as duas primeiras equações do sistema ( 3 ) são substituidas por (i) e(ii)

e logo são agregadas. A equação resultante será a primeira equa

-

ção do novo sistema, substituindo às duas primeiras, agora o sis

-

tema possue uma equação a menos. O processo se repete até obter

uma equação só.

(2) O símbolo 2 significa que Si toma o valor do somatório

(30)

U t i l i z a n d o o problema do exemplo 1 é o b t i d a a r e s t r i -

ção e q u i v a l e n t e a o s i s t e m a

O c o n j u n t o de s o l u ç õ e s v i á v e i s d e s t a equação é ( 0 t 1.1

1

I 0 I 0 )

( 1 I l I L I O f O )

A t r a n s f o r m a ç ã o de um s i s t e m a de equações numa equa

-

ção s ó possue o i n c o v e n i e n t e que o s c o e f i c i e n t e s crescem na s u a ordem de grandeza o que m u i t a s v e z e s impede u t i l i z a r o computa d o r devido a s u a capacidade l i m i t a d a p a r a armazenar v a l o r e s i n t e i r o s e s p e c i a l m e n t e . Devido a e s t a d i f i c u l d a d e a l g u n s t r a b a l h o s t e m s i d o p u b l i c a d o s v i s a n d o a t r a n s f o r m a ç ã o com c o e f i c i e n t e s menores. Porém i s t o tem s i d o conseguido a c u s t a s de c ~ l c u l o s a d i c i o n a i s n a t r a n s f o r m a ç ã o .

Glover ( 3 ) a p r e s e n t a um método de reduç.ão agregando a s r e s t r i ç õ e s de duas em duas

Teorema de Glover

Considere o s i s t e m a de duas equações

n.

-

S1 = L a l j x j = bl ( i ) j =i n S 2 z 1 a x = b 2 2 j j ( i i ) j = l

onde t o d o s o s c o e f i c i e n t e s (ai j , hi) s ã o i n t e i r o s e ao menos um dos bi é d i f e r e n t e de z e r o . Sejam w e w i n t e i r o s d i f e r e n t e s de

1 2

z e r o e primos e n t r e s i . Se e x i s t e ao menos m a s o l u ç ã o i n t e i r a não- negativa p a r a ( i ) e ( l i ) , l o g o t o d a s o l u ç ã o i n t e i r a não-nega

-

(31)

t i v a p a r a

wlS1

+

w2S2 = wlbl

+

w2b2 ( i i i )

é uma soluçãoi k n t e i r a não n e g a t i v a p a r a ( i ) e ( i i ) e inversamen

-

t e , dado que p a r a j = l , .

..

,

n. ( i v ) é uma d e s i g u a l d a d e e s t r i t a p a r a j em J

.

onde J é q u a l q u e r c o n j u n t o não v a z i o de

{ I ,

....

n l t a l q u e t o

-

d a s a s s o l u ç õ e s n ã o - n e g a t i v a s p a r a ( i i i ) s a t i s f a z e m x > O p a r a j ao menos um j em J , . . U t i l i z a n d o a redução de Glover o c o n j u n t o de r e s t r i -

ções do Exemplo 1 tem como e q u i v a l e n t e a r e s t r i ç ã o que segue

O c ~ n j u n t o de s o l u ç õ e s v i á v e i s d a r e s t r i ç ã o 6 também ( O , ~ J , 0 J O l e ~ ~ . l , l ~ O , O ) .

6 . 1 . 1 . ~ é t o d o de Kendall e Z i o n t s

Num t r a b a l h o mais r e c e n t e , Kendall e Z i o n t s [63.]apre-

sentam d o i s metodos d e t r a n s f o r m a ç ã o que reduzem s tamanho dos c o e f i c i e n t e s da r e s t r i ç ã o e q u i v a l e n t e .

Sejam duas r e s t r i ç õ e s

( i )

(32)

x inteiro. j

Se define uma função

n

para qualquer conjunto de valores x inteiros e O < x . < u

.

O ve

j - I j

-

tor X é uma solução para a i-éslma restrição se e somente se gi (x) = O.

Um conjunto de multiplicadores wl e

w

gera uma 2

equação

(iii)

Somente são de interesse os multiplicadores para

os quais a equação (iii) implica que

Expressando (iii) em outra forma temos

e utilizando os limites n

é um conjunto de multiplicadores.

O Teorema 3 fornece um conjunto de multiplicado-

(33)

Teorema 3 . (Xendall e Z i o n t s [ 6 3 ]

1

.

S e O < x

.

< u

.

e i n t e i r o s , a s r e s t r i ç 6 e s

-

I -

I s ã o e q u i v a l e n t e s a se o s m u l t i p l i c a d o r e s wi s a t i s t a z e m a s s e g u i n t e s condições: a1 P a r a q u a l q u e r v a l o r da s o l u q ã o i n t e i r a O - < x j m < u j r j = l r e O e n g 2 ( x ) . não é d i v i s í v e l p o r wl e g l ( x ) . não é d i v i s i v e l p o r w2

h) wl e

w2

S ~ Oprimos e n t r e s i

(o

maior d i v i s o r comum é um)

p o r t a n t o wlgl(.xl

+

w2g2

(xl

= O

P a r a p r o v a r que (-vai1 i m p l i c a ( v i ) e ( v ) , e s c r e v e - s e

P o r . d e f i n i ç ã o o membro da e s q u e r d a da equação é i n - t e l r o , consequentemente B membro d a d i r e i t a é i n t e i r o . P e l a con

-

d i ç ã o

(bl

g2

(xl/wl

e gl Cx)/w2 szo i n t e i r o s . Porém i s t o con- t r a d i z a condição [ a ) , p o r t a n t o gl (x) = g2 ( x ) = 0 .

(34)

Em principio o Teorema 3 pode ser utilizado junto com

a condição de que:

g l M

#

(-W2/wl) g2 (x) (viii)

a menos que g (x) e g (x): sejam zero. Assim o Teorema junto com

1 2

(viii) fornecem uma sis temãtica de enumeração para encontrar bons multiplicadores, Para um conjunto de multiplicadores primos en- tre si, poderemos primeiro ver se todas as soluções satisfazem a condição (.a) do Teorema 3. Se a condição (a) não é satisfeita,os multiplicadores serão validos se podemos mostrar que (viii)

e

Alguns métodos propostos para calcular os multipãica- dores wl e w2, utilizam valores primos entre si fora dos interva

-

10s especificados pelos limites superior e inferior de cada equa ção. Esses métodos também satisfazem as condições [a) e (b).

Kendall e Zionts [ 6 3 ] propõem que multiplicadores me

-

nores que aqueles gerados por outros metodos podem ser encontra- dos eficientemente mediante a obtenção de valores de g (x)

1 e

g2(x) que não está0 entre os limites de gl(x) e g2(x) especifica -

dos para cada equaçao. Estes multiplicadores wl e w2 serão váli- dos dado que satisfazem as condiç6es [a) e (b)

.

Q primeiro método proposto consiste em escolher OS

(35)

não sejam i n t e i r o s e

w

e

w

sejam primos e n t r e s i

1 2

O segundo método c o n s i s t e em a ) Enumerar uns poucos v a l o r e s de

gi(.x)- = bi

-

C a .x p a r a O < x < u

j

-

j - j

j = l

i n i c i a n d o com a solução, x = u s e a i j < O e x = O em c a s o con

j j j

t r á r i o , assim que gi (x) d e c r e s c e e s t r i t a m e n t e e n a s e q u ê n c i a não s ã o o m i t i d o s v a l o r e s . ~ambem a enumeração pode i n i c i a r a p a r t i r do l i m i t e i n f e r i o r

O s p r i m e i r o s v a l o r e s s ã o f a c i l m e n t e enumeráveis por- que incrementamos ou diminuimos a v a r i á v e l c u j o / a i j ] é mínimo e assim s u c e s s i v a m e n t e , u t i l i z a n d o um esquema ordenado l e x i c o - g r a f icamente.

b l Se e s c o l h e wl maior que o.menor v a l o r de

g2(x)

enumerado e

w2

maior que o menor v a l o r de gl (x) enumerado, wl# q u a l q u e r g2(.x).

w2#

q u a l q u e r g l ( x ) >

wl

e

w2

são primos e n t r e s i , e

(36)

Utilizando o segundo método e as restrições do Exem- plo 1 calculamos wl e w 2 para as duas primeiras restrições.

De (a) calculamos alguns valores de g 1 (x) e g 2 (x) .Os

primeiros valores de g

(x)

e g (x) serão

P

2

os valores seguintes são calculados diminuindo o

1

ai

1

mínimo ao primeiro valor de gi (x)

.

de onde w2 > 1, por& por (.b) deverá ser w 2 > 5 / 2 , isto é w 2 = 3

e

w1

> 2, porem por (b) deverá ser wl > 8/2 e wl

#

de qualquer g2 ( x ) ~ r então

w

= 9. Temos que 3 e 9 não são primos,então w2 = 6;

1

novamente 9 e 6 não são primos. Finalmente w2 = 7 e w1 = 9 sa- tisfazem todas as condições,

Multiplicando a eqiaaçao (.i) por 9, a equação (ii)por

(-7). e somando temos a equaçgo (.i) seguinte

Enumerando valores para g3(x) e g (x) temos

1

'

os valores de

wl,

e w j serão w = 2 e .,w = 13 e a equação re

(37)

2 6

s u l t a n t e s e r á

10x1-17x - 7 4 ~ +23x +57x5+18x6+14x7+13xg =

-

4 9

2 3 4

É n e c e s s á r i o o b s e r v a r que a ordem e m que a s r e s t r i - ç õ e s s ã o combinadas f o r n e c e r e s u l t a d o s d i f e r e n t e s podendo f o r - n e c e r c o e f i c i e n t e s maiores ou menores de acordo com a combina- çao e s c o l h i d a , a q u i pode-se recomendar a n e c e s s i d a d e de um e s

-

t u d o p r é v i o a fim de o b t e r v a l o r e s menores p a r a o s c o e f i c i e n - t e s .

6.2. Dif i.culdades e v a n t a g e n s

Todos o s metodos p r o p o s t o s a t é a g o r a ~ p a r a r e d u z i x um problema Knapsaek m u l t i d i m e n s i o n a l a um ~ n i d i m e n s i o n a l ~ p o s s u e m a mesma desvantagem : a ordem d e grandeza dos c o e f i c i e n t e s r e - s u l t a n t e s aumenta enormemente, e que p o r ser i n t e i r o s poderão

-

a c a r r e t a r d i f i c u l d a d e s em s u a manipulação quando i n t r o d u z i d o s no computador, p a r a c á l c u l o d a s o l u ç ã o .

E n t r e a s v a n t a g e n s que e s t a s t r a n s f o r m a ç õ e s propor- cionam,temos que é m i t o mais f a c i l r e s a l v e r um problema comma r e s t r i ç % , a c r e s c e n t a n d o - s e o f a t o d e que a memoria do computa- d o r , n e c e s s á r i a p a r a armazenar e s s e s c o e f i c i e n t e s s e r á r e d u z i d ai em comparação

5

que se n e c e s s i t a r i a c a s o s e q u e i r a r e s o l v e r o problema o r i g i n a l . ~amb&m,não é n e c e s s á r i o c o n s i d e r a r a função o b . j e t i v o se nas somente na e t a p a de s o l u ç ã o do problema.

(38)

1. I n t r o d u ç ã o

s e r 2 a p r e s e n t a d o n e s t e c a p a t u l o um procedimento p a r a r e s o l v e r o problema de programação zero-um, mediante a sto2ugão de um programa m e s t r e que s e r 2 o b t i d o a p a r t i r do à e s e n v a ~ v i m e n

-

t o de d u a l i d a d e em progrmaç" i n t e i r a .

AS i d é i a s u t i l i z a d a s p a r a a c o n s t r u ç ã o d e d u a l i d d d e

e m programação i n t e i r a s:go d e r i v a d a s da t e o r i a de d u a l i d a d e e m programação matemática e que é a p l i c á v e l a q u a l q u e r problema d e o t i m i z a ç ã o d e f i n i d o num e s p a ç o v e t o r i a l , dimensionalrnente f i n i t o ,

A s e g u i r apresentaremos a l g u n s r e s u l t a d o s b & i c s ã d a t e o r i a de d u a l i d a d e e m programação não l i n e a r baseados nos t r a -

b a l h o s de Varaiya [97], G e o f f r i o n r421 e Zanwill [ L O ~ ] . S e j a a problema prima1 de programação rnatemztica Max f ( x )

s u j e i t o a

onqe gi: R" -t R, i=l,

. . .

,m, s ã o funções convexas

f:

Rn

-t R, é função côncava

n X um s u b c o n j u n t o convexo de R

,

e b

,

um v e t o r com m componentes

S e j a v(b). = s u p ( f (x) Ix E: X , g(x)< - b}

s e X *

e

uma S O P U Ç ~ O Qtima de (1) v(_b*) = f (_x*)

.

Consideremos também o prohlema s e g u i n t e , S e j a U + E e u - > O

(39)

Maximizar f ( x )

-

u ' { g ( x )

-

b} s u j e i t o a X E X e d e f i n i n d o o problema s u j e i t o a s e r á o d u a l de (1)

.

S e j a z * = i n f ' {a(-uZ

I

u - > 0 1 Geralmente o c o n j u n t o X e m U) ê i g u a l a R ~ . porém a l gumas vezes.

e

p o s d ' v e l i n c l u i r algumas d a s r e s t r i ç õ e s e m X,asãim

4

o c á l c u l o de z(_u)_ p o r ( 2 ) e a s o l u ç ã ~ do problema d u a l (-3) e

mais s i m p l e s .

A segui.r o Lema 1 m o s t r a que a f u n ç a o c u s t o do p r s b l e

-

ma dua2 6 convexa e o Lema 2 m o s t r a que s v a l o r ótimo d o p r o b l e - ma d u a l 6 sempre um l i m i t e s u p e r i o r p a r a o v a l o r ótimo do primal.

m

Lema 1. A f u n ç ã o z : R+ ->.R C) { + -J,$

6

uma f u n ç ã o convexa. Onde

m m

R+={u E R [ u > 0 }

Lema 2 . ( D u a l i d a d e f r a c a ) , Se x v i á v e l p a r a (-L)., i s t o

e ,

s a t i s - f a z g ( x ) c b - e x & X r e se u > 0 , tem-se que -

f ( x ) - < s u p {f ( x )

I

x

E X , gCx) - < b1 - < i n f { a ( u ) I u > o I < z ( u ) - -

( 4 )

O problema b á s i c o da T e o r i a d a D u a l i d a d e é d e t e r m i n a r c o n d i ç õ e s s o b a s q u a i s

(40)

2 9

~ e f i n i ç ã o : Se d i z que um p a r (x*,, u*)

,

X*EX e u*>O - s a

-

t i s f a z as condições de o t i r n a l i d a d e s e :

x* é uma s o l u ç ã o ótima de ( 2 ) com u = u* ( 5 ) x* é v i á v e l p a r a (1)

,

i s t o é, gi (x*) - < bi ( 6 ) u* = 0,quando g i ( x * ) < b j r o que e q u i v a l e a u R ( g ( x * ) - b ) = O ( 7 )

1

u*

t5

chamado um v e t o r de preços 6timo s e e x i s t e X * ~ X t a l que Cx*,u*L s a t i s f a z a s sondiqões de s t i a n a l i d a d e .

Teorema 1. ( s u f i c i ~ n c i a ) , S e (_x*,u*) s a t i s f a z a s condiçges de o t i

-

malidade, a soluç5o

x*

uma s o l u ç ã o 8 t i m a p a r a o p r i m a l , e u*

6 uma soLução 8 t i m a p a r a o d u a l e

2 . Dualidade em ~ ~ o g r a m a ç ~ o I n t e i r a

Da t e o r i a de d u a l i d a d e em programação matematica pode

-

mos d e r i v a r algumas i d é i a s p a r a o problema de programação i n t e i - r a e n e s t e caso, p a r t i c u l a r m e n t e p a r a programação zero-um.

S e j a o problema prima1 Maximi z a r cx

c . 6 um v e t o r bi.nha com n componentes,

x

6 um v e t s r c o l u n a com n componentes,

A é uma m a t r i z com rn l i n h a s e n c o l u n a s , um v e t o r c o l m a com m componentes

(41)

A p a r t i r d e ( - 8 ) s e d e f i n e o u t r o problema

s u j e i t o a

x

s

C O , ~ ) ~

onde u é um v e t o r l i n h a com m componentes não- negativas ( u

-

> 0)

,

ou s e u e q u i v a l e n t e :

z(-ul = max Isx

-

u (AX

-

b) l x a {0,1)"} ( 9 7

'

e n t ã o o problema Minimizar z

(u)_

s u j e i t o a u 3 O -

sers

o dbiai .- d e (8)- Dos r e s u l t a d o s o b t i d o s p o r E v e s e t t [25] podemos ex- t r a i r o s e g u i n t e teorema.

Teorema 2; Considerando o problema C 8 ) , se x* 6 a s o l u q ã o 6 t i m a do problema

(9)-,

e n t ã o x*

e

tambgrn s o l u ç ã o ótima do problema s e b

,

s u b s t i t u S d o p ~ r A x * . P o r t a n t o s e u 6 c a l c u l a d o de modo que p a m a s o 1 i i ç ã ~ Qtima x * , b = A x * , o problema ( 8 ) h x* como s o l u

ção ótima.

x* f o r n e c e Q v a l o r rnZximo de GX

-

u (_Ax

-

h).,

então

assim p a r a t o d o x E (0. l

l n

(42)

t a n t o x* .é s o l u ç ã o 6tima do problema Maximizar cx

s u j e i t o a

A x Ax*

Q problema (-8)- p o d e r s s e r r e s o l v i d o mediante a i n c l u

-

s ã o d a s r e s t r i ç 6 e s n a função o b j e t i v o . Porém s e l e c i o n a r u > O

-

que s a t i s f a ç a m Ij = Ax* s e t o r n a d i f i c i . 1 e em mui.tos c a s o s e s s e s va-

l o r e s d e u poderão riso e x i s t i r , assim v a l o r e s de u > O - p a r a o s q u a i s Bx* se aproxima de podem s e r u t i l i z a d o s , e n t k x* f o r n e

cera uma s o l u ç ã o próxima d a 6 t i m a e que pode s e r c o n s i d e r a d a co

-

mo uma "boa" s o % u ç % ~ . Um o u t r o problema c o n s i s t e ~ e m como a v a l i - a r os- u > 0 .

-

Um procedimento g e r a l c o n ç i s t i r â em c a l c u l a r um

ve

-

t o r u > O

-

e p o s t e r i o r m e n t e c a l c u h r x * e Ax*, s e e s t e v a l o r e s -

t a

prsxiano d e b o p r o c e s s o p a r a , em c a s o c o n t r a r i o o u t r o v e t o r u - > O s e r á s e l e c i o n a d o e assim p o r d i a n t e a t é e n c o n t r a r v a l o r e s de Ax* . a c e i t ã v e i s ou c o n c l u i r que e s t e s n a s existem,

3; Propriedades- doa Prob.Pemas Prima% e Dual

m

Propriedade 1. A funçzo z: R+ +R é uma função con- vexa, onde R 6 o c o n j u n t o dos nGmeros r e a i s e

+

= [uaRm

I

u > o }

-

t a l que z ( u ) = máximo [cx

-

u(Ax

-

b)

I

x d 0 , l ) " l ~ e m s n s t r ação

1

o

a

S e j a u" e u q u a i s q u e r , tal que u ,u E ,R: 151 - > O e

(43)

o

1

= max ' {cx -Xu (AX-b)

-

( 1 - h ) u ( ~ x - b ) +hcx-Xcx)

P r o p r i e d a d e 2 . S e x é uma s o l u ç k v i á v e l de ( 8 ) , i s t o

5,

x s a t i s f a z &c< - b e x s { ~ , l j ~ , e s e M > O , e n t ã o c x < z ( u ) . -

~ e m o n s t r a ç ã o

-e.

Dado que Ax

-

b - -í O e u

-

> 0 , temos que u (Ax-b) - < O e cx - < ax

-

u(.Ax-bJpara t o d o s o s x v i á v e i s de (-1) e t o d o s o s u - > O,

l o g o

o que i m p l i c a que c x

-

< 2

(u)

Da p r o p r i e d a d e 2 pode-se c o n c b u i r que:

max { c x l ~ x - < b ,

x~

{ ~ , l ) " } < - min { z ( u ) lu - > 0 1 , (11)

e n t ã o se x* f o r ótimo d e C81 e u * f o r Ótimo de (-10) tem-se CM* - < z ( u * )

P o r t a n t o é i n t e r e s s a n t e r e s o l v e r o problema ( 1 0 ) p a r a q u e s e p o s s a c a l c u l a r m a c o t a s u p e r i o r d e cx em ( 8 ) , d e s s a f o r

-

ma s e pode t e r uma i d & i a do v a l o r de cx, p a r a um x v i a v e 1 de

(-8)-em r e l a ç a o a s e u ótimo. Podem s e r determinadas s o l u ç 6 e s pró- ximas da 8 t i m a , c o n s i d e r a d a s "boas" p a r a um c e r t o t i p o de pro-

(44)

4 . ~ o n s i d e r a q õ e s Sobre a s s o l u ç õ e s Geradas

A s e g u i r s e r ã o f e i t a s algumas c o n s i d e r a ç õ e s , em ter- mos de programação l i n e a r , s o b r e a s s o l u ç õ e s g e r a d a s p e l o meto

-

do D.ual de Decomposiçao em s u a l a . F a s e . S e j a o Problema P max C c

.x

j=a

I j s u j e i t o a n O metodo k a l de ~ e c o m p o s i ç ~ o na s u a I a . F a s e pode p r o d u z i r s o l u ç 6 e s Qtimaã p a r a o problema (-8) somente se e s t a s s o l u ç õ e s s s o p o n t o s extremos de um c o n j u n t o convexo de qyaçÓes l i n e a r e s .

A s s i m P pode s e r r e s o l v i d o u t i l i z a n d o o método Sim- p l e x e (-8). poder5 ser r e s o l v i d o u t i l i z a n d o o método Dual de D e

-

composição (_Ia. F a s e ) . Porem p a r a um v e t o r b dado, s e no pro-

blema P não é o b t i d a uma s o l u ç ã o i n t e i r a , não poderá s e r o b t i - da ma s o l u ç ã o ótima p a r a C8) u t i l i z a n d o o método Dual de D e -

composição. I s t o e; as ú n i c a s s o l u ç õ e s i n t e i r a s q u e podem s e r achadas u t i l i z a n d o o método Bual de Decomposição s a o o s p o n t o s extremos d~ c o n j u n t o convexo do problema P . ~ ã o s e r i a recomen- dada a u t i l i z a ç ã o do método de ~ e c o m p o s i ~ ã o c a s o s e q u e l - r a a c h a r uma s o l u ç ã o Qtima com um b especifico. Porém se é d e

-

s e j a d o o b t e r uma s o l u ç ã o ou s o l u ç õ e s õ t i m a s p a r a

m b

em t o r n o de h , o metodo 6 recomendado.

(45)

Considerem- se a s c o n d i ç õ e s d e o t i m a l i d a d e primal-dud p a r a o problema P. Sejam ai ( i = 1 , a s v a r i á v e i s duabS

n que correspondem à s r e s t r i ç ó e s L a .

.

x

.

c bi

,

e y

.

( j =l

,

.

.

:;R) j = l J-I 7 - I a s v a r i a v e i s d u a i s que correspondem 2s r e s t r i ç õ e s O - < x j - < 1, E n

-

t ã o Q problema d u a l d e P, s e r á s u j e i t o a m

Teorema 3 . A s s o l u q õ e s ó t i m a s d e (-8) que possam ser g e r a d a s m e

-

d i a n t e o mêtodo Bual de ~ecomposbçãcs (.Ia, F a s e ) coincidem r com

a s s o l u ç õ e s t o t a l m e n t e i n t e i r a s d e P

se1

g e r a uma so1uç% ó t i m a

5

p a r a o problema (-8) com b =

5,

E n

-

t ã o

5

é uma soluq,Go v i g v e l p a r a P e s a t i s f a z a s c o n d i ç õ e s ( 1 3 ) n: e (-14)-. S e j a f3 =

c

-

C uiaije j j i=l P o r t a n t o e x i s t e u . 1- > O t a l que n X a .Ç: = bi j p a r a ui>O, e j = i T, a . . X . c bi p a r a ui = O j=l 11 3 -

(46)

S e e s c o l h e um ai = u t a l que a condição ( 1 7 ) e a i - -

c o n d i ç ã o ( ~ e o r e m a das f o l g a s complementares)

sejam s a t i s f e i t a s , e n t ã o d e (-161 ternos

S e j a a condição (Teorema d a s f o l g a s complementares)

Tendo Y j = max cO B - 1 -3

s ã o s a t i s f e i t a s

P o r t a n t s a s:slução t o t a l m e n t e i n t e i r a

2

uma s o l u - qão ó t i m a de P .

Agora, suponha que e x i s t e m a s o l u ç ã o Qtima t o t a l m e n

-

t e I n t e i r a x* p a r a o problema I?, e s s a s o l u ç ã o e s t a r 5 a s s o c i a d a com um determfnado ai e y j . S e j a

(47)

suponhamos que x: = Q, e n t ã o p o r ( 2 1 ) , temos que y = O , e de

3 j

( 1 6 ) temos que Yi =B e de ( 1 8 ) s e tem

B

> O . Da c o n d i ç ã o ( l 3 )

n j j -

temos que a x* < b e p a r a u i l O s e tem de ( 1 9 ) que n - j = l i J - i

aijx; = bi. P o r t a n t o x* pode s e r g e r a d a p e l o métddo B.ual de j = l

I% composição

.m

~ t a g o r a mostramos como t r a n s f o r m a r o problema é (8) e m um problema i r r e s t r i t o (-9) onde a s r e s t r i ç õ e s

sãs

i n c l u f d a s n a função o b j e t i v o , porem nada f ~ i d i t o a i n d a s o b r e a forma de c a l c u l a r u p a r a o b t e r o máximo da função z ( - u ) .

O Teorema 2 g a r a n t e que q u a l q u e r máximo da função i r r e s t r i t a c9)_ n e c e s s a r i a m e n t e uma s o l u ç ã o do problema de

ma

-

ximo r e s t r i t o p a r a A x - <Ax*. 5 . 1 , S o l u ç 6 e s

5

-

v i á v e i s Em a l g u n s c a s o s o s v a l o r e s de u > O que f i z e r e m - Ax

-

h < - O poderão não e x i s t i r e n e s t e c a s o e x i s t i r ã o v a l o r e s d e

u

p a r a o s q u a i ç Ax* s e aproximará de b ; x* 6 c o n s i d e r a d a en

-

tão uma "boa" s o l u ç ã o e e s t a s s e l u ç õ e s s e r a o chamadas de

c-vi5

-

v e i s .

<

6 wi e s c a l a r

<

> O e é d e f i n i d o a r b i t r a r i a m e n t e . A s s i m

uma s o l u ç a o s e r 5

c

-

v i a v e & s e s a t i s i a z . Ax*

-

b - <

c

b.

Um o u t r o problema p a r a a c h a r a s s $ u ç ~ a Stima d e ( 9 )

Referências

Documentos relacionados