字幕表 動画を再生する
-
Good morning.
おはようございます
-
I'm here today to talk about autonomous flying beach balls.
今日お話しするのは
-
(Laughter)
自律的に飛行するビーチボールについてです
-
No, agile aerial robots like this one.
違った こういう自律的で敏捷な飛行ロボットについてです
-
I'd like to tell you a little bit about the challenges in building these,
このようなものを作る難しさと
-
and some of the terrific opportunities for applying this technology.
この技術の応用にどれほどの可能性があるかお話しします
-
So these robots are related to unmanned aerial vehicles.
この技術の応用にどれほどの可能性があるかお話しします
-
However, the vehicles you see here are big.
このロボットは
-
They weigh thousands of pounds, are not by any means agile.
無人航空機と似ています
-
They're not even autonomous.
しかし無人航空機はずっと大きいものです
-
In fact, many of these vehicles are operated by flight crews
何千キロもの重さがあって
-
that can include multiple pilots,
とても敏捷とは言えず
-
operators of sensors,
自律的でさえありません
-
and mission coordinators.
無人航空機の多くは実際
-
What we're interested in is developing robots like this --
人間によって遠隔操作されていて
-
and here are two other pictures --
複数のパイロット
-
of robots that you can buy off the shelf.
センサのオペレータ
-
So these are helicopters with four rotors,
作戦指揮官などが関わっています
-
and they're roughly a meter or so in scale,
私たちが興味を持っているのは
-
and weigh several pounds.
私の手にあるようなロボットの開発で
-
And so we retrofit these with sensors and processors,
左の写真の2つは実際 お店で買うことができます
-
and these robots can fly indoors.
これはローターが4つのヘリコプターで
-
Without GPS.
大きさは1メートル前後
-
The robot I'm holding in my hand
重さも数キロ程度です
-
is this one,
私たちはそれにセンサやプロセッサを後付けして
-
and it's been created by two students,
GPSなしで屋内を
-
Alex and Daniel.
飛べるようにしています
-
So this weighs a little more than a tenth of a pound.
私が今
-
It consumes about 15 watts of power.
手にしているロボットは
-
And as you can see, it's about eight inches in diameter.
私の学生アレックスとダニエルが
-
So let me give you just a very quick tutorial
作ったものです
-
on how these robots work.
重さは
-
So it has four rotors.
50グラムほど
-
If you spin these rotors at the same speed,
消費電力は15ワットで
-
the robot hovers.
見ての通り
-
If you increase the speed of each of these rotors,
直径20センチほどの大きさです
-
then the robot flies up, it accelerates up.
このようなロボットの仕組みを
-
Of course, if the robot were tilted,
簡単にご説明しましょう
-
inclined to the horizontal,
4つのローターが
-
then it would accelerate in this direction.
すべて同じ速さで回っているとき
-
So to get it to tilt,
ロボットは空中で静止します
-
there's one of two ways of doing it.
4つのローターの回転速度を上げると
-
So in this picture, you see that rotor four is spinning faster
上に加速し 上昇します
-
and rotor two is spinning slower.
ロボットが傾いていれば当然
-
And when that happens,
その傾いた方向に
-
there's a moment that causes this robot to roll.
進むことになります
-
And the other way around,
ロボットを傾けるには 2つの方法があります
-
if you increase the speed of rotor three and decrease the speed of rotor one,
この写真で
-
then the robot pitches forward.
4番ローターは速く
-
And then finally,
2番ローターは遅く回っています
-
if you spin opposite pairs of rotors
そうするとロボットを
-
faster than the other pair,
「ローリング」させる力が働きます
-
then the robot yaws about the vertical axis.
一方
-
So an on-board processor
3番ローターの回転を速く
-
essentially looks at what motions need to be executed
1番ローターの回転を遅くすると
-
and combines these motions,
ロボットは手前側に「ピッチング」します
-
and figures out what commands to send to the motors --
最後に
-
600 times a second.
向かい合った2つのローターを
-
That's basically how this thing operates.
他の2つより速く回転させると
-
So one of the advantages of this design
垂直軸を中心に「ヨーイング」します
-
is when you scale things down,
オンボードプロセッサは
-
the robot naturally becomes agile.
行うべき動作に対して必要となる
-
So here, R is the characteristic length of the robot.
これらの方法の組み合わせを求め
-
It's actually half the diameter.
モーターに対して 毎秒600回送る命令を
-
And there are lots of physical parameters that change as you reduce R.
決めています
-
The one that's most important is the inertia,
それがこの基本的な仕組みです
-
or the resistance to motion.
この設計が有利な点は
-
So it turns out the inertia, which governs angular motion,
サイズを小さくするほど
-
scales as a fifth power of R.
ロボットの動きが敏捷になることです
-
So the smaller you make R,
ここでRは
-
the more dramatically the inertia reduces.
ロボットの大きさを表す数字で
-
So as a result, the angular acceleration,
実際には半径です
-
denoted by the Greek letter alpha here,
Rを小さくすると 様々な物理的パラメータが
-
goes as 1 over R.
変わります
-
It's inversely proportional to R.
中でも一番重要なのは 慣性
-
The smaller you make it, the more quickly you can turn.
すなわち動きに対する抵抗力です
-
So this should be clear in these videos.
回転運動を支配する
-
On the bottom right, you see a robot performing a 360-degree flip
慣性の大きさは
-
in less than half a second.
Rの5乗に比例します
-
Multiple flips, a little more time.
ですからRを小さくすると
-
So here the processes on board
慣性は劇的に減るのです
-
are getting feedback from accelerometers and gyros on board,
結果として ここでギリシャ文字の
-
and calculating, like I said before,
αで表している角加速度は
-
commands at 600 times a second,
1/Rになります
-
to stabilize this robot.
Rに反比例するのです
-
So on the left, you see Daniel throwing this robot up into the air,
小さくするほど速く回ることができるようになります
-
and it shows you how robust the control is.
ビデオを見ると そのことがよく分かります
-
No matter how you throw it,
右下の映像でロボットが
-
the robot recovers and comes back to him.
360度宙返りを
-
So why build robots like this?
0.5秒未満で行っています
-
Well, robots like this have many applications.
連続宙返りにはもう少し時間がかかります
-
You can send them inside buildings like this,
オンボードプロセッサは
-
as first responders to look for intruders,
加速度計やジャイロからの
-
maybe look for biochemical leaks,
フィードバックを受け取って
-
gaseous leaks.
計算をし
-
You can also use them for applications like construction.
ロボットを安定させるために
-
So here are robots carrying beams, columns
毎秒600回命令を出しています
-
and assembling cube-like structures.
左下の映像では ダニエルがロボットを宙に放り投げています
-
I'll tell you a little bit more about this.
制御能力がいかに強いか分かるでしょう
-
The robots can be used for transporting cargo.
どんな風に放り投げても
-
So one of the problems with these small robots
ロボットは体勢を立て直して戻ってきます
-
is their payload-carrying capacity.
このようなロボットを作る
-
So you might want to have multiple robots carry payloads.
理由は何かというと 多くの応用があるからです
-
This is a picture of a recent experiment we did --
例えばこのような建物内に送り込み
-
actually not so recent anymore --
侵入者 生化学物質の漏洩 ガス漏れ等が—
-
in Sendai, shortly after the earthquake.
あった際の 初動対応として
-
So robots like this could be sent into collapsed buildings,
調査を行わせることができます
-
to assess the damage after natural disasters,
建築のような作業に
-
or sent into reactor buildings,
使うこともできます
-
to map radiation levels.
ここではロボットが梁や柱を運んで
-
So one fundamental problem that the robots have to solve
四角い構造物を組み立てています
-
if they are to be autonomous,
これについては後ほど もう少し詳しくお話しします
-
is essentially figuring out how to get from point A to point B.
このロボットは貨物輸送にも使えます
-
So this gets a little challenging,
小さなロボットは 運搬容量が
-
because the dynamics of this robot are quite complicated.
小さいという問題がありますが
-
In fact, they live in a 12-dimensional space.
複数のロボットで運ぶ—
-
So we use a little trick.
という手もあります
-
We take this curved 12-dimensional space,
この写真は最近行った実験で・・・
-
and transform it into a flat, four-dimensional space.
もうそんなに最近でもありませんが
-
And that four-dimensional space consists of X, Y, Z,
震災直後の仙台で行ったものです
-
and then the yaw angle.
自然災害で崩れた建物や 核施設内にロボットを
-
And so what the robot does,
送り込んで 状況の確認や
-
is it plans what we call a minimum-snap trajectory.
放射能レベルのチェックを
-
So to remind you of physics:
行わせることができます
-
You have position, derivative, velocity;
自律的なロボットが
-
then acceleration;
解決すべき基本的な問題は
-
and then comes jerk,
1つの地点から別の地点へ
-
and then comes snap.
移動する方法を見出すということです
-
So this robot minimizes snap.
これが簡単でないのは
-
So what that effectively does,
このロボットの力学的特性が極めて複雑なためです
-
is produce a smooth and graceful motion.
実際12次元空間で考える必要があり
-
And it does that avoiding obstacles.
そのためちょっとしたトリックを使って
-
So these minimum-snap trajectories in this flat space are then transformed
曲がった12次元空間を
-
back into this complicated 12-dimensional space,
平らな4次元空間に
-
which the robot must do for control and then execution.
変換しています
-
So let me show you some examples
その4次元空間は
-
of what these minimum-snap trajectories look like.
X, Y, Z座標とヨー角からなっています
-
And in the first video,
そうするとロボットがするのは
-
you'll see the robot going from point A to point B,
最小スナップ軌道を求めるということになります
-
through an intermediate point.
物理学のおさらいですが
-
(Whirring noise)
位置の変化を微分していくと 速度
-
So the robot is obviously capable of executing any curve trajectory.
加速度
-
So these are circular trajectories,
ジャーク
-
where the robot pulls about two G's.
スナップとなります
-
Here you have overhead motion capture cameras on the top
このロボットはスナップを最小化するようになっています
-
that tell the robot where it is 100 times a second.
それは結果としてなめらかできれいな
-
It also tells the robot where these obstacles are.
動作を生み出すことになります
-
And the obstacles can be moving.
また障害物の回避も行います
-
And here, you'll see Daniel throw this hoop into the air,
この平らな空間における最小スナップ軌道を
-
while the robot is calculating the position of the hoop,
複雑な12次元空間へと
-
and trying to figure out how to best go through the hoop.
逆変換して
-
So as an academic,
それによって制御や
-
we're always trained to be able to jump through hoops
動作の実行をするわけです
-
to raise funding for our labs,
最小スナップ軌道がどのようなものか
-
and we get our robots to do that.
いくつか例をご覧にいれましょう
-
(Applause)
最初のビデオでは
-
So another thing the robot can do
ロボットが1つの地点から別な地点へ
-
is it remembers pieces of trajectory
中間点を経由して移動します
-
that it learns or is pre-programmed.
どんな曲線軌道でも問題なく
-
So here, you see the robot combining a motion that builds up momentum,
こなすことができます
-
and then changes its orientation and then recovers.
これは円軌道で
-
So it has to do this because this gap in the window
約2Gの加速度になります
-
is only slightly larger than the width of the robot.
ここでは上にあるモーションキャプチャカメラが
-
So just like a diver stands on a springboard
ロボットに現在位置を毎秒100回伝えています
-
and then jumps off it to gain momentum,
また障害物の位置も伝えています
-
and then does this pirouette, this two and a half somersault through
障害物が動いていても対応できます
-
and then gracefully recovers,
ここではダニエルがフープを宙に投げていますが
-
this robot is basically doing that.
ロボットはその位置を計算して
-
So it knows how to combine little bits and pieces of trajectories
中を通り抜ける最適な経路を求めています
-
to do these fairly difficult tasks.
私たちは学者として
-
So I want change gears.
いつも研究予算獲得という曲芸をさせられているので
-
So one of the disadvantages of these small robots is its size.
ロボットにも同様の曲芸をさせているわけです
-
And I told you earlier
(拍手)
-
that we may want to employ lots and lots of robots
このロボットにできる別なこととして
-
to overcome the limitations of size.
自分で見つけた軌道や プログラムされた軌道を
-
So one difficulty is:
記憶するというのがあります
-
How do you coordinate lots of these robots?
ここではロボットが
-
And so here, we looked to nature.
基本動作を組み合わせて
-
So I want to show you a clip of Aphaenogaster desert ants,
加速して 向きを変え
-
in Professor Stephen Pratt's lab, carrying an object.
元の所に戻るという一連の動作をしています
-
So this is actually a piece of fig.
このようにする必要があるのは
-
Actually you take any object coated with fig juice,
通る隙間の幅がロボットよりわずかに広いだけだからです
-
and the ants will carry it back to the nest.
そのため 飛び込み選手がするように
-
So these ants don't have any central coordinator.
飛び込み板からジャンプして勢いを付け
-
They sense their neighbors.
つま先回転をして1/4宙返りをして通り抜け
-
There's no explicit communication.
きれいに体制を立て直すという動作を
-
But because they sense the neighbors
このロボットはしているわけです
-
and because they sense the object,
ロボットにはこの難しいタスクをこなすために
-
they have implicit coordination across the group.
軌道の断片をどう組み合わせれば良いのか分かっているのです
-
So this is the kind of coordination we want our robots to have.
ちょっと話題を変えましょう
-
So when we have a robot which is surrounded by neighbors --
このような小さなロボットの短所はその大きさです
-
and let's look at robot I and robot J --
そこで 先ほども言いましたように
-
what we want the robots to do,
大きさによる制限を克服するため
-
is to monitor the separation between them,
たくさんのロボットを使おうというわけです
-
as they fly in formation.
ここで難しいのは
-
And then you want to make sure
たくさんのロボットをどうやって協調させるかです
-
that this separation is within acceptable levels.
そこで私たちは自然に目を向けました
-
So again, the robots monitor this error
ご覧いただく映像は
-
and calculate the control commands 100 times a second,
スティーブン・プラット教授の研究室の
-
which then translates into motor commands,
アシナガアリがものを運んでいる様子です
-
600 times a second.
イチジクの切れ端です
-
So this also has to be done in a decentralized way.
実際どんなものでも
-
Again, if you have lots and lots of robots,
イチジクの果汁を付けると アリたちは巣に運んでいきます
-
it's impossible to coordinate all this information centrally
このアリたちには中央で指示を出す者は誰もいません
-
fast enough in order for the robots to accomplish the task.
そばにいる他のアリを知覚しますが
-
Plus, the robots have to base their actions only on local information --
明示的なコミュニケーションは行いません
-
what they sense from their neighbors.
それでも他のアリと
-
And then finally,
食料を知覚することで
-
we insist that the robots be agnostic to who their neighbors are.
集団として暗黙の調整が行われるのです
-
So this is what we call anonymity.
これはまさに私たちが
-
So what I want to show you next is a video of 20 of these little robots,
ロボットに持たせたい調整方法です
-
flying in formation.
ロボットが 他のロボットに
-
They're monitoring their neighbors' positions.
囲まれているときに・・・
-
They're maintaining formation.
ロボットiとロボットjを見てください・・・
-
The formations can change.
ロボットにさせたいのは
-
They can be planar formations,
編隊飛行中の他のロボットとの距離を
-
they can be three-dimensional formations.
監視するということです
-
As you can see here,
そしてその距離を
-
they collapse from a three-dimensional formation into planar formation.
許容範囲内に保とうとするわけです
-
And to fly through obstacles,
そのため ずれの大きさを監視して
-
they can adapt the formations on the fly.
制御のための命令を
-
So again, these robots come really close together.
毎秒100回算出し
-
As you can see in this figure-eight flight,
それが毎秒600回のモーターへの命令に変換されます
-
they come within inches of each other.
これもまた分散的に
-
And despite the aerodynamic interactions with these propeller blades,
行わせる必要があります
-
they're able to maintain stable flight.
ロボットがたくさんある場合
-
(Applause)
これらすべての情報の処理を中央から
-
So once you know how to fly in formation,
ロボットのタスク実行に必要な速さで行うのは無理です
-
you can actually pick up objects cooperatively.
また ロボットは 近くのロボットを
-
So this just shows that we can double, triple, quadruple
感知することによる周辺情報のみで
-
the robots' strength,
行動する必要があります
-
by just getting them to team with neighbors, as you can see here.
最後に
-
One of the disadvantages of doing that is, as you scale things up --
どのロボットが隣に来ても
-
so if you have lots of robots carrying the same thing,
構わないようにしてあり
-
you're essentially increasing the inertia,
これを匿名性と呼んでいます
-
and therefore you pay a price; they're not as agile.
次にお見せする
-
But you do gain in terms of payload-carrying capacity.
映像では
-
Another application I want to show you -- again, this is in our lab.
20個の小さなロボットが
-
This is work done by Quentin Lindsey, who's a graduate student.
編隊飛行しています
-
So his algorithm essentially tells these robots
互いに隣のロボットの位置を監視しながら