« 2009年02月 | メイン | 2009年04月 »

2009年03月 アーカイブ

2009年03月06日

JADE LEAP for Android

JADE(Java Agent Development Framework)という、LGPLのマルチエージェントのJava実装があります。いわゆるエージェント指向のひとつのようです。JADEは、FIPA(http://fipa.org)で定めているマルチエージェントの仕様を実装したものです。これのAndroid用アドオンが出ているのでちょっと試している最中です。セットアップが結構面倒だったので、方法を備忘録として書きます。
 


1.ソースの取得
http://jade.cselt.it/から、JADEのソース(full版でも可)をダウンロードする。(ユーザー登録が必要)
・「add-ons and 3rd party sw」のページ(http://jade.cselt.it/community-addons.php)からLeapとJADE Androidを取得し展開する
・以下のようなディレクトリ構成になるようマージする


jade/
 |
 |-add-ons/
 |- …
 |-android JADE LEAP for Androidのディレクトリ
   |- demo
   |- doc
   |- lib
   |- src
 |-leap/
 |   |- …
 |   |-src/ LEAPのソースファイル
 |- …
 |-src/ JADEのソースファイル

2. build.propertiesの修正
JADE LEAP for Androidのディレクトリにあるbuild.propertiesを修正(Android SDKの場所など)

3. jarの生成
※ Antが必要です。Antのインストールと環境変数への設定(PATH等)を済ませておいて下さい。

・LEAPのビルド
leapディレクトリに移動し、

ant

leap/j2se/libに、JadeLeap.jarが出来ていればOK。

・JADE LEAP for Androidのビルド
/add-ons/androidに移動し、

ant jar

を実行。うまくいくとJadeLeapAndroid.jarが出来る。

4. JADE LEAP Main Containerの起動
leapディレクトリで

java -cp j2se/lib/JadeLeap.jar jade.Boot -gui

等と実行すると起動する。

5. 使い方、試し方
Androidのプロジェクトでは、JadeLeapAndroid.jarをビルドパスに含み
AndroidManifestに

<uses-permission android:name="android.permission.INTERNET" />
<service android:name="jade.android.MicroRuntimeService" />


を追加しておけば使えます。

JADE LEAP for AndroidのdemoディレクトリをそのままEclipseプロジェクトにインポートすればデモを試すことが出来ます。ただし、stringのvalue.xmlにIPアドレスの定義などがあるので、環境に合わせて変更する必要があるようです。デモを実行するとこんな画面が開きます。

GUI側にもエージェントが新たに追加されています。

このデモでは、Android端末からInteraction Protocol(対話の種類みたいなもの)を選んで、任意のエージェントへメッセージを投げることが出来ます。私はまだマルチエージェントの細かい振る舞いや仕様をよく知らないので、これから勉強してみます。ちょっとみた感じでは、メッセージを受け取ったときにそのメッセージに対応する処理を実装するだけでよさそうなので、プロセス間通信の仕組みとしては、シンプルでわかりやすいんじゃないかと思いました。

2009年03月12日

QCon Tokyo行きます

InfoQさんのQConというカンファレンスがあるのですが、今回は、2009年4月9日(木)と4月10日(金)に、日本(東京)で開催されます。私もそれに出させてもらえることになりました。木南さんありがとうございます。今までネットに名前と顔をセットでは出したことがなかったのに、ついに顔バレです。写真は妻に選んでもらいました。
http://qcontokyo.com/

特に海外から来られるスピーカーはかなりすごいメンバーばかりなので、びっくりします。が、私が臆す必要もないと思いますので、気持ちは負けないつもりで楽しんでこようと思います。Androidをアジャイリストや、非組み込みの世界に知らしめることが目的です。是非よろしければご参加下さい。

「Androidって組み込みでしょ?私、組み込みのことわからないから」

今までに何度この言葉を聞いたことでしょう。

2009年03月17日

Android Dev Phone 1のセンサーがおかしくなったときの対処方法

ある日から、私のDev Phoneが指し示す加速度計の値がおかしくなりました。多分何かヘンなことをしてしまったのだとは思いますが、どこかにぶつけたり、乱暴に扱ったりしたわけでもなく、全く心当たりがありません。Z軸の重力加速度のみが約0.5G大きくなっています。こうなってしまうと、色々なゲームで遊んでいても、挙動が変になって楽しく遊べません。自分が作ったゲームも動きがおかしいですし。。

と、困っていたのですが、工場出荷時の状態に戻すことで直りました。
「SD card & phone storage」=>「Factory data reset」です。
Dev Phoneはこのときにセンサーをキャリブレーションしなおすようです。

直ってよかったです。。教えてくださった方、ありがとうございました。
ちなみに、工場出荷時の状態に戻すと、SDカードを除く全てのデータは消去され、最初のアカウントのセットアップからやり直しですが、ファームウェアのバージョンだけは戻りませんでした。こういうものなんですかね。

About 2009年03月

2009年03月にブログ「GrandNature」に投稿されたすべてのエントリーです。過去のものから新しいものへ順番に並んでいます。

前のアーカイブは2009年02月です。

次のアーカイブは2009年04月です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。