Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated:
1
00:00:00,700 --> 00:00:04,810
Now that we have a conceptual framework
for thinking about a wide range of motion
2
00:00:04,810 --> 00:00:09,110
planning problems, in terms of planning
trajectories to configuration space,
3
00:00:09,110 --> 00:00:12,320
we can talk about various
approaches to solving this problem.
4
00:00:12,320 --> 00:00:16,614
Specifically, in the next few sections
I'm going to talk about three approaches,
5
00:00:16,614 --> 00:00:18,318
all of which have a common theme.
6
00:00:18,318 --> 00:00:22,946
Namely, they start with the motion
planning problem framed on a continuous
7
00:00:22,946 --> 00:00:27,937
configuration space and then use various
approaches to reformulate this problem
8
00:00:27,937 --> 00:00:32,563
in terms of a graph, so that we can apply
the kinds of algorithms we discussed
9
00:00:32,563 --> 00:00:35,710
earlier like Grassfire,
Dijkstra, and Astock.
10
00:00:35,710 --> 00:00:39,270
We could illustrate these approaches
using the 2D planing program
11
00:00:39,270 --> 00:00:40,610
depicted on the following slide.
12
00:00:42,560 --> 00:00:45,870
As usual,
our goal is to come up with a trajectory
13
00:00:45,870 --> 00:00:49,560
from the starting two deconfiguration
to the ending configuration.
14
00:00:49,560 --> 00:00:54,150
In this case, the configuration space
obstacles are modeled as polygons,
15
00:00:54,150 --> 00:00:56,250
which suggests the following
discretization.
16
00:00:57,330 --> 00:01:01,910
We associate a node with every
configuration space optical vertex,
17
00:01:01,910 --> 00:01:04,050
as shown here.
18
00:01:04,050 --> 00:01:07,230
Then, we compute what is
known as a visibility graph.
19
00:01:08,460 --> 00:01:13,660
More specifically, we draw an edge
between any two vertices that
20
00:01:13,660 --> 00:01:17,550
can be connected by a straight line
that lies entirely in free space.
21
00:01:18,820 --> 00:01:21,430
Note that this includes every pair of
22
00:01:21,430 --> 00:01:24,510
neighboring vertices on the same
configuration space obstacle.
23
00:01:25,680 --> 00:01:29,760
In order to be able to run this algorithm,
we need to be able to determine whether
24
00:01:29,760 --> 00:01:34,750
a line segment between any two points
intersects a configuration space obstacle.
25
00:01:36,100 --> 00:01:39,000
In the situation shown here,
where the configuration
26
00:01:39,000 --> 00:01:42,475
space obstacles are polygons, this is
actually relatively straightforward.
27
00:01:43,860 --> 00:01:48,700
We also include the start and
end points as nodes in our graph.
28
00:01:48,700 --> 00:01:52,450
Once we've done this, we're back to
original planning problem we considered
29
00:01:52,450 --> 00:01:57,140
earlier, where our goal is to construct
the shortest path through the graph
30
00:01:57,140 --> 00:02:00,070
between the start node and the end node.
31
00:02:00,070 --> 00:02:03,120
A problem that can be readily
solved using Dijkstra's algorithm.
32
00:02:04,770 --> 00:02:07,930
Here is a result of finding
the shortest path in our example.
33
00:02:10,530 --> 00:02:13,920
This visibility graph algorithm
is actually complete.
34
00:02:13,920 --> 00:02:17,020
That is,
it will find a path if one exists and
35
00:02:17,020 --> 00:02:20,140
report failure if no
path can be constructed.
36
00:02:20,140 --> 00:02:22,820
This could happen if the start position or
37
00:02:22,820 --> 00:02:26,220
end position was entirely
surrounded by an obstacle.
38
00:02:26,220 --> 00:02:30,510
Moreover, you can prove that
this visibility algorithm
39
00:02:30,510 --> 00:02:34,509
are actually construct the shortest
possible path between the two points.
40
00:02:36,270 --> 00:02:37,380
You can see the intuition for
41
00:02:37,380 --> 00:02:40,840
this by thinking of the path between
the two vertices as a piece of string.
42
00:02:42,040 --> 00:02:45,760
Imagine what would happen if you pull
this string as tight as possible
43
00:02:45,760 --> 00:02:47,080
to eliminate all of the slack.
44
00:02:48,440 --> 00:02:51,800
The resulting trajectory would
consist of a series of straight lines
45
00:02:51,800 --> 00:02:56,020
between vertices corresponding exactly
to the edges of the visibility graph
46
00:02:58,475 --> 00:03:01,254
However, we can debate
whether it's a great idea for
47
00:03:01,254 --> 00:03:03,860
our trajectory to clip the obstacles so
closely.
48
00:03:04,980 --> 00:03:05,540
In practice,
49
00:03:05,540 --> 00:03:09,910
we may want to pretend that the robot is
actually a bit bigger than it truly is.
50
00:03:09,910 --> 00:03:13,530
This would inflate the configuration
space obstacles by a safety margin.4682
Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.