language
注意事項
当サイトの中国語、韓国語ページは、機械的な自動翻訳サービスを使用しています。
翻訳結果は自動翻訳を行う翻訳システムに依存します。場合によっては、不正確または意図しない翻訳となる可能性があります。
翻訳サービスを利用した結果について、一切を保証することはできません。
翻訳サービスを利用される場合は、自動翻訳が100%正確ではないことを理解の上で利用してください。

多種多様なシステムを連携させ恒常性の維持を実現する
拡張Flockingアルゴリズムの開発と応用

写真:博士(工学) 鈴木 恵二

情報科学研究科 複合情報学専攻 
複雑系工学講座 調和系工学研究室・教授

博士(工学)鈴木 恵二

プロフィール

1993年、北海道大学大学院工学研究科精密工学専攻博士課程後期修了。1993年、北海道大学工学部精密工学科精密機器学第一講座助手。1995年、北同工学部システム情報工学専攻複雑系工学講座助教授。2000年、公立はこだて未来大学 教授。2004年、同教授。2008年、北海道大学大学院情報科学研究科教授に就任。専門分野は知能情報学、複雑系、自律システム、観光情報など。計測自動制御学会、人工知能学会、精密工学会、日本OR学会、日本ロボット学会、日本機械学会、国際学会、観光情報学会等に所属。

群行動を定式化するFlockingアルゴリズムを
システムの全体最適化と恒常性の維持に利用

調和系工学研究室では幅広く多彩なテーマを扱っていますね。

鈴木 私自身がいろいろなことに興味があり、新しいものを積極的に取り入れていこうというスタンスなのですが、コンピュータそのものもわずか数十年の歴史しかなく、新しいことにチャレンジしやすい分野です。多様な意見や立場、利害が絡む現代社会は、たった一つのやり方ですべての問題が解決できるわけではなく、さまざまな考え方や手法を使い分けたり組み合わせたりする必要があります。実社会で求められるサービスを実現するため、コンピュータの技術を柔軟に活用して「調和のとれたシステム」を構築するのが本研究室の目指すところであり、コンピュータの広がりに伴って生まれてくる新しい技術や手法を幅広く取り入れることが重要だと考えています。

その中で、現在はどのような研究に取り組んでいるのですか。

鈴木 群ロボットやマルチエージェントシステムに関する研究で、「Flocking(フロッキング)アルゴリズム(解説1)を用いたロボット制御」を扱っています。Flockingアルゴリズムとはそもそも鳥や魚の群行動を定式化したもので、映画のVFXなどで群集を描画するときに使われたりします。群ロボットの制御にも応用されていますが、私が取り組んでいるのは一体のロボットの動きをFlockingアルゴリズムで制御するものです。

この研究の目的は「全体最適化」です。現代は社会の隅々にまでコンピュータが使われ、多種多様なソフトウェアがシステムを動かしています。「ソフトウェアが世界を回す」という言葉があるほど、金融、流通、運輸、エネルギー等々ありとあらゆる分野で複雑かつ大規模なコンピュータシステムが稼働しています。しかし、個々のシステムはそれぞれに最適化されていても、他分野のシステムとの関わり、あるいは社会全体として見た場合の調和やバランスまで考慮されているとは限りません。何かトラブルがあっても、どのシステムのどの箇所に原因があるのかを突き止めることさえ困難な場合もあります。

生物の世界では、内部や外部の環境が変化しても全体の状態を一定に保つようにする働きがあります。恒常性の維持(ホメオスタシス)と言いますが、私の研究もこれと同じように、個々に部分最適化されたシステムが互いの関係性を認識し、連携しながら全体最適化を目指すものです。ロボットの腕や脚などの動きを個別に制御して部分最適化を確保しつつ、ロボット全体の動きを常に正常に保つための仕組みづくりにFlockingアルゴリズムが応用できるのではないかと考えています。

Flockingアルゴリズムでロボットを操作
腕・足などの部位が自律的に対応し姿勢を維持

具体的にはどのようなものですか。

写真:博士(工学) 鈴木 恵二

鈴木 従来のロボット研究はタスク依存が主流で、ある目的を達成するために必要な動きを計算し、それに基づいて足や腕などの部位を動かします。本研究では、逆に各部位が個々に最適化を目指し、Flockingアルゴリズムによって全体の動きをまとめます(解説2)。恒常性の維持という目標だけを設定し、各部位がそれぞれに対応するため、解答は一つではありません。最良最適の解ではない場合もありますが、状況が変化しても次々と解を見つけ出していくという点では自律性が実現できていると考えています。

Flockingアルゴリズムでは群を構成するのは単一の固体ですが、ロボットの場合は全体が群であると同時に、構成要素である腕や足もまた部品の集まった群と考えることができます。本研究では、ロボットを複数の群に分けた部分群を設定した「拡張Flockingアルゴリズム(解説3)」を開発しました。

拡張Flockingアルゴリズムは、ロボット制御だけでなく、さまざまなシステムに応用できると考えられます。「自己調整機能創発へ向けた拡張Flockingアルゴリズムとその応用」の研究では、周囲の明るさに対するカメラの絞り調節に拡張Flockingアルゴリズムを適用し、周囲の明るさに左右されずに画像認識を行うという恒常性の維持に役立つことを実証しました。このように拡張Flockingアルゴリズムは、身近な家電製品から社会基盤までさまざまな分野で活用できると考えられます。

まだまだ発展途上にあるコンピュータの世界
新しい研究領域の開拓に期待

今後はどのような研究に取り組む予定ですか。

博士(工学)鈴木 恵二

鈴木 これまではロボットの動きやセンサの調節機能への応用に取り組んできましたが、今後はロボットなどの頭脳部分にFlockingアルゴリズムを適用してみたいと考えています。問題を解く作業にはさまざまなやり方があります。いろいろな解き方をやってみて、さらにそれらをブレンドしないと答が見つからない場合もあります。そういうプロセスにFlockingアルゴリズムが向いているのではないかと考えています。

Flockingアルゴリズムは決して新しいものではないのですが、今回の研究で部分最適化をうまく結びつけて全体最適化を実現する手法として拡張Flockingアルゴリズムが使えたことは大きな成果だったと思います。しかし、コンピュータの世界はまだまだ発展途上であり、もっと楽しく、もっと使いやすくできる余地はたくさんあると思います。学生にとっても面白いことがやれる可能性が広がっていると思うので、コンピュータの新しい領域をさらに開拓していきたいですね。

解説

解説1:Flockingアルゴリズム

魚や鳥などが群れで行動するようすを定式化したアルゴリズム。一般的には個々のエージェント毎の情報、すなわち隣接するエージェント、群れの重心位置および障害物等の情報から次の行動を決定しながらも、全体として群れを形成し、状況に応じてその群れの形態を自律的に変形させる特徴を持つ。

解説2:重りのついたバーを持つロボットの姿勢制御

ロボットがバーを持ち上げようとすると両端についた重りの影響でバーが振動しロボットが倒れそうになる。その際、足底部についた圧力センサでバランスの崩れを感知し、足や腕の動きを調節することで倒れないようバランスを取っている。バランスが崩れることを前提とした姿勢制御ではなく、ロボットの姿勢を一定に保つことのみを目的としている点が本研究の画期的な点である。

動画:重りのついたバーを持つロボットの姿勢制御

解説3:拡張Flockingアルゴリズム

Flockingアルゴリズムを実システムの制御に適用可能な形に拡張したもの。

動画:自己調整機能創発へ向けた拡張Flockingアルゴリズムとその応用