Planning and Scheduling, FEUP/PRODEI /MIEIC 1
Eugénio Oliveira / Henrique L. Cardoso {eco, hlc}@fe.up.pt
Sítio web institucional
Sítio web específico: http://paginas.fe.up.pt/~eol/PRODEI/mpe1415_eng.htm
DEI- Faculdade de Engenharia da Universidade do Porto
LIACC – Laboratório de Inteligência Artificial e Ciência da Computação.
MPE(S)- Metodologias de
Planeamento e Escalonamento Planning and Scheduling Methodologies
Planning and Scheduling, FEUP/PRODEI /MIEIC 2 2
Planeamento e Escalonamento
• Em termos de IA:
– Planeamento está focado no processo computacional de seleção e ordenação (sequenciamento?) das ações e sua representação usando conhecimento.
• Planeamento (“planning”) e Escalonamento (“scheduling”) são os meios através dos quais uma organização/entidade seleciona um conjunto de ações, antes de as executar, para atingir um dado objetivo.
Planning and Scheduling, FEUP/PRODEI /MIEIC 3 3
Planeamento e Escalonamento
• Em termos de IA:
– Escalonamento está centrado no processo automático e baseao em conhecimento e dados, para a atribuição de tempos e recursos a conjuntos ordenados (sequências?) planeados de ações
• Planeamento e Escalonamento encontram-se muitas vezes interligados e as técnicas aplicáveis a uma área são frequentemente aplicáveis à (ou complementares da) outra
Planning and Scheduling, FEUP/PRODEI /MIEIC 4
Planeamento
• Resultado:
– A descrição de uma combinação de ações, incluindo as suas
respectivas restrições temporais, a serem executados por algum ou
alguns agentes
• Planeamento é o processo gerador de uma representação do
futuro comportamento de alguma(s) entidade(s), em termos de
uma descrição (eventualmente parcial) antes da sua execução.
Planning and Scheduling, FEUP/PRODEI /MIEIC 5 5
Escalonamento (“Scheduling”)
• Escalonamento é o processo de atribuir recursos limitados a
tarefas concretas ou situações ao longo do tempo para alcançar
os objetivos
• Recursos e Tarefas:
– Recursos podem ser máquinas em uma oficina, memória ou tempo de
CPU em um Computador, pistas ou tripulação em um aeroporto…
– (característica: são limitados)
– Tarefas podem ser operações a realizar em um processo de produção,
execução de Programas em Computadores, levantar e aterrar em um
aeroporto…
– (característica: usam recursos)
Planning and Scheduling, FEUP/PRODEI /MIEIC 6 6
Escalonamento (“Scheduling”)
• Objetivos e medidas de desempenho também podem tomar
diversas formas:
– Maximizar o lucro,
– Maximizar a produção,
– Minimizar o tempo gasto,
– Equilibrar compromissos de satisfação
– etc.
Planning and Scheduling, FEUP/PRODEI /MIEIC 7 7
Tópicos em Planeamento &
Escalonamento
• Práticos:
– Estudos Empiricos sobre sistemas de
planeamento/escalonamento existentes
– Técnicas dependentes do domínio; uso de heuristicas ;
– Interfaces com o Utilizador dos sistemas de Planeamento
e Escalonamento.
• Formais :
– Raciocíneo acerca de conhecimento, acção e tempo;
– Formalismos de Representação e ontologias para Pl & Esc;
– Métodos de Pesquisa de soluções
Planning and Scheduling, FEUP/PRODEI /MIEIC 8 8
Tópicos em Planeamento &
Escalonamento
• Métodos baseados em Agentes Inteligentes:
– Resolução distribuída de Problemas;
– Raciocíneo limitado pelos recursos
– Integração de reatividade e deliberação
– “Swarm Intelligence”
• Aprendizagem automática:
– Aprendizagem no contexto do planeamento e da
execução;
– Aprendizagem de novos Planos e Operadores
Planning and Scheduling, FEUP/PRODEI /MIEIC 9 9
Métodos para Planeamento &
Escalonamento
• Métodos baseados na Memória:
– Planeamento baseado em Casos
• Sistemas Reativos
– Baseado em Comportamentos reativos ao ambiente
– Controlo reativo (comportamentos, bio-inspiração)
• Robótica: Planeamento do percurso, do movimento, das
ações (manipulação, por ex.)
Planning and Scheduling, FEUP/PRODEI /MIEIC 10 10
Métodos para Planeamento &
Escalonamento
• Técnicas de melhoramento iterativo das soluções:
– Algoritmos genéticos;
– “Simulated annealing” (Arrefecimento Simulado);
– Redes Neuronais.
• Controlar a “Explosão Combinatória”
Planning and Scheduling, FEUP/PRODEI /MIEIC 11 11
Programa da Disciplina
• Planeamento: Geração Automática de Planos: – Análise Meios-Fins, Planeamento Linear, Não-Linear, Hierárquico e
Parcialmente Ordenado, Planeamento e Aprendizagem
• Modelos Determinísticos e Estocásticos de Escalonamento: – Máquina única e Máquinas paralelas, “Flow Shop, “Job Shop” e “Open
Shop”
• Complexidade das Classes de Problemas de Escalonamento:
– Classe de Problemas NP-Completos
• Definições de Planeamento e Escalonamento: – Planeamento vs Escalonamento
• Introdução às Metodologias de Planeamento e Escalonamento: – Metodos tradicionais, Problemas e Aplicações: PERT e CPM
Planning and Scheduling, FEUP/PRODEI /MIEIC 12 12
Programa da Disciplina
• Casos Práticos de Aplicação:
– Job-shop, Problemas Industriais, International Timetabling Competition
– Problemas de Planeamento: IPC – International Planning Competition
• Algoritmos para Problemas de Escalonamento: – Programação Linear, Programação Dinâmica, “Branch and Bound”
– Heurísticas de Pesquisa Local, Pesquisa Tabu, Arrefecimento Simulado, Algoritmos Genéticos, Redes Neuronais, Satisfação de Restrições.
• Escalonamento e Planeamento Cooperativos/Competitivos
• Modelização de Problemas Reais de Planeamento e Escalonamento e outros Problemas de Optimização para:
– Transportes terrestes (autocarros/comboios), Transportes Aéreos, Desportos
– Distribuição de Serviço Docente, Geração de Horários, Calendarização de Exames
Planning and Scheduling, FEUP/PRODEI /MIEIC 13 13
Resultados esperados
• Adquirir conhecimento sobre os sistemas atuais de Pl & Esc
• Compreender os problemas e selecionar as técnicas apropriadas para a sua resolução
• Entender como se pode (e quando se pode) ou não usar técnicas de IA
• Entender quando e como será útil uma abordagem cooperativa e baseada em Agentes
• Especificar e Implementar um sistema que inclua Planeamento e/ou Escalonamento aplicados
Planning and Scheduling, FEUP/PRODEI /MIEIC 14 14
Métodos de Aprendizagem
Ênfase em métodos de “Resolução de Problemas” (pr.so.) e tomada de decisões.
• Aulas
• Leitura de artigos
• Análise e experimentação de ferramentas
• Aprendizagem orientada ao projecto
Planning and Scheduling, FEUP/PRODEI /MIEIC 16 16
Avaliação
• Disciplina orientada à Investigação em Planeamento e
Escalonamento através de mini-projetos e escrita de
artigo.
• Avaliação baseada no trabalho prático com demo,
comunicação oral e escrita de artigo
• SEM EXAME!!
Planning and Scheduling, FEUP/PRODEI /MIEIC 17 17
Avaliação
• Avaliação Distribuída sem Exame:
– Mini-Projeto: 100%
• Apresentação Oral Intermédia 30%
• Implementação do sistema (ou módulo) de
Planeamento/Escalonamento:
– Artigo Científico (8/12 páginas) 40%
– Apresentação Final (oral/demo) 30%
Planning and Scheduling, FEUP/PRODEI /MIEIC 18 18
Mini-Projectos
• Competição de Horários (International Timetabling
Competition )
• Problemas de Escalonamento na Indústria da Aviação
e no controlo de recursos em aeroportos
• Escalonamento de Transportes Terrestes: autocarros e
comboios
Planning and Scheduling, FEUP/PRODEI /MIEIC 20 20
Bibliografia Base
• Joseph Leung, Laurie Kelly and James H. Anderson, Handbook of Scheduling: Algorithms, Models, and Performance Analysis, CRC Press, Inc. Boca Raton, USA, 2004, ISBN:1584883979
• Peter Brucker, Scheduling Algorithms, Fifth Edition, Springer, New York, Inc., 2007, ISBN: 978354069515
• Handbook of Metaheuristics, Editors: Michel Gendreau, Jean-Yves Potvin, International Series in Operations Research & Management Science, Volume 146 2010, Springer. ISBN: 978-1-4419-1663-1 (Print) 978-1-4419-1665-5 (Online)
• Michael Pinedo. Scheduling: Theory, Algorithms and Systems, Prentice Hall, 2001.
• Malik Ghallab, Dana Nau, and Paolo Traverso. Automated Planning – Theory and Practice, Elsevier/Morgan Kaufmann, 2004.
• Stuart Russel and Peter Norvig, Artificial Intelligence: A Modern Approach, Prentice-Hall, 3rd Edition, 2010
• Barry McCollum et al., 2nd International Timetabling Competition, [online], available at: http://www.cs.qub.ac.uk/itc2007/ (consulted on 15/02/2011)
• ICAPS, International Conference on Automated Planning and Scheduling, [online], available at http://ipc.icaps-conference.org/ (consulted on 15/02/2011)