Download presentation
Presentation is loading. Please wait.
1
A Specialized A* Algorithm
2
Specialized A* Algorithm As soon as a goal node is found, we may stop and return an optimal solution. In ordinary A* algorithm, we can only terminate it when a goal node is selected to be expanded.
3
Specialized Condition Whenever a node t is selected and produce a goal node as its immediate successor, then h(t)=h*(t)=g(goal)-g(t). We have –g(goal)=h*(t)+g(t) –f(goal)=g(goal)+h(goal)= h*(t)+g(t)+0=f*(t) –g(goal)=f(goal)=f*(t) When t is selected to be expanded, f(t)=g(t)+h(t)=g(t)+h*(t)=f*(t) ≦ f(n) ≦ f*(n) for every expanded node n. g(gaol)=f*(t) ≦ f*(n) and the first found goal node must be an optimal solution.
4
The Channel Routing Problem A channel specification
5
Illegal wirings: We want to find a routing which minimizes the number of tracks.
6
A Feasible Routing 7 tracks are needed.
7
An Optimal Routing 4 tracks are needed. This problem is NP-complete.
8
The channel routing problem Horizontal constraint graph (HCG) E.g. net 8 must be to the left of net 1 and net 2 if they are in the same track.
9
The channel routing problem Vertical constraint graph: Max. cliques in HCG: {1,8}, {1,3,7}, {5,7}. Each max. clique can be assigned to a track. The First Level of a Tree to Solve a Channel Routing Problem
10
The channel routing problem f(t) = g(t) + h(t), –g(t): the level of the tree (the number of tracks) –h(t): maximal local density (For terminal n, draw a vertical line. See how many horizontal lines the line intersects.) –h(t)=h*(t)=1=g(gaol)-g(t) because it needs one track to complete the layout. A Partial Solution Tree for the Channel Routing Problem by Using A * Algorithm.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.