Top Banner
Net by Net Routing Net by Net Routing with a New Path with a New Path Search Algorithm Search Algorithm Marcelo Johann Marcelo Johann Ricardo Reis Ricardo Reis SBCCI 2000 - SBCCI 2000 - Manaus Manaus
21

Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Apr 17, 2015

Download

Documents

Internet User
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Net by Net Routing with a Net by Net Routing with a New Path Search Algorithm New Path Search Algorithm

Marcelo JohannMarcelo JohannRicardo ReisRicardo Reis

SBCCI 2000 - ManausSBCCI 2000 - Manaus

Page 2: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

OutlineOutline

• Routing Algorithms

• Path Search Based Routing

• Shortest Path Search Algorithms

• The LCS* Algorithm

• LCS* in Routing Grids

• Cost Functions

• Conclusions

Page 3: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

Routing AlgorithmsRouting Algorithms 11• restricted: explore particular constraints in a

problem to obtain good solutions efficiently;

ex: channel routing (LEA, Greedy)

• generic: can be applied to almost any routing problem;

ex: path-search based (maze router)

Page 4: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

Path Search Based RoutingPath Search Based Routing 22• sequential: a single connection is made at a

time, what leads to ordering problems;

• importance: accuracy, guarantee, interaction with other synthesis decisions, cleanup

• space is a graph: nodes are positions and arcs are movements;

• grids and mazes: a grid is a regular graph and a maze is a grid full of walls;

Page 5: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

• BFS in a grid (2D or 3D)• memory consumption (1 bit minimum)• running time• ordering

generic

sequential

largely used

Maze Routing (Lee 1961)Maze Routing (Lee 1961)

Page 6: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

• Definição do problema;

• Princípios da pesquisa

• Algoritmos de pesquisa;

• Propriedades em pesquisa heurística;

• Observações sobre pesquisa heurística bidirecional;

• O algoritmo LCS*

Shortest Path Search Shortest Path Search AlgorithmsAlgorithms 33

Page 7: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

3.13.1 Search Basics Search Basics

A partir de s, formar uma árvore de pesquisa pela aplicação repetitiva do operador de sucessão

Um nodo é expandido quando se aplica a operação de sucessão sobre ele (o nodo se torna fechado)

Um nodo é gerado quando é retornado pela operação de sucessão (o nodo se torna aberto)

v1

v2

v3

v4

v5

v6

v7v8

v9

s t

Page 8: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

Pesquisa em Largura (Breadth-First)

Primeiro expande todos os nodos a uma mesma distância da origem (FIFO).

origem

destino

Pesquisa intermediária

Pesquisa completa

Page 9: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

Pesquisa Heurística (A*)

Primeiro expande os nodos mais promissores, segundo a função: f(n) = g(n) + h(n)

origem destino

Pesquisa intermediária

Pesquisa completa

g(n) h(n)

Efeito da eficiência

das estimativas

Page 10: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

Pesquisa Bidirecional

Duas frentes simultâneas de pesquisa• nodo de encontro: reconhecido por ambas• condição de término: f(n) > min[f(m)]• sobreposição

origem

destino

Pesquisa da origem

Pesquisa unidirecional

Pesquisa do destino

Nodo de encontro

m

Page 11: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

Objetivo: Unir as vantagens de ambas

Dificuldades:• problema das frentes desencontradas• intersecção das pesquisas• condição de término

Suposto problema das frentes desencontradas

Objetivo

Bi-A*

Bi-BFS

3.43.4 Heuristic and Bidirectional Search Heuristic and Bidirectional Search

Page 12: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

3.43.4 Basic Properties Basic Properties

• Admissibilidade (**): custo de n a t h(n)

garante menor caminho

• Consistência: k(n1,n2) + k(n2,n3) k(n1,n3)

só expande nodos com

custo mínimo conhecido

n1

n2

n3k(n1,n2)

k(n2,n3)

k(n1,n3)

tn

h(n)

Menor caminho de n a t

h(n) = k(n,t)

Page 13: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

The LCS* AlgorithmThe LCS* Algorithm 44• Lowerbound Cooperative Search• estimação dinâmica (resistência e penalidade)• estrutura semelhante ao BS* de [Kwa 89]• visibilidade: valores estimados em referências• visibilidade: conjunto de nodos fechados único• “perfeição” e admissibilidade provadas

Page 14: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

• Resistência (min idea [Kaindl 96])

• Penalidade (max idea [Kaindl 96])

gs(n)

gt(pi)

s n

t

pi

ht(n) hs(n)

ht(pi)

gt(pi) t

pi

k(pi ,t)

Rt = Min[gt(pi) - k(pi,t)]

Pt = Min[gt*(pi) - k(pi,s)]

Estimação dinâmica

F(n) = f(n) + Rt

F(n) = gs(n) + Pt - ht(n)

Page 15: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

Resultados preliminares de LCS*

Grade 200 por 200 com custos aleatórios, média 100, mínimo 50, máximo 300

050000

100000150000200000250000300000350000

100

140

180

220

260

300

340

380

420

460

500

variação de custos aleatórios gerados

tota

l de

no

do

s

ex

pa

nd

ido

s

LCS*

melhor A*

pior A*

Em grade, admissibilidade completa

Page 16: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

Resultados preliminares de LCS*

Grade 200 por 200 com custos aleatórios, média 100, mínimo 50, máximo 300

050000

100000150000200000250000300000350000

100

140

180

220

260

300

340

380

420

460

500

variação de custos aleatórios gerados

tota

l de

no

do

s

ex

pa

nd

ido

s

LCS*

melhor A*

pior A*

Em grade, admissibilidade relativa

Page 17: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

• grande área livre, sem estrutura • terminais e obstáculos arbitrários

LCS* in Routing GridsLCS* in Routing Grids 55

decomposição necessária

para roteamento detalhado

Page 18: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

5.25.2 Pesquisa com múltiplos destinos Pesquisa com múltiplos destinos

• Seleção de destino

por retângulo envolvente

• Seleção de destino

mais próximo

• Cálculo de janela

de aproximação

s

t1

t2

t1

st2

s

t1

t2

Page 19: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

5.35.3 Formação de redes Formação de redes

• Formação de redes de comprimento mínimo

• Formação de redes de caminhos mínimos

Apagando o custo g() nos caminhos já encontrados

Mantendo o custo g() nos caminhos já encontrados Driver

Driver

g()=0

g()=0g()=0

g()=0

g()=0

g()=5g()=9

g()=7

Page 20: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

5.45.4 Modelos de custo Modelos de custo

• referências e movimentos• o que representam os valores:

– comprimento da conexão;

– desempenho elétrico da conexão, em função de RC;

– quantidade de recursos utilizados

– dificuldade pela presença de obstáculos;

– congestionamento devido a outras conexões;

Page 21: Net by Net Routing with a New Path Search Algorithm Marcelo Johann Ricardo Reis SBCCI 2000 - Manaus.

Marcelo Johann - SBCCI 2000 - Manaus

Conclusões

• LCS*: bidirecional, heurístico e eficiente

• aplicação de LCS* a roteamento VLSI

redes individuais, ambiente complexo

• LEGAL: detalhado, integral, eficiente

• definição e adaptação às aplicações

área livre, acomoda melhor as conexões

Final RemarksFinal Remarks 77