東京大学大学院情報理工学系研究科知能機械情報学専攻  大学院情報学環学際情報学府  工学部機械情報工学科  情報システム工学研究室-JSK-


HOME JSKとは? メンバー紹介 研究プロジェクト 発表論文 研究プラットホーム リンク

Go to English page.

知能ロボット行動実現システム環境の基盤プログラミング言語

JSKではロボットプログラミングシステム記述言語として開発された オブジェクト指向Lisp言語Euslispが中核言語として利用されている. JSKにおけるロボットの行動実現プログラムは,Euslisp言語により対話 的に組みあげられ,多種類のロボットで利用可能な共通機能を再利用で きる環境が1987年より構築され,毎年新しい研究テーマのプロトタイピ ングの成果が継承され再現できるようにJSKの研究環境には蓄積されて きている.

図

オープンソースとして公開されているEuslispは,C言語で記述された Lisp処理系で,Lispのconsセルもオブジェ クトとなるオブジェクト指向言語として実装されている. 幾何モデルクラス,ネットワーク機能,システムコールなどをLispの機 能として利用できる.C, C++などで記述されたライブラリを宣言する だけで利用できる他言語インタフェース(Foreign Function Interface)も持ち,X windowシステム,OpenGL,数値計算, 画像処理などのライブラリを標準で組み込んで利用できる. Lispとしてのインタプリタにより,センサ情報の取得と表示, 動作の試行を対話的に実行できるため認識行動処理をすばやく プロトタイピングできる特長がある.また,リストデータ表現と処理が 基本にあり,多様な認識データ表現やタスク記述や動作プランの生成な ど知識表現,推論システムなど人工知能分野で実現されたプログラムと 容易に結びつけることが可能となる.さらに,Lispの強力なマクロ機能, リードマクロ機能等により新しい構文の言語処理系を構築したり, Vrml, xmlなどのパーザを容易に実装することができる.さらに,プロ セス間通信だけでなく,マルチスレッド処理も可能となっており非同期 通信,非同期処理,並列処理システムを組み上げることができる. そして,近年利用されつつあるRTミドルウェアCORBAコンポーネントや オープンソースRobot Operating Systemのノードなどとの非同期通信 などを備えることで大規模なロボットソフトウェアシステムを容易に 構築できるようになっている.
  • 参考文献
    1. 稲葉 雅幸, 岡田 慧, 水内 郁夫, 稲邑 哲也: ヒューマノイドロボットのシステム実現 - ロボットシステム記述言語 EusLispによる実装, コンピュータソフトウェア, Vol.23, No.2, pp.45--61, 2006.
    2. 岡田 慧, 花井 亮, 神崎 秀, 稲葉 雅幸, 湯淺 太一: ヒューマノイド行動ソフトウェア基盤におけるマルチスレッドLispへの実時 間GC機能の導入, コンピュータソフトウェア, Vol.23, No.2, pp.168--174, 2006.
    3. 花井 亮, 湯淺 太一, 岡田 慧, 稲葉 雅幸: ロボット行動ソフトウェア環境に適した実時間ごみ集め, 日本ソフトウェア科学会第21回大会, 3B-3, 2004.
    4. Toshihiro Matsui and Masayuki Inaba, EusLisp: An Object-Based Implementation of Lisp, Journal of Information Processing, Vol. 13, No. 3, pp. 327-338, 1990.