Title: Algoritmos em Grafos
1Algoritmos em Grafos
- Celso C. Ribeiro
- Caroline T. Rocha
2- PARTE 3 CAMINHOS MAIS LONGOS E SEQÜENCIAMENTO DE
TAREFAS
3Caminhos mais Longos
- Adaptação dos algoritmos para o problema de
caminho mais curto
f mínimo f(x) - máximo - f(x)
- Condição o grafo não pode ter circuitos de
comprimento positivo.
Multiplicar as distâncias por (-1) e aplicar o
algoritmo para caminhos mais curtos
4Caminhos mais Longos
- Alternativa adaptar os algoritmos de caminhos
mais curtos para que calculem caminhos mais
longos.
5Caminhos mais Longos
- Problema central de seqüenciamento de tarefas
- Os grandes projetos exigem acompanhamento
constante e perfeita coordenação das tarefas, de
modo a - evitar atrasos
- evitar custos adicionais
6Caminhos mais Longos
- Exemplo
- Preparação da construção de um prédio
- Executar o aterro (10 dias)
- Instalar um guindaste (2 dias)
- Fazer as fundações (6 dias)
- Ligações elétricas (3 dias)
- Instalação de esgotos (5 dias)
- Restrições
- O guindaste só pode funcionar após as ligações
elétricas estarem prontas. - O guindaste é necessário para fazer as fundações.
- A instalação dos esgotos e as fundações só podem
ser executadas após o final do trabalho de aterro.
7Caminhos mais Longos
- PERT (Program Evaluation and Review Technique)
- Rede PERT
- nós representam etapas (instantes privilegiados
do projeto) - - etapa INÍCIO
- - etapa FIM
- arcos representam tarefas - tarefas reais de
duração positiva- tarefas virtuais (ou
fictícias) de duração nula para exprimir as
restrições de precedência. - Grafo potenciais-etapas (nós são etapas)
8Caminhos mais Longos
- Uma etapa x é atingida quando todas as tarefas
(reais e fictícias) correspondendo a arcos dos
quais x é extremidade final foram concluídas.
- Só é possível iniciar a execução da tarefa
correspondente ao arco (x, y) depois que a etapa
x tiver sido atingida.
9Caminhos mais Longos
Exemplo A tarefa 1 deve estar terminada para que
a tarefa 5 possa ser iniciada.
Supressão de arcos inúteis
10Caminhos mais Longos
- Resolver um problema de seqüenciamento de tarefas
corresponde a - determinar um calendário de execução
- determinar as tarefas críticas (aquelas cujo
atraso provoca um atraso na execução do projeto
como um todo) - controlar o desenvolvimento do projeto e saber, a
cada instante, atualizar as previsões iniciais
11Caminhos mais Longos
?(x) data mais cedo (data mínima em que a etapa
x pode ser atingida) ?(x) data mais tarde (data
máxima em que a etapa x pode ser atingida sem que
resulte em atraso na execução do projeto como um
todo)
- Uma tarefa é dita crítica se qualquer atraso em
sua execução se repercute automaticamente na
duração do projeto.
12Caminhos mais Longos
- Para que a etapa x possa ser atingida, é
necessário que todos os caminhos de I a x tenham
sido percorridos.
?(x) comprimento do caminho mais longo de I a x
considerando-se ?(I) 0.
- Tarefa u (x,y)
- ?(u) ?(y) - ?(x) - d(u) é a folga da tarefa u.
O grafo PERT não tem circuitos.
13Caminhos mais Longos
14Caminhos mais Longos
Exemplo
?(I) 0 SI ?(b) 10 SI, b ?(a)
10 SI, a, b ?(F) 16 SI, a, b, F
ITERAÇÃO 1
ITERAÇÃO 2
ITERAÇÃO 3
?(F) 16 SF ?(a) 10 SF, a ?(b)
10 SF, b, a ?(I) 0 SF, b, a, I
ITERAÇÃO 1
ITERAÇÃO 2
ITERAÇÃO 3
15Caminhos mais Longos
Grafo potenciais-tarefas nó ? tarefa arco(i,j)
? se a tarefa i deve preceder a tarefa j
16Caminhos mais Longos
- A tarefa j só pode começar após a
- metade da execução da tarefa i
di/2
i
j
- A tarefa j só pode começar um
- tempo t após o fim de i
- A tarefa j só pode começar após
- a data bj
17Caminhos mais Longos
TAREFAS DURAÇÃO ANTERIORES
A 7 -
B 3 A
C 1 B
D 8 A
E 2 D, C
F 1 D, C
G 1 D, C
H 3 F
J 2 H
K 1 E, G ,J
GRAFO POTENCIAIS-ETAPAS
?(2)14
?(2)10
?(4)21
?(4)21
?(F)22
?(I)0
?(1)7
?(3)15
?(F)22
?(3)15
?(1)7
?(I)0
?(6)19
?(5)16
?(6)19
?(5)16
18Caminhos mais Longos
Cálculo das folgas ?(u) ?(T(u))
?(I(u)) d(u)
?(A) 7 0 7 0 ?(B) 14 7 3 4 ?(C)
15 10 1 4 ?(D) 15 7 8 0 ?(E) 21
15 2 4 ?(F) 16 15 1 0 ?(G) 21 15
1 5 ?(H) 19 16 3 0 ?(J) 21 19 2
0 ?(K) 22 21 1 0
Caminho crítico A ? D ? F ? H ? J ? K
19Caminhos mais Longos
TAREFAS DURAÇÃO ANTERIORES
A 7 -
B 3 A
C 1 B
D 8 A
E 2 D, C
F 1 D, C
G 1 D, C
H 3 F
J 2 H
K 1 E, G ,H
GRAFO POTENCIAIS-TAREFAS