Slide 1 - Prof. Sérgio Mayerle

Propaganda
O PROBLEMA DE SCHEDULING
EM JOB-SHOP
SOLUÇÃO POR APROXIMAÇÃO
Estrutura do trabalho
1. Introdução
1.2. O problema de job-shop scheduling
1.2.1. Representação por grafos disjuntivos
1.2.2. Construção de escalas
1.2.3. Representação binária
3. Algortimos genéticos
3.1 Conceitos básicos
3.2 Algoritmo genético simples
3.3 O procedimento de um algoritmo
genetico simples
2. Técnicas para solucionar os JSSP
2.1. Soluções ótimas
2.2. Soluções aproximadas
2.2.1. Regras de despacho
2.2.2. Metaheurísticas
2.2.2.1. Algoritmos genéticos
2.2.2.2. Simulated annealing
2.2.2.3. Outros procedimentos de busca
local e modelos híbridos
2.2.3. Outras soluções não ótimas
2.4. Conclusões
4 Um algoritmo genético simples no
problema de scheduling de job-shop
4.1 Codificação genética de uma solução
de schedule
4.2 Harmonização local
4.3 Harmonização Global
4.4 Forcing
4.5 Algoritmo genético simples para o Jobshop
4.6 Limitações para uma aproximação
simples
......
Estrutura

Meta-heurísticas

Simulated Annealing (tempera simulada)
Simulated Annealing
Sua origem vem de 1953, quando foi
usada para simular em um computador o
processo de “annealing” de cristais, por
Metropolis (1953).
O uso deste método na solução de
problemas de otimização combinatória
surgiu mais tarde [Kirkpatrick et al., 1983],
[Aragon et al., 1984].
Simulated Annealing
Annealing físico: processo térmico para
obtenção de sólidos em estado de mínima
energia.
Elevação da temperatura do banho térmico
até que seja encontrado o ponto de fusão do
sólido, onde os átomos que o compõe moverse-ão livremente;
 Redução lenta e gradual da temperatura do
banho térmico até que o sólido volte a ficar
enrijecido.

Simulated Annealing
A redução cuidadosa da temperatura do
banho térmico é fundamental para que se
alcance um equilíbrio térmico no qual os átomos
tenham tempo suficiente para se organizarem
em uma estrutura uniforme, tornando-se
consistentes e rígidos, com um estado mínimo
de energia. Para que esse equilíbrio térmico
seja alcançado é indispensável, ainda, que a
temperatura máxima seja suficientemente alta,
EGLESE, 1990.
Simulated Annealing
Estrutura inicial
(desorganizado)
Estrutura após annealing
(organizado)
Fonte: Batistus (2001)
Simulated Annealing
Estados mínimos de energia caracterizamse por uma perfeição estrutural do material
submetido ao annealing que não se obteria se
o resfriamento não fosse gradual.
Em condições menos cuidadosas de
resfriamento, o material se cristalizaria com uma
energia “localmente mínima”, ou seja, a
estrutura atômica do material seria irregular e
fraca, com imperfeições.
Simulated Annealing
A técnica de S.A. é considerada um algoritmo de
busca local.
São permitidos movimentos que aumentem o valor
da função objetivo, mas sua freqüência é governada por
uma função de probabilidade que vai se alterando no
decorrer da heurística.
A probabilidade de uma certa configuração ter sua
energia aumentada de um E é de:
p(E)= e -E/T
Fonte: França (2006)
Simulated Annealing

A estratégia utilizada é, a partir de uma alta
temperatura, ser permitido alterações ruins, pois
estamos longe do ótimo local.

Posteriormente, a temperatura irá diminuindo e
a possibilidade de alterações ruins vai se
reduzindo, pois estamos próximos do ótimo
global.
Fonte: França (2006)
Simulated Annealing

Parâmetros do simulated annealing
– T0 = temperatura inicial.
– Tf = temperatura final.
– L = número de iterações para atingir o equilíbrio em
uma dada temperatura.
– α = proporção de redução da temperatura.
Fonte: França (2006)
Simulated Annealing

Temperatura Inicial
– chute total, mas um valor suficientemente alto para
que soluções ruins sejam aceitas com bastante
freqüência no início da heurística.
Fonte: França (2006)
Simulated Annealing

Processo de redução (alteração) da temperatura
– esse escolha depende de quanto se quer explorar
determinadas regiões.
– através do parâmetro α (0.8 a 0.99).
– atualização
T0 = Custo(S1) - Custo(S0)
Ti+1 = [Ti + Custo(Si+1) - Custo(Si)]/2
(ou ainda a média feita durante o período de equilíbrio)
Fonte: França (2006)
Simulated Annealing

Número de iterações para atingir o equilíbrio em
uma dada temperatura.
– número fixo de iterações.
– depois de um certo tempo/iterações sem alterar o
valor da incumbente.
– o número de iterações/tempo pode estar relacionado
com o tamanho do problema.
– pode também estar relacionado com a vizinhança
escolhida.
Fonte: França (2006)
Algoritmo básico
Fonte: França (2006)
Exemplo
Exemplo: Tem-se o gráfico de f(x).
Supor que se deseja determinar o mínimo global B de f(x) a
partir do ponto x0.
O Simulated annealing pode convergir de xo para x1 e
depois de x1 para B (mínimo global). Entretanto é possível que o
processo de otimização convirja para x2 e, assim, para A.
Exemplo
Função:
g(x)=1+cos(x)
Parâmetros
>> x0=0;
>> t0=2.5;
>> tf=1E-9;
>> xmax=2*pi;
>> xmin=0;
>> niter=10;
>> f0=1+cos(x0);
>> centro=x0;
Exemplo
tfinal =
1.7656 seg.
t_otimo =
9.9991e-009
x=
3.1415
Erro% =
0.0045
INICIO
Definição dos parâmetros de controle
INICIALIZAR: CENTRO e MELHOR VALOR DA FUNÇÃO OBJETIVO (T*)
GERAÇÃO DE NOVA CONFIGURAÇÃO:
(SHAKE)
Gerar: r1, r2, r3, r4 (
ri U 0,1 , i )
r = r1 + r2 – r3 – r4 (r como média zero)
Calcular:
x= centro + T*. r
EVOLUÇÃO: Calcular f(X)
Centro = X
X ótimo = X
F ótimo = f(X)
S
F(X) < F ótimo ?
N
Calcular probabilidade:
E
P(E )  e Kb.T
N
Nova temp. ?
r < P(ΔE) ?
N
S
Centro = X
S
Resfriamento:
T  T * .rk
rt  e
N
 Tf 
ln  
 Ti 
n 1
Sistema
Esfriou
?
S
X quase-ótimo
F(X) mínimo
FIM
Desvantagens

A princípio é necessário um processo lento de
redução da temperatura e isso resulta em
tempos de processamento elevados.

Pouco “inteligente”, pois utiliza como informação
do problema somente a variação do valor da
função objetivo.

Muitos parâmetros para “calibrar”.
Fonte: França (2006)
Comentários

Pela simplicidade de implementação, pode ser
utilizado em conjunto com alguma outra
heurística ou meta-heurística.

Existem implementações, onde apenas a idéia
de simulated annealing é utilizado para melhorar
o desempenho de outra heurística / metaheurística, como por exemplo, embutir a
estratégia de aceitar soluções ruins com certa
probabilidade.
Fonte: França (2006)
Referências
IGNACIO, A. A. V.; FERREIRA FILHO, V. J. M.; GALVÃO, R. D. Métodos heurísticos
num entorno paralelo. In: SIMPÓSIO BRASILEIRO DE PESQUISA
OPERACIONAL, 32., 2000, Viçosa. Viçosa: Universidade Federal de Viçosa, 2000.
p. 769-788.
KIRKPATRICK Jr., S.; GELATT, C.; VECCHI, M. Optimization by simulated annealing.
Decision Science, v. 220, n. 4598, p. 498-516, 1983.
RODRIGUES, et all, Metaheurística simulated Annealing para solução de problemas de
planejamento florestal com restriçòes de integridade, Revista Árvore, Viçosa, MG,
V.28, n. 2, p.247-256, 2004.
YAMADA, T. e NAKANO R., Genetic Algorithms for Job-Shop Scheduling Problems.
Proceedings of Modern Heuristic for Decision Support, p. 67-81, Londres, Março
de 1997.
FRANÇA, P. M., Notas de aula: EA 043 - Programação da Produção em Sistemas de
Manufatura,
Unicamp,
Campinas-SP,
obtido
em
12/10/2006,
www.densis.fee.unicamp.br/~franca/EA043/Transpa-sa.pdf
Download