O PROBLEMA DE SCHEDULING
EM JOB-SHOP
SOLUÇÃO POR APROXIMAÇÃO COM ALGORITMO
GENÉTICO
Estrutura
Introdução
 Objetivos
 Tópicos para revisão da literatura
 Metodologia a ser adotada
 Comentários

Introdução
Sobrevivência no mercado está associada ao
planejamento e controle da produção, que atua também
na programação da produção com o escalonamento de
atividades;

O escalonamento é peça fundamental na tomada de
decisão, tanto de manufatura como de serviços.

Introdução
WALTER (1999) considera que organizar os
processos produtivos frente a um planejamento maior é
objetivar um melhor atendimento de prazos ou datas de
entrega, minimização de tempos de fluxos dos estoques
intermediários, maximização da capacidade disponível.


Sistemas discretos e contínuos;

Job-shop e escalonamento;
Estrutura
Introdução
 Objetivos
 Tópicos para revisão da literatura
 Metodologia a ser adotada
 Comentários

Objetivos

OBJETIVO GERAL
Desenvolver método baseado em algoritmo
genético para solucionar schedulings em Job-Shops,
com soluções eficientes em tempo computacional
satisfatório.
Estrutura
Introdução
 Objetivos
 Tópicos para revisão da literatura
 Metodologia a ser adotada
 Comentários

Tópicos para revisão da literatura
O problema de scheduling de Job-Shop:
 Algoritmos genéticos;
 Representação genética das soluções;

Tópicos para revisão da literatura





Introdução
Objetivos
Tópicos para revisão
da literatura
Metodologia a ser
adotada
Comentários



O problema de
scheduling de Job-Shop;
Algoritmos genéticos;
Representação genética
das soluções;
O JSSP
Em linhas gerais, um job-shop é uma organização
funcional cujos departamentos são organizados em
torno de processos particulares, os quais consistem em
tipos específicos e/ou operações, tais como perfuração
e montagem em uma fábrica, operações de leitura ótica
e impressão em um laboratório de computação.
Os bens produzidos ou os serviços oferecidos são
originados por pedidos individuais de um cliente
específico.
O JSSP
Especificamente, o Job-Shop pode ser definido
como sendo um conjunto de N jobs J={J1, J2, ..., JN} a
serem processados em M máquinas disponíveis
M={M1, M2, ..., MM}.
Cada job possui uma ordem de execução
específica entre cada uma das máquinas, ou seja, um
job é composto de uma lista ordenada de operações,
cada qual definida pela máquina requerida e pelo
tempo de processamento na mesma.
O JSSP
As restrições que podem ser seguidas são:





Operações não podem ser interrompidas, e cada máquina
pode processar apenas uma operação de cada vez;
Cada job só pode ser processado em apenas uma máquina
por vez;
Cada job é processado por uma seqüência conhecida de
operações;
Não existe restrições de precedência entre operações de
diferentes jobs;
Não existe relação de precedência entre as operações
executadas por uma mesma máquina;
O JSSP
Definidas as sequências de máquina de cada job, o
problema consiste em determinar as seqüências dos
jobs em cada máquina, de forma que o tempo de
execução transcorrido, desde o início do primeiro job
até o término so último, seja mínimo.
A medida de qualidade empregada, conhecida por
makespan não é única, mas é o critério mais simples e
mais largamente usado.
Normalmente o número de restrições é muito
grande, tornando o Job-Shop um dos problemas mais
difíceis de ser solucionado.
O JSSP
Exemplo (j=3/m=3 Job-shop):
Como distribuir o melhor arranjo de tarefas
para as máquinas M1, M2 e M3 ?
O JSSP
Exemplo (cont):
Solução:
31 unidades de tempo
O JSSP
Os JSSP’s e casos de scheduling similares são
problemas de otimização combinatória, classificados
como problemas NP-hard (GOLDBARG E LUNA,
2000). Apesar de existirem métodos exatos, é quase
impossível resolvê-los desta forma, exceto para
exemplos relativamente pequenos do problema.
O JSSP
Em ambientes de produção reais, é suficiente obter
resultados próximos do ótimo, mas em tempo
computacional razoável, conseguido com os métodos
heurísticos.
São aproximações importantes aplicadas ao JSSP:
Busca Tabu (TS) (BARNES e CHAMBERS, 1995),
Simulated Annealing (SA) e Algoritmos Genéticos
(AG) (YAMADA e NAKANO, 1997).
Muito utilizados em problemas de scheduling, os
AGs demonstram maior versatilidade ante outras, dada
a facilidade na codificação do espaço do problema
(STORER et al 1995).
Algoritmos genéticos
É uma técnica heurística que consiste na busca de soluções
baseadas em mecanismos da seleção natural e genética.
Inicialmente estudados por HOLLAND (1975), fundamentaramse pela teoria geral de sistemas e adaptação robusta, com
aplicação prática na determinação de máximos e mínimos de
funções matemáticas.
Em linhas gerais, partindo de uma população inicial, cada
indivíduo passará pelas etapas tripartites do algoritmo como parte
da busca por soluções ótimas: reprodução, crossover e mutação
(GOLDBERG, 1989).
Tópicos para revisão da literatura





Introdução
Objetivos
Tópicos para revisão
da literatura
Metodologia a ser
adotada
Comentários



O problema de
scheduling de Job-Shop;
Algoritmos genéticos;
Representação genética
das soluções;
Algoritmos genéticos
Os AGs diferem das outras
apresentar características distintas:




heurísticas
por
opera em um conjunto de pontos (população) e não a partir
de pontos isolados;
opera em um espaço de soluções codificadas e não
diretamente no espaço de busca;
necessita como informação, somente o valor de uma função
objetivo (função de adaptabilidade, ou fitness);
usa transições probabilísticas e não regras determinísticas
(GOLDBARG e LUNA, 2000).
Algoritmos Genéticos
Analogia entre um AG numérico e a genética biológica
Fonte: HAUPT&HAUPT, 2004
Algoritmos Genéticos
Fluxograma de um algoritmo genético
Fonte: HAUPT&HAUPT, 2004
Algoritmos Genéticos
Geração de dois filhos por meio de cruzamento de pais selecionados.
Fonte: HAUPT&HAUPT, 2004
Algoritmos genéticos
Passo 1: Inicialização
Ler o tamanho da população, K, e taxa de mutação, pm.
Inicializar cromossomos gerando soluções factíveis no tamanho da população.
Passo 2: Cálculo do fitness
Calcular os valores de fitness de cada indivíduo da população inicial.
Passo 3: Seleção dos pais
Selecionar randomicamente dois cromossomos da população, considerando a
probabilidade de escolha associada ao fitness de cada um.
Passo 4: Geração de descendência
Empregando o operador crossover, gerar dois cromossomos a partir dos pais
selecionados no passo 3.
Passo 5: Fim da geração de descendência
Repetir os passos 3 e 4 se o tamanho da geração de descendentes for < K; caso
contrário, ir para o passo 6.
Passo 6: Mutação
Para cada indivíduo da população, varrer os elementos de cada cromossomo,
modificando-os randomicamente, com probabilidade pm.
Passo 7: Cálculo do fitness
Calcular o fitness para os cromossomos descendentes.
Passo 8: Finalização
Caso o critério de finalização seja alcançado, parar; caso contrário, dirigir-se ao passo 3.
Fonte: RODRIGUES et ali, 2003
Algoritmos genéticos
O tamanho da população é um dos principais
fatores de controle de um algoritmo genético,
entretanto, é preciso considerar ainda a taxa de
ocorrência de mutações e o número de gerações,
além de outros fatores, como o número de gerações
sem melhoras significativas quanto ao melhor
indivíduo encontrado.
Tópicos para revisão da literatura





Introdução
Objetivos
Tópicos para revisão
da literatura
Metodologia a ser
adotada
Comentários



O problema de
scheduling de Job-Shop;
Algoritmos genéticos;
Representação genética
das soluções;
Codificação das soluções
Exemplo: Problema do Caixeiro Viajante
Esquema de codificação
- Exemplo de solução válida para o problema:
Indivíduo e cromossomo
Cromossomo: 001 100 010 001
Indivíduo: ACBA
Estrutura
Introdução
 Objetivos
 Tópicos para revisão da literatura
 Metodologia a ser adotada
 Comentários

Proposta metodológica
Inicialmente,
desenvolver
pesquisa
bibliográfica sobre o tema, aprofundando o
assunto de JSSP, bem como do uso de AGs na
busca de soluções para o problema.
Posteriormente, desenvolver avaliações das
soluções encontradas para um dado problema
apresentado e avaliar o comportamento ante
diferentes
tratamentos
de
operadores
crossover.
Estrutura
Introdução
 Objetivos
 Tópicos para revisão da literatura
 Metodologia a ser adotada
 Comentários

Comentários
Download

Apresentação 01 - Prof. Sérgio Mayerle