8 - Motion Planning Flashcards

1
Q

What is workspace?

A

Reachable space within the environment (independent of the robot)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is configuration space?

A

Full state of the robot in the environment

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Why use a c-space?

A

Positions in configuration space tend to be close together for the robot

Can be easier to solve collision checks and join nearby poses

Allows a level of abstraction that means solution methods can solve a wider range of problems

Sometimes helps with wraparound conditions (rotational joints)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How can you use a discrete decomposition for path planning?

A

Graph search: a connectivity graph is constructed and searched

Potential field planning, a mathematical function is imposed on the free space and the gradient of the function is followed to reach goal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are 4 types of graph?

A

Undirected, directed, unweighted, weighted

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is a discrete state space representation?

A

Reduce continuous state space to a finite set of discrete states

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How do you make a grid a graph?

A

Consider states as vertices and transitions as directed edges

Start node, goal node and cost function

Finding the shortest path can be treated as a graph search problem

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

When is a grid square in the c-space?

A

If it is not inside an obstacle and it is further than the radius of the robot from al obstacle edges

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the algorithm for turning a polygonal C-space into a grid?

A

Pick a grid square you know is in free space

Do a breadth first search from that start square

As each square is visited by the search, compute the distance to all obstacle edges

Label as free if the distance is greater than the radius of the robot or occupied if the distance is less

Once breadth first search is done, also label all unlabelled squares as occupied

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are 4 issues with grid-based representations?

A

Loss of precision, selecting a grid resolution, type of output path and poor scaling in higher dimensions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is a grid lattice?

A

Create a set of feasible motion primitives and construct a tree that chains the motions into a sequence

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is a visibility graph?

A

Create edges between all pairs of mutually visible vertices

Search resulting graph

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are pros and cons to visibility graph?

A

Optimal plan, good in sparse environments

Limited to straight 2D , needs polygonal obstacles, safety at stake

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are pros and cons to voronoi diagram?

A

Complete, executability

Not optimal, need long-range sensing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is a Voronoi Diagram?

A

Maximise the distance between the robot and the obstacles, draw equidistance lines, search resulting graph

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are pros and cons to exact cell decomposition?

A

Complete, good in extremely sparse environments

Low computational complexity

17
Q

What is the process of forward search?

A

Mark a node active

Explore its neighbours and mark them as open

Mark the parent node as visited

18
Q

What is an open set in a forward search?

A

A list of frontier (unexpanded) plans. Keeps track of what nodes to expand next. For each node in the open list, we know of at least one path to it from the start

19
Q

What are the pros of breadth first search?

A

Complete (will find the solution if it exists), guaranteed to find the shortest path, first solution that is found is the optimal path

20
Q

What is a depth first search?

A

DFS starts at the root node and explores as far as possible along each branch

Similar implementation to BFS but with a stack (lifo) queue

21
Q

Discuss DFS vs BFS

A

DFS is not complete for infinite trees (may explore an incorrect branch infinitely deep, never come back)

BFS is complete

DFS has lower memory footprint

Not often used for path search, but to completely explore a graph

Both are simple to implement

22
Q

What is Dijkstra’s algorithm?

A

BFS with edge costs, expanding in order of closest to start

Asymptotically the fastest known single-source shortest path algorithm for arbitrary directed graphs

Open queue is ordered according to currently known best cost to arrive

23
Q

What is A*?

A

An informed search.

Uses domain knowledge to bias the search

Favours actions that might get closer to the goal

Each state gets a value

f(x) = g(x) + h(x)

g(x) = cost incurred so far from the start satte

h(x) = estimated cost from here to the goal (heuristic goal)

24
Q

How do you choose heuristics?

A

The closer h(x) is to the optimal cost to the goal, the more efficient the search

25
Q

What must the heuristic be?

A

Admissible (never overestimate the cost)

Consistent

26
Q

What is a randomised graph search?

A

Divide the region uniformly into small cells, randomly sample locations in the space and try and connect the samples

27
Q

What are Probabilistic Road Maps?

A

Roadmap construction by randomly generating nodes, connect pairs of nodes to form a roadmap. Discard invalid nodes and paths

Query processing by connecting start and goal to roadmap and finding path in roadmap between start and goal

28
Q

What are the pros to PRMs?

A

Probabilistically complete, applied easily to high dimensional C-space and supports fast queries with enough pre-processing

29
Q

What are the cons to PRMs?

A

Don’t work as well for some problems, unlikely to sample edges in narrow passages, only probabilistically complete

30
Q

What is a field method?

A

Create a field (or gradient) that pushes the robot away from obstacles and towards the goal