1 / 15

Unified optimal search

Unified optimal search. Search building example. Search Building 1.Choose ANW.location = window1, window2// 2 windows broken out on different floors 2. Fly to laboratoryA //gather vision data advance film, snapshot, camera = on 3. Lower chem bots//

chione
Download Presentation

Unified optimal search

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Unified optimal search Search building example

  2. Search Building 1.Choose ANW.location = window1, window2// 2 windows broken out on different floors 2. Fly to laboratoryA //gather vision data advance film, snapshot, camera = on 3. Lower chem bots// 4.Choose café or daycare //want to show backtrack to diff paths through diff plan 5. If not daycare then daycare// 5. Fly to labA 6. Transmit msg to chem-bots 7.Chembots ask if ANW1 = labA, then both go to rendzvous //focus on ANW1’s portion of the plan, fragment of rmpl code

  3. (root USARteam ) ;; root object of RMPL program (defdomain building_rooms (daycare cafeteria laboratory window1 window2 office)) (defclass helicopter () (public state building_rooms location) ) (defclass smallbot () (public state building_rooms loc) ) ;;Main Program (defclass USARteam () (public state helicopter ANW1) (public state smallbot chembots);; (Search_Building() (sequence (choose ((ANW1.location = window1)[]) ((ANW1.location = window2)[]) ) ( parallel ((ANW1.location = laboratory)[]) ((ANW1.Take_Pictures(100))[] ) ) ((ANW1.Lower_Chembots(50))[]) (choose ((ANW1.location = daycare)[]) ((ANW1.location = cafeteria)[]) ((ANW1.location = office)[]) ) ;;(if-thennext(NOT(ANW1.location = daycare)) ;; (( ANW1.location = daycare )[]) ;;) );;end sequence );;end Search_Building );;end USARteam

  4. Search_Building() [ ] S G (ANW1.TakePictures())[ ] 35 J K (ANW1= window1) [ ] 40 B D (ANW1 = cafeteria)[ ] R H A F 70 L M 70 C E I Q (ANW1 = window2)[ ] 50 N P (ANW1 = daycare)[ ]

  5. A* on RRTPN • A TPN with costs • Use algm from other slides • when 1st loc node is reached then it is initialized with the SLD, on the arc before the • then loc is expanded for a specific number of iterations, the

  6. Search_Building() [ ] 5 S G (ANW1.TakePictures())[ ] 5 35 J K (ANW1= window1) [ ] 5 5 5 B D 5 5 (ANW1 = cafeteria)[ ] R 5 H A F 5 L M 5 5 5 5 5 C E I Q 5 5 (ANW1 = window2)[ ] N P S (ANW1 = daycare)[ ] 3 steps, 100 iters per step init:SLD/epsilon G S A 1.Search Tree is initialized with S, and initial position (state) of ANW1(proapagated fwd) 2. S refers to the start of parallel activities so each of its successor is added together, S is completed and Closed 3. G is expanded, completed and Closed 4. A is expanded and creates two paths (CA) (BA), since both C and B begin a location constraint then they are initialized with a SLD cost estimate. 5. B grows an RRT for one step, then metric, m = dist of closest node/#iters is computed

  7. Search_Building() [ ] S G (ANW1.TakePictures())[ ] show minimal partial expansion 35 J K (ANW1= window1) [ ] 40 B D show expansion with wall, #iters increases (ANW1 = cafeteria)[ ] R H A F 50 L M 70 C E I Q (ANW1 = window2)[ ] 70 N P (ANW1 = daycare)[ ] G 2.9 ?40 S B b1 A G ?40 S B b1 b2 A 4. A is expanded and creates two paths (CA) (BA), since both C and B begin a location constraint then they are initialized with a SLD?? cost estimate. 5. B grows an RRT (from current state) for one step, then metric, m = (#iters)/dist(n) is computed #iters = 100, dist = 35==> m= 100/35 = 2.9 (can scale it) B adds a step arc and node that represent the current RRT state, b1 6.B is expanded one step, #iters = 200, m = 200/20 = 10 7. C is expanded one step (really bad and finish off with B)

  8. Search_Building() [ ] S G (ANW1.TakePictures())[ ] show minimal partial expansion 35 J K (ANW1= window1) [ ] 40 B D show expansion with wall, #iters increases (ANW1 = cafeteria)[ ] R H A F 50 L M 70 C E I Q (ANW1 = window2)[ ] 70 N P (ANW1 = daycare)[ ] G 2.9 ?40 S B b1 A G 2.9 4 S B b1 b2 A G 2.9 ?40 S B b1 b2 A 6.B is expanded one step, #iters = 200, m = 200/20 = 10 7. C is expanded one step (really bad and finish off with B)

  9. Results ANW1 A C B Path-Planning State Space

  10. ok now • just grow ‘em • just say there is a number of optimazations that can be done to improve, take into account the #of iters • step • step cost • max steps • can be optmized by preferring to step one path over another

  11. (ANW1.location = windowI) 10 Step Arc 1 Step Node 1 ANW1.start Path-Planning Space ANW1.goal

  12. S B S A C G A AND-node D D B C Search tree after expanding node A

  13. AND-node Search_Building() [ ] 5 S G (ANW1.TakePictures())[ ] 5 35 J K (ANW1= windowI) [ ] 5 5 5 B D 5 5 (ANW1 = cafeteria)[ ] R 5 H A F 5 L M 5 AND-node 5 5 5 5 C E I Q 5 5 (ANW1 = windowII)[ ] N P

  14. 5 S G 5 B D 5 b2 b1 start A goal 5 C c1 goal start

  15. 5 S G 5 B D 5 goal start J K A 5 (ANW1 = cafeteria)[ ] 5 H F 5 L M 5 5 5 C I 5 5 c1 N P goal start

More Related