16-782 planning & decision-making in robotics case study...
TRANSCRIPT
![Page 1: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/1.jpg)
16-782
Planning & Decision-making in Robotics
Case Study:
Planning for
Coverage, Mapping and Surveyal
Maxim Likhachev
Robotics Institute
Carnegie Mellon University
![Page 2: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/2.jpg)
Carnegie Mellon University 2
Definitions
• Coverage
– Traversal of a known map with a goal of fully examining it using
on-board sensors (e.g., museum security, car painting, lawn
mowing, etc.)
• Mapping– Traversal of an unknown map with a goal of fully building it using
on-board sensors (e.g., search for people in an unknown building)
• Surveyal
– Visiting a set of waypoints of interest with a goal of surveying
them using on-board sensors (e.g., surveillance)
![Page 3: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/3.jpg)
Carnegie Mellon University 3
Examples of Coverage
• Coverage
– Traversal of a known map with a goal of fully examining it using
on-board sensors (e.g., museum security, car painting, lawn
mowing, etc.)
![Page 4: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/4.jpg)
Carnegie Mellon University 4
Examples of Coverage
• Coverage
– Traversal of a known map with a goal of fully examining it using
on-board sensors (e.g., museum security, car painting, lawn
mowing, etc.)
![Page 5: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/5.jpg)
Carnegie Mellon University 5
Examples of Coverage
• Coverage
– Traversal of a known map with a goal of fully examining it using
on-board sensors (e.g., museum security, car painting, lawn
mowing, etc.)
What would be a good strategy
for traversal of a known obstacle-free region?
Random traversal
(e.g., Roomba for floor vacuuming)
is always an option.
Anything else?
![Page 6: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/6.jpg)
Carnegie Mellon University 6
Example of Coverage
• Coverage
– Traversal of a known map with a goal of fully examining it using
on-board sensors (e.g., museum security, car painting, lawn
mowing, etc.)
Lawn-mowing pattern
image borrowed from H. Choset, ‘01
![Page 7: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/7.jpg)
Carnegie Mellon University 7
Examples of Coverage
• Coverage
– Traversal of a known map with a goal of fully examining it using
on-board sensors (e.g., museum security, car painting, lawn
mowing, etc.)
Lawn-mowing pattern
image borrowed from H. Choset, ‘01
Doesn’t work well for covering
regions with obstacles
![Page 8: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/8.jpg)
Carnegie Mellon University 8
Frontier-based Coverage
• Always move the robot to the nearest cell that hasn’t been
“covered” (observed/visited) yet (one of the frontier cells)
How do you find a path to
the nearest “unobserved” cell?
![Page 9: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/9.jpg)
Carnegie Mellon University 9
Frontier-based Coverage
• Always move the robot to the nearest cell that hasn’t been
“covered” (observed/visited) yet (one of the frontier cells)
How do you find a path to
the nearest “unobserved” cell?
Remember graph transformation
for Multi-goal A*!
(previous lecture)
![Page 10: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/10.jpg)
Carnegie Mellon University 10
Frontier-based Coverage
• Always move the robot to the nearest cell that hasn’t been
“covered” (observed/visited) yet (one of the frontier cells)
How do you find a path to
the nearest “unobserved” cell?
Remember graph transformation
for Multi-goal A*!
(previous lecture)
![Page 11: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/11.jpg)
Carnegie Mellon University 11
Examples of Mapping
• Mapping– Traversal of an unknown map with a goal of fully building it using
on-board sensors (e.g., search for people in an unknown building)
![Page 12: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/12.jpg)
Carnegie Mellon University 12
Examples of Mapping
• Mapping– Traversal of an unknown map with a goal of fully building it using
on-board sensors (e.g., search for people in an unknown building)
Any ideas on planning
for mapping?
Same process as for coverage
except that map gets discovered on the way
![Page 13: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/13.jpg)
Carnegie Mellon University 13
Greedy Mapping (Frontier-based method)
• Always move the robot on a shortest path to the
closest unobserved (or unvisited) cell.
• It always achieves a gain in information.
• Thus, it maps the terrain.
![Page 14: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/14.jpg)
Carnegie Mellon University 14
Greedy Mapping (Frontier-based method)
• Always move the robot on a shortest path to the
closest unobserved (or unvisited) cell.
• Utilizes prior map knowledge, if available
• Can be used for mapping with multiple robots
• Has a reasonably small mapping time
![Page 15: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/15.jpg)
Carnegie Mellon University 15
Examples of Surveyal
• Surveyal
– Visiting a set of waypoints of interest with a goal of surveying
them using on-board sensors (e.g., surveillance)
computing a least-cost path that visits all waypoints of interest (in any order) while
being feasible (e.g., satisfies minimum turning radius, is collision-free, etc.)
![Page 16: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/16.jpg)
Carnegie Mellon University 16
Examples of Surveyal
• Surveyal
– Visiting a set of waypoints of interest with a goal of surveying
them using on-board sensors (e.g., surveillance)
computing a least-cost path that visits all waypoints of interest (in any order) while
being feasible (e.g., satisfies minimum turning radius, is collision-free, etc.)
How can we represent it
as a graph search?
![Page 17: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/17.jpg)
Carnegie Mellon University 17
Planning for Surveyal as Graph Search
• Search graph G = {V, E}
Each node v ∈ V is defined as { α , Ω }
α is a vector of M bits where a 0 bit indicates the corresponding waypoint is
unvisited and 1 bit indicates it is visited.
Ω encodes the waypoint where the robot is currently at and the orientation of the
robot (if the robot is NOT omnidirectional).
00, 0
01, 1 10, 2
11, 2 11, 1
Goal states:
all states where all waypoints have been visited
![Page 18: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/18.jpg)
Carnegie Mellon University 18
Planning for Surveyal as Graph Search
• Search graph G = {V, E}
Each node v ∈ V is defined as { α , Ω }
α is a vector of M bits where a 0 bit indicates the corresponding waypoint is
unvisited and 1 bit indicates it is visited.
Ω encodes the waypoint where the robot is currently at and the orientation of the
robot (if the robot is NOT omnidirectional).
00, 0
01, 1 10, 2
11, 2 11, 1
Goal states:
all states where all waypoints have been visited
Each edge is a feasible path
found by running a low-level motion planner
to find a path from point A to B
![Page 19: 16-782 Planning & Decision-making in Robotics Case Study ...maxim/classes/robotplanning_grad/lectures/casemappingcoveragesurvey...Planning for Coverage, Mapping and Surveyal Maxim](https://reader033.vdocuments.us/reader033/viewer/2022041504/5e23f928c1ccb43827463490/html5/thumbnails/19.jpg)
Carnegie Mellon University 19
What You Should Know…
• What is coverage and what is mapping
• Frontier-based planning for coverage
• Frontier-based planning for mapping
• How to represent planning for surveyal as graph search