Title: Intelig
1Inteligência Artificial Aplicada aSistemas de
Controle e AutomaçãoDAS 6607
- Simulador da Produção
- Departamento de Automação e Sistemas
- Universidade Federal de Santa Catarina
- ProfessorGuilherme Bittencourt
- Aluno Denis Pinha
2Tópicos
- Introdução
- Exemplo de um problema (Contexto)
- Universo de Soluções, complexidade e técnicas
para resolver o problema - Hierarquia dos frames (objetos ou conceitos) de
um simulador de fábrica - Apresentação básica de um simulador de produção
desenvolvido para uma empresa
3Introdução O que é Inteligência Artificial?
Conjunto de técnicas para resolver problemas
complexos, isto é, problemas que, apesar de não
ter solução algorítmica , são solucionados por
seres humanos.
4Introdução ao ambiente fabril
- o conhecimento sobre o mundo não precisa,
necessariamente, - obedecer a nenhuma propriedade matemática global,
como - coerência ou completude. Sua adequação deve ser
medida pela sua - utilidade na solução de problemas práticos
Ex Cabine de Pintura , Operações Simultâneas,
Peças Conjugadas, Estoque Alto
5SEQÜENCIAMENTO DA PRODUÇÃO
- Problema Introdutório
- O Caso dos Leitores
6EnunciadoParte 1
Alberto (A), Bruno (B), Carlos (C) e Daniel
(D) moram juntos. Aos domingos, pela manhã,
gostam de ler os jornais O Globo (Gl), Jornal
do Brasil (JB), O Dia (Di) e o semanário
Casseta e Planeta (CP), que recebem à porta de
casa por volta das 800 horas. Além disso, após
todos terem lido todos os jornais, desejam sair
juntos, e o mais cedo possível, para a praia no
(único) carro que possuem. A hora em que acordam,
bem como a ordem em que preferem ler os jornais
e os respectivos tempos de leitura, podem ser
vistos no quadro apresentado a seguir. Por uma
questão de organização, os jornais não são
subdivididos em partes ou cadernos e, portanto,
só podem ser lidos por uma pessoa de cada vez.
7Dados
8Questões
Supondo que os quatro amigos conseguem se
alimentar e realizar as suas higienes matinais
enquanto estão lendo os jornais, pergunta-se
- Qual a relação deste enunciado com o de um
problema de programação e controle da produção?
Isto é, o que seriam neste enunciado os
- Produtos ou itens
- Máquinas ou recursos de produção
- Tempos de operação ou de fabricação
- Roteiros de produção
- Prioridades ou seqüências de produção
- Quais técnicas ou ferramentas de Sistemas,
Planejamento e Controle da Produção e/ou Pesquisa
Operacional podem ser usadas para a solução do
problema ?
9Questões
- Qual a seqüência de leitura de cada jornal
(isto é, quem lê o quê em primeiro, segundo,
terceiro e quarto lugar) que permite a Alberto,
Bruno, Carlos e Daniel saírem juntos o mais cedo
possível para a praia? Que hora é esta ?
- É possível provar que a resposta dada ao item
anterior é a resposta ótima do problema ? Como ?
- Supondo que os quatro amigos possam ler os
jornais em qualquer ordem, quantas soluções
possíveis tem esse problema?
10Questões
- Nesse caso, considerando que um computador
rápido leva um segundo para processar (isto é,
encontrar e avaliar) mil soluções possíveis do
problema, qual o tempo computacional necessário
para pesquisar todo o universo de soluções com o
objetivo de se encontrar a solução ótima ?
Expresse este tempo na maior unidade possível
(isto é segundos, minutos, hora, dia, semanas,
meses ou o que for apropriado).
- Como este tempo computacional cresceria se o
número de leitores passasse a ser cinco ? E se
fossem seis os leitores ? E se fossem sete ?
11SEQÜENCIAMENTO DA PRODUÇÃO
- Problema Introdutório
- O Caso dos Leitores
12Analogias
- Qual a relação do problema com a programação e
controle da produção? Isto é, o que seriam no
enunciado os
- Seriam as pessoas Alberto, Bruno, Carlos e
Daniel.
- Máquinas ou recursos de produção ?
- Seriam os jornais Jornal do Brasil, Globo, Dia e
Planeta.
- Tempos de operação ou de fabricação ?
- Seriam os tempos estimados de leitura.
13Solução Gráfica
- Qual a seqüência de leitura de cada jornal
(isto é, quem lê o quê em primeiro, segundo,
terceiro e quarto lugar) que permite ao Alberto,
Bruno, Carlos e Daniel saírem juntos o mais cedo
possível para a praia? Que hora é esta ?
- Para solução da questão será utilizado um método
de "tentativas e erros". Serão testadas três
alternativas baseadas em três hipóteses distintas
de priorização (isto é, seqüência de leitura de
cada jornal), escolhendo-se o melhor resultado
obtido.
14Solução 1
A
D
B
C
B
D
C
A
C
D
B
A
D
B
C
A
15Solução 1 / Observações
- O Roteiro (que é uma restrição do problema) pode
levar a jornais ociosos .
ex às 1000 horas, Bruno pega O Dia ao invés
do Jornal do Brasil (que assim fica mais tempo
ocioso), porque o seu roteiro obriga que assim
seja.
16Solução 1 / Observações
- A Seqüência (que é fruto da solução adotada)
pode levar a leitores ociosos .
ex às 1015 horas, Carlos pode pegar o Jornal
do Brasil mas tem que esperar Daniel, porque a
seqüência de produção adotada obriga que assim
seja.
17Solução 3
A
D
C
B
B
D
A
C
C
D
A
B
D
B
C
A
18Conclusão do Problema
Comparando-se as três soluções verifica-se que a
melhor solução é a terceira. Um resultado nada
óbvio já que das três hipóteses examinadas essa é
aquela onde mais leitores são submetidos a
esperas forçadas (vide quadro abaixo).
19Conclusão
Portanto, decisões locais que, à primeira
vista, possam parecer irracionais,
Por exemplo, Alberto acorda, todos continuam
dormindo, o seu jornal preferido (JB) está
disponível, e mesmo assim ele é impedido de lê-lo
antes de Carlos que, por sua vez, só acordará 15
minutos depois, e ainda lerá 2 outros jornais
antes de pegar o JB !
numa visão global e estruturada do problema -
proporcionada pelo gráfico de Gantt - mostram-se
perfeitamente lógicas .
Aqui, o entendimento integral do problema
mostra como a paciência (de Alberto, Bruno e
Daniel) pode ser uma virtude necessária e
compensadora !
20Análise do Melhor Caso
- Como provar que esta resposta é ótima ?
21Solução Ótima
- O que não significa que seja a única solução
ótima !
- Por exemplo, podemos só inverter os 2 últimos
leitores do Planeta na Solução 3
22Universo de Soluções
- Caso os quatro amigos possam ler os jornais em
qualquer ordem, quantas soluções possíveis tem
esse problema ?
- Se houvesse apenas um jornal, haveria (4 !) 24
soluções de seqüenciamento. - Como, entretanto, há quatro jornais em questão e
o seqüenciamento da leitura de cada um deles é
independente da seqüência de leitura dos demais,
há (4 !)4 331.776 soluções.
- Com efeito, o número de soluções possíveis
(factíveis e não factíveis) de seqüenciamento é
da ordem de (n !)m, onde n são os itens e m são
os recursos envolvidos no problema.
23Complexidade do Problema
- Neste caso, considerando que um computador rápido
leva um segundo para processar (isto é, encontrar
e avaliar) mil soluções possíveis do problema,
qual o tempo computacional necessário para
pesquisar todo o universo de soluções com o
objetivo de se encontrar a solução ótima ?
Expresse este tempo na maior unidade possível
(isto é, segundos, minutos, horas, dias, semanas,
meses ou o que for apropriado).
- 331.776 soluções / 1000 soluções por segundo /
60 5 ½ minutos
24Natureza Combinatória Explosiva
- Como este tempo computacional cresceria se o
número de leitores passasse a ser cinco ? - E se fossem seis leitores ?
- E se fossem sete ?
331.776
5,5 minutos
2,1 x 10 8
2,4 dias !
2,7 x 10 11
8,5 anos !!
6,5 x 10 14
205 séculos !!!!
25Técnicas para Resolver o Problema
- Quais técnicas ou ferramentas de Administração,
Sistemas (Sistema Multiagente (SMA) ,
Planejamento e Controle e/ou Pesquisa Operacional
podem ser usadas para a solução do problema ?
- Ferramentas gráficas (e.g. gráficos de Gantt),
métodos analíticos ou matemáticos (e.g.
programação linear, programação combinatorial,
programação inteira, programação dinâmica) e
métodos heurísticos, baseados no bom-senso (e.g
modelos de simulação computacional).
26Métodos heurísticos
Diante da complexidade do problema de
programação, analisaremos agora quatro métodos
estruturados para resolução do problema. São
eles
- PROGRAMAÇÃO PARA FRENTE (pedido a pedido) gt
comumente (embora imprecisamente) chamado de
FORWARD PLANNING
- PROGRAMAÇÃO PARA TRÁS BASEADA NA ABORDAGEM MRP
(pedido a pedido) gt comumente (embora
imprecisamente) chamado de BACKWARD PLANNING
- PROGRAMAÇÃO BASEADA NA TEORIA DAS RESTRIÇÕES
(operação a operação) gt também chamado de
PROGRAMA-ÇÃO MISTA
- PROGRAMAÇÃO POR SIMULAÇÃO (operação a operação)
gt também chamado (embora imprecisamente) de
PROGRAMA-ÇÃO POR CAPACIDADE FINITA
27Programação por Simulação
Com os dados do problema dos Leitores, construa
uma solução estruturada baseada na PROGRAMAÇÃO
POR SIMULAÇÃO (operação a operação). Utilize
para tanto a seguinte lógica de construção
- Avance o relógio da simulação até o instante
onde ocorre o primeiro evento significativo (por
exemplo, a chegada de um material, o fim de
processamento num recurso, etc.)
- Com base no critério de prioridade adotado (MDE),
identifique os pedidos que podem ser processados
nesse instante no recurso em questão e selecione
o mais prioritário para programação.
- Repita o passo 2 até que todas as operações
tenham sido programadas.
28Regras Heurísticas de Carregamento
- PEPS (Primeiro a entrar deve ser o primeiro a
sair) - MTP (Item de menor tempo de processamento deve
ser processado primeiro) - MDE (Item com data de entrega mais apertada deve
ser processado primeiro) - Maior Multa (Item que induz a maior multa deve
ser processado primeiro) - Maior Preço (Item que induz a maior preço deve
ser processado primeiro) - Menor Folga (Item que tem a menor folga calculada
como - (Data de entrega - Instante da decisão) -
Tempo remanescente de processamento - Razão Crítica (Item que tem a menor folga
calculada como - (Data de entrega - Instante da decisão) /
Tempo remanescente de processamento
29PEDIDOS ADIANTADOS
PEDIDOS ATRASADOS
30Complicadores do Problema
- Tempos de preparação de máquina
- Tempos de transporte
- Descontinuidades do tempo (turnos,
fins-de-semana, feriados) - Manutenção preventiva
- Perdas históricas de capacidade (e.g. manutenção
corretiva) - Disponibilidade restrita de ferramentas ou moldes
(além das máquinas) - Disponibilidade restrita de pessoal
- Limitações de orçamento
- Dinâmica de re-programação
- Fabricação para posterior montagem
31PONTUALIDADE TOTAL Diante de tal complexidade,
como chegar lá ?
PONTUALIDADE TOTAL é
Programar e controlar a produção tendo como meta
Entregar 100 dos pedidos no prazo de acordo com
as especificações técnicas e o orçamento combinado
32PONTUALIDADE TOTAL Ações indicadas
1. Planejar antecipadamente 2. Programar
realisticamente considerando os limites
existentes de capacidade 3. Programar com
folga 4. Programar detalhadamente o curto
prazo 5. Explorar as possibilidades de
seqüenciamento existentes 6. Explorar as
possibilidades ligadas ao uso de máquinas e
roteiros alternativos 7. Explorar as
possibilidades de ajuste do nível de capacidade
(e.g. horas-extras, subcontratações) 8. Explorar
as possibilidades de apressamento (i.e.
expeditação) de pedidos urgentes 9. Explorar as
possibilidades de antecipação do recebimento de
materiais críticos 10. Explorar as possibilidades
ligadas ao uso de projetos, processos e materiais
alternativos 11. Antecipar para os clientes
possíveis problemas de entrega, quando
inevitáveis 12. Prometer prazos e/ou decidir
aceitar encomendas considerando os compromissos
já assumidos 13. Acompanhar o andamento e a
pontualidade dos processos internos 14. Replanejar
rapidamente e sempre que fatos significativos
aconteçam sem terem sido previstos
33PONTUALIDADE TOTAL Ações indicadas
15. Evitar grandes antecipações na produção de
componentes não-críticos 16. Apresentar os custos
e benefícios de cada possível solução de
programação 17. Identificar as operações e
recursos críticos para concentrar neles os
ajustes de capacidade (horas-extras,
subcontratações)
18. Programar para dispor dos equipamentos o mais
cedo possível (e faturar o quanto antes)
19. Conhecer (representar) as alternativas de
gestão de curto prazo para exploração sistemática
34Simulação com capacidade finita Acionamento x
Dimensionamento x Projetos
Simuladores voltados a programação do dia-a-dia e
acionamento Factor, Schedulex, Leitstand,
AHP-Leitstand, Auto-sched, Moopi, MPSwin, Infor,
CA-Quick, Pacemaker, Preactor, CB/Plan, Response
Agent, Fact, MicroPlanner, Metashop, Job-shop,
Syn-Quest, Ortems, AutoSched, Broner, Process,
See-The-Future (BR)
Simuladores voltados a programação do
dia-a-dia Manugistics, Goal System, Thru-put,
Drummer, Rhythm
Simuladores voltados ao dimensionamento do
sistema de produção Promodel, Arena, See-why,
Forssight
Simuladores voltados a gestão de projetos Scitor
OS Suite, Concerto
35Exemplo simplificado de hierarquias de objetos e
seus respectivos atributos para um simulador de
manufatura (Fábrica)
Fábrica
Recursos Onde
Plano de Produção Quanto
Engenharia O que e Como Faz
Máquinas
Operadores
Ferramentas
Clientes
Tempo de Transporte
Prioridade
Data
Tipo Contínuo, Taxa
Habilitação
Serventia Processamento, Setup, Transporte
Pedidos
Valor de Venda
Rendimento
Classe
Quantidade
Tempo Setup
Estoques
Acabado , Manufaturado e Materiais,
Horários
Custo Variável
Situação
Tipos de Operação
Horários
36Fontes
BITTENCOURT , Guilherme - Notas de Aula da
Disciplina DAS 6607 - 2007 COSTA, R, 1996,
Pontualidade total na produção sob encomenda
conceito, tecnologia e uso da simulação
computacional na gestão do chão de fábrica. Ph.D
dissertação, Universidade Federal do Rio de
Janeiro, Rio de Janeiro, Rio de Janeiro, Brasil.
37Obrigado pela atençãoe-mail
denis_at_trilhaprojetos.com.brdenispin_at_das.ufsc.b
rPágina www.trilhaprojetos.com.br