All language subtitles for 01_1-1-introduction-to-computational-motion-planning.en

af Afrikaans
ak Akan
sq Albanian
am Amharic
ar Arabic Download
hy Armenian
az Azerbaijani
eu Basque
be Belarusian
bem Bemba
bn Bengali
bh Bihari
bs Bosnian
br Breton
bg Bulgarian
km Cambodian
ca Catalan
ceb Cebuano
chr Cherokee
ny Chichewa
zh-CN Chinese (Simplified)
zh-TW Chinese (Traditional)
co Corsican
hr Croatian
cs Czech
da Danish
nl Dutch
en English
eo Esperanto
et Estonian
ee Ewe
fo Faroese
tl Filipino
fi Finnish
fr French
fy Frisian
gaa Ga
gl Galician
ka Georgian
de German
el Greek
gn Guarani
gu Gujarati
ht Haitian Creole
ha Hausa
haw Hawaiian
iw Hebrew
hi Hindi
hmn Hmong
hu Hungarian
is Icelandic
ig Igbo
id Indonesian
ia Interlingua
ga Irish
it Italian
ja Japanese
jw Javanese
kn Kannada
kk Kazakh
rw Kinyarwanda
rn Kirundi
kg Kongo
ko Korean
kri Krio (Sierra Leone)
ku Kurdish
ckb Kurdish (Soranî)
ky Kyrgyz
lo Laothian
la Latin
lv Latvian
ln Lingala
lt Lithuanian
loz Lozi
lg Luganda
ach Luo
lb Luxembourgish
mk Macedonian
mg Malagasy
ms Malay
ml Malayalam
mt Maltese
mi Maori
mr Marathi
mfe Mauritian Creole
mo Moldavian
mn Mongolian
my Myanmar (Burmese)
sr-ME Montenegrin
ne Nepali
pcm Nigerian Pidgin
nso Northern Sotho
no Norwegian
nn Norwegian (Nynorsk)
oc Occitan
or Oriya
om Oromo
ps Pashto
fa Persian
pl Polish
pt-BR Portuguese (Brazil)
pt Portuguese (Portugal)
pa Punjabi
qu Quechua
ro Romanian
rm Romansh
nyn Runyakitara
ru Russian
sm Samoan
gd Scots Gaelic
sr Serbian
sh Serbo-Croatian
st Sesotho
tn Setswana
crs Seychellois Creole
sn Shona
sd Sindhi
si Sinhalese
sk Slovak
sl Slovenian
so Somali
es Spanish
es-419 Spanish (Latin American)
su Sundanese
sw Swahili
sv Swedish
tg Tajik
ta Tamil
tt Tatar
te Telugu
th Thai
ti Tigrinya
to Tonga
lua Tshiluba
tum Tumbuka
tr Turkish
tk Turkmen
tw Twi
ug Uighur
uk Ukrainian
ur Urdu
uz Uzbek
vi Vietnamese
cy Welsh
wo Wolof
xh Xhosa
yi Yiddish
yo Yoruba
zu Zulu
Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated: 1 00:00:02,303 --> 00:00:12,303 [MUSIC] 2 00:00:15,570 --> 00:00:17,602 Hi, my name is CJ Taylor. 3 00:00:17,602 --> 00:00:21,782 I'm going to be your instructor for this section on Computational Motion Planning. 4 00:00:21,782 --> 00:00:24,818 I thought I'd begin by talking a little bit about the kinds of problems you're 5 00:00:24,818 --> 00:00:26,110 going to be solving in this module. 6 00:00:27,390 --> 00:00:30,180 Motion planning is actually a specialized version with 7 00:00:30,180 --> 00:00:31,831 more general AI planning problem. 8 00:00:32,960 --> 00:00:35,380 The goal of a general purpose planning problem 9 00:00:35,380 --> 00:00:38,770 is to come up with a sequence of actions that accomplish a given goal. 10 00:00:39,930 --> 00:00:43,550 Consider for example the problem that we would be facing if we were trying to 11 00:00:43,550 --> 00:00:45,950 design a robot that was supposed to do our laundry. 12 00:00:47,010 --> 00:00:50,824 We would love for that robot to be able to come up with the entire sequence of 13 00:00:50,824 --> 00:00:53,420 actions that needed to be performed on it's own. 14 00:00:53,420 --> 00:00:56,900 From finding laundry, taking it downstairs, 15 00:00:56,900 --> 00:01:02,646 putting it in the washing machine, taking it out; folding it; etc., etc. 16 00:01:02,646 --> 00:01:05,970 The Motion Planning Problem is actually more specifically 17 00:01:05,970 --> 00:01:10,970 concerned with coming up with plans to move a robot from one location to another. 18 00:01:10,970 --> 00:01:13,020 To get it from Point A to Point B. 19 00:01:14,270 --> 00:01:18,500 In many cases, this boils down to a kind of geometry problem. 20 00:01:18,500 --> 00:01:22,540 Where the goal is to guide the robot through a particular trajectory that 21 00:01:22,540 --> 00:01:25,900 avoids all the obstacles that we know about in the environment. 22 00:01:25,900 --> 00:01:30,840 This basic approach can be applied to a wide variety of robotic systems 23 00:01:30,840 --> 00:01:35,900 including relatively simple robots that roll around on the ground, to robotic 24 00:01:35,900 --> 00:01:39,649 arms with multiple degrees of freedom, to systems like these quadrotors shown here. 25 00:01:40,970 --> 00:01:43,740 Let's begin our explanation with a simple example, PacMan. 26 00:01:44,760 --> 00:01:47,990 I'm betting that many of you've played this game once or twice in your life. 27 00:01:47,990 --> 00:01:51,780 And you remember that when your noble PacMan eats one of those computer 28 00:01:51,780 --> 00:01:56,510 generated ghosts, those ghosts would automatically run back to their lair 29 00:01:56,510 --> 00:01:58,919 to regenerate and then come back and hunt you down again. 30 00:02:00,510 --> 00:02:03,440 I was never very good at this time, so the end always came quickly for me. 31 00:02:04,550 --> 00:02:08,420 But I was always impressed by how quickly and efficiently the computer was able to 32 00:02:08,420 --> 00:02:12,630 guide the ghosts back from wherever they got eaten to the goal. 33 00:02:12,630 --> 00:02:15,320 So this is a problem that we're going to consider in the next set of slides. 34 00:02:17,430 --> 00:02:20,099 On this slide, we see a simple depiction of a Pac-Man problem. 35 00:02:21,330 --> 00:02:25,760 In this picture the robots are constrained to move around on a grid of cells. 36 00:02:25,760 --> 00:02:30,310 At any point in time, our ghost can move north, south, east or 37 00:02:30,310 --> 00:02:32,220 west to any adjacent cell. 38 00:02:33,780 --> 00:02:37,500 The limitations are that it cannot go outside the playing area or 39 00:02:37,500 --> 00:02:39,480 enter any of the black grid cells. 40 00:02:39,480 --> 00:02:41,324 These correspond to obstacles in our world. 41 00:02:42,560 --> 00:02:47,197 Our goal then is to come up with a sequence of steps that will take the robot 42 00:02:47,197 --> 00:02:52,533 from the starting location, the green cell, to the goal location, the red cell. 43 00:02:52,533 --> 00:02:56,078 Now, if we think each of the unoccupied grid cells as a node, 44 00:02:56,078 --> 00:02:59,208 and draw lines between adjacent nodes as shown here, 45 00:02:59,208 --> 00:03:02,491 we end up with a mathematical structure called a graph. 46 00:03:05,369 --> 00:03:09,629 A graph is composed of a set of nodes typically denoted by the letter V and 47 00:03:09,629 --> 00:03:13,960 a set of edges denoted by the letter E, which link those nodes together. 48 00:03:15,380 --> 00:03:18,760 Graphs are a mathematical contract which are actually very useful for 49 00:03:18,760 --> 00:03:21,449 modeling a wide variety of maps in the real world. 50 00:03:22,750 --> 00:03:26,718 For instance, this transit map can be thought of as a graph where the nodes 51 00:03:26,718 --> 00:03:28,254 corresponds to stations and 52 00:03:28,254 --> 00:03:31,525 the edges correspond to rail links between those stations. 53 00:03:34,681 --> 00:03:38,531 Next figure shows a form of a mileage chart where the nodes correspond to cities 54 00:03:38,531 --> 00:03:41,169 and the edges correspond to toll roads between them. 55 00:03:42,240 --> 00:03:45,140 Here we may be interested in finding a path 56 00:03:45,140 --> 00:03:49,200 from one city to the other that minimizes the amount of money that we have to pay. 57 00:03:49,200 --> 00:03:51,540 The world wide web is actually a form of a graph. 58 00:03:51,540 --> 00:03:55,380 Where the nodes are web pages and the edges are links between them. 59 00:03:55,380 --> 00:03:56,320 In many situations, 60 00:03:56,320 --> 00:04:00,150 we may choose to associate numbers with the edges in the graph. 61 00:04:00,150 --> 00:04:04,190 For example, in the Toll Chart example that we were talking about previously, 62 00:04:04,190 --> 00:04:06,970 we chose to associate numerical values with each of those 63 00:04:06,970 --> 00:04:10,700 edges which corresponded to the tolls that we would have to pay. 64 00:04:10,700 --> 00:04:14,910 We're going to be doing this quite a bit in our various motion planning problems 65 00:04:14,910 --> 00:04:16,170 where these edge-awaits, 66 00:04:16,170 --> 00:04:21,209 we'll refer to costs or distances that we might be interested in minimizing. 67 00:04:23,520 --> 00:04:27,440 If we go back to our pacman problem, we can implicitly associate 68 00:04:27,440 --> 00:04:31,950 a unit distance or cost with each of the edges between adjacent nodes in our graph. 69 00:04:34,350 --> 00:04:38,430 Now that we've abstracted our PacMan problem to a graph, 70 00:04:38,430 --> 00:04:41,400 our problem is one of finding a path from one node in the graph, 71 00:04:41,400 --> 00:04:44,720 the start node to another node, the end node. 72 00:04:45,720 --> 00:04:49,660 In this setting a path is simply a sequence of consecutive edges 73 00:04:49,660 --> 00:04:51,270 that lead from one node to another. 74 00:04:53,020 --> 00:04:56,070 Immediately, you'll notice that there may be many different paths that would 75 00:04:56,070 --> 00:04:56,850 solve this problem. 76 00:04:58,130 --> 00:05:03,640 Often we are interested in finding a path that minimizes some cost or 77 00:05:03,640 --> 00:05:04,990 distance metric. 78 00:05:04,990 --> 00:05:09,279 So, for instance, we may be interested in finding the path from the start node to 79 00:05:09,279 --> 00:05:12,009 the end node that uses the minimum number of edges.7458

Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.