Escolar Documentos
Profissional Documentos
Cultura Documentos
Resolução de Problemas de
Programação Linear com Software de
Otimização
1)
s.a.
SUBJECT TO
1) 66.66666
NO. ITERATIONS= 1
C – MODELO SOMATORIO
n = numero de produtos
m = numero de maquinas
k = numero de empregados
lucro = lucro por produto i
restricoes = componentes da producao, soma de m maquinas e k empreg.
potvenda = potencial de venda de cada produto i
x = quantidade de produtos vendidos i
s.a.
para (j de 1..m + k): soma (i de 1..n) modelo (j,i) * x (i) <= restricoes (j)
para (i de 1..n): x (i) >= 0
para (i de 1..n): x (i) <= potvenda (i)
D – MODELO XPRESS
declarations
m = 5 !No de comp. de producao, soma de m maquinas e k tipos de mo
n = 4 !No de produtos
end-declarations
!Inicio do modelo
Lucro::[10, 8, 9, 7]
Restricoes::[80, 50, 80, 20, 40]
Potvenda::[70, 60, 40, 20]
Modelo:: [2, 5, 6, 3,
8, 4, 2, 7,
5, 4, 8, 7,
3, 6, 8, 5,
3, 2, 9, 6 ]
!Restricoes
!Resolucao do modelo
maximize(Lucrototal)
end-model
Funcao objetivo:63.6207
Valor de x(1) é 6.2069
Valor de x(2) é 0
Valor de x(3) é 0.172414
Valor de x(4) é 0
declarations
m = 6 !No de comp. de producao, soma de m maquinas e k tipos de mo
n = 5 !No de produtos
end-declarations
!Inicio do modelo
Lucro::[10, 8, 9, 7, 7]
Restricoes::[80, 50, 80, 60, 40, 60]
Potvenda::[70, 60, 40, 20, 40]
Modelo:: [2, 5, 6, 3, 3,
8, 4, 2, 7, 7,
5, 4, 8, 7, 7,
3, 6, 8, 5, 5,
3, 2, 9, 6, 6 ]
!Restricoes
!Resolucao do modelo
maximize(Lucrototal)
forall (i in 1..n)
writeln("Valor de x(", i, ") é ", getsol(x(i)))
end-model
Funcao objetivo:93.7313
Valor de x(1) é 2.91045
Valor de x(2) é 5.5597
Valor de x(3) é 2.23881
Valor de x(4) é 0
Valor de x(5) é 0
2)
s.a.
para (j de 1..n): soma (i de 1..m) horas (j,i) * x (i,j) <= tempo (j)
para (i de 1..m, j in 1..n) x (i,j) >= 0
para (i de 1..m): soma (j de 1..n) horas (j,i) * x (i,j) = itens (i)
declarations
m = 3 !quantidade de itens a serem entregues para lavanderia
n = 4 !quantidade de lavanderias
custo: array (1..m, 1..n) of real
horas: array (1..m, 1..n) of real
itens: array (1..m) of real
tempo: array (1..n) of real
x: array (1..m, 1..n) of mpvar
end-declarations
horas:: [ 1, 1.5, 2, 2,
2.5, 1.5, 3, 3.5,
3, 2.5, 3, 2.5]
!funcao objetivo
!Restricoes
!Nao negatividade
forall (i in 1..m, j in 1..n) x(i,j) >= 0
!Demanda
!Tempo
!solucao do modelo
minimize(Custototal)
end-model
3 – MODELO XPRESS COM SOLUCAO – PARA VIABILIZAR A SOLUCAO O
VETOR B FOI MODIFICADO PARA B = [100, 100, 100, 100, 100]
declarations
m = 5 !quantidade de maquinas
n = 15 !quantidade de tarefas
a: array (1..m, 1..n) of real
c: array (1..m, 1..n) of real
b: array (1..m) of real
x: array (1..m, 1..n) of mpvar
end-declarations
c:: [ 17, 21, 22, 18, 24, 15, 20, 18, 19, 18, 16, 22, 24, 24, 16,
23, 16, 21, 16, 17, 16, 19, 25, 18, 21, 17, 15, 25, 17, 24,
16, 20, 16, 25, 24, 16, 17, 19, 19, 18, 20, 16, 17, 21, 24,
19, 19, 22, 22, 20, 16, 19, 17, 21, 19, 25, 23, 25, 25, 25,
18, 19, 15, 15, 21, 25, 16, 16, 23, 15, 22, 17, 19, 22, 24 ]
a:: [ 18, 19, 15, 15, 21, 25, 16, 16, 23, 15, 22, 17, 19, 22, 24,
19, 19, 22, 22, 20, 16, 19, 17, 21, 19, 25, 23, 25, 25, 25,
16, 20, 16, 25, 24, 16, 17, 19, 19, 18, 20, 16, 17, 21, 24,
23, 16, 21, 16, 17, 16, 19, 25, 18, 21, 17, 15, 25, 17, 24,
17, 21, 22, 18, 24, 15, 20, 18, 19, 18, 16, 22, 24, 24, 16 ]
!funcao objetivo
!Restricoes
minimize(rotina)
end-model
Funcao objetivo:241
x(1,1)=
x(1,2)=0 x(1,3)=0 x(1,4)=0 x(1,5)=0 x(1,6)=1 x(1,7)=0 x(1,8)=0 x(1,9)=1 x(1,10)=0 x(1,11)=1 x(1,12)=0 x(1,13)=0 x(1,14)=0 x(1,15)=1
0
x(2,1)=
x(2,2)=1 x(2,3)=0 x(2,4)=0 x(2,5)=1 x(2,6)=0 x(2,7)=0 x(2,8)=0 x(2,9)=0 x(2,10)=0 x(2,11)=0 x(2,12)=1 x(2,13)=0 x(2,14)=1 x(2,15)=0
0
x(3,1)=
x(3,2)=0 x(3,3)=0 x(3,4)=0 x(3,5)=0 x(3,6)=0 x(3,7)=0 x(3,8)=0 x(3,9)=0 x(3,10)=0 x(3,11)=0 x(3,12)=0 x(3,13)=1 x(3,14)=0 x(3,15)=0
1
x(4,1)=
x(4,2)=0 x(4,3)=0 x(4,4)=0 x(4,5)=0 x(4,6)=0 x(4,7)=0 x(4,8)=0 x(4,9)=0 x(4,10)=0 x(4,11)=0 x(4,12)=0 x(4,13)=0 x(4,14)=0 x(4,15)=0
0
x(5,1)=
x(5,2)=0 x(5,3)=1 x(5,4)=1 x(5,5)=0 x(5,6)=0 x(5,7)=1 x(5,8)=1 x(5,9)=0 x(5,10)=1 x(5,11)=0 x(5,12)=0 x(5,13)=0 x(5,14)=0 x(5,15)=0
0