ゼミの3年生課題のためにMacへいろんな言語をインストール中です。MacPortsを使えば簡単にインストールできました。学生さんでMac使いはいないので役に立たないでしょうが備忘録として。
[Lua]
インストール:sudo ports install lua
コンソールでのインタプリタ起動:lua
[JavaScript(SpiderMonkey)]
インストール:sudo ports install spidermonkey
コンソールでのインタプリタ起動:js
[Scala]
インストール:sudo ports install scala
コンソールでのインタプリタ起動:scala
[Ruby]
インストールの必要なし?
コンソールでのインタプリタ起動:irb
[Smalltalk/80(GNU Smalltalk)]
インストール:sudo ports install gst
コンソールでのインタプリタ起動:gst
カテゴリー: 3年生研修
プログラミング課題2006
rubyやpythonを使ったプログラミング課題です。
課題
- 0?9999の整数から、100個の異なる数をランダムに選ぶ。(表示する)
- 同じ大きさの2枚の画像を1秒おきに交互に表示させる。
- AIBOを3歩あるかせる。
解決方法
- 基本的な考え方をアルゴリズムとして表現する。
- rubyかpythonのどちらかを選び、課題の1つをその言語で作って解決する。
- 行ったことを自己評価する。
学習
rubyやpythonの資料はネットで探すか研究室の書籍を参照するか、あるいは自分で買う。
ゼミ学生研修2006
2006年度のゼミ3年生に対する研修課題のページです。
ゼミ学生研修2006-4
第四課題は「論文の探索」です。
論文を探せ
卒業のためには卒業論文を書かなければなりません。
論文のためには研究をしなければなりません。
でもどんな研究をするのか、テーマを探すのは結構難しいことです。
自分の興味のある分野の論文を探して、そこで述べられている研究について知ろうというのが今回の課題です。
夏休みに読む論文を探す
夏休みの期間中に読む論文を見つけてください。
探す論文の条件は以下のとおりです。
- 日本語でかかれていないこと。
- コンピューターシステムかソフトウェアに関係すること。
- 多すぎず(100ページ以上)、少なすぎない(4ページ以下)こと。
- 興味・関心を持ったものにすること。
期限
7/18のゼミ日に選んだ論文について、どの理由で何を選んだのか説明してもらいます。(5分程度)
提出・発表
論文の概要をA4用紙1枚にまとめて提出してください。(後期開始時)
後期の授業で30分程度、論文の内容について報告してください。
ゼミ学生研修2006-5
第五課題もAIBOを使ったプログラミングを行います。
今回の目標は「ポジショニング」です。サッカーフィールド上の特定の場所に移動するプログラムを作ってもらいます。
前回と同様に、いきなりプログラムを作り始めるのではなく、問題の分析を行った上で、アルゴリズムを考えプログラムを作ってください。
ポジショニング問題
ロボカップ2006の公式フィールドと同じ環境で競技を行います。
基本的なルールとしては以下の通りです。
- フィールド上で、あらかじめ設定した4カ所すべてを指定時間内に巡ります。
- 一度通ったところを何度通過してもよく、どの順序で通っても構いません。
- 設定したポイントに近づくほど高得点となります。
計測
場所:40号館207教室
日付:検討中
時間:6時限目以降
ゼミ学生研修2006-3
第三課題はAIBOのモーション作成を行います。
今回の目標は「キックモーション」です。ボールをできる限り遠くに飛ばせるようなモーションを作成してください。
モーションの作成
新しく開発したTetoriシステムを使って、モーション(動作)を作成してください。Tetoriの特徴は以下のとおりです。
- TetoriはAIBOに姿勢を覚えさせることでモーションを作ることができます。
- 記憶した5つの姿勢を順に再生することで、AIBOが一連の動きを実行します。
- ひとつのモーションにつき5つまでの姿勢を覚えることができます。
- 記憶できる姿勢は四肢関節だけで、頭や尻尾の関節値は記憶できません。
- ポーズの記憶にパソコンは必要ありませんが、覚えた姿勢をファイルに保存することや、Defartに取り込むことが可能です。
課題:キックモーションの作成
AIBOの鼻先においたボールを遠くに飛ばすようなモーションを作成してください。
ゼミ学生研修2006-1
AIBOを使いながらロボットのプログラミングを学んでいきます。
今回の目標は「ポジショニング」です。ポジショニングとは、フィールド上の適当な位置から、自分が与えられた適切な位置に移動するというものです。例えばキーパーならゴールの前で敵ゴール方向を見ますし、フォワードなら試合開始時はフィールド中央に着くといったことです。
いきなりプログラムを作り始めるのではなく、問題の分析を行った上で、アルゴリズムを考えプログラムを作ることにします。
ゼミ学生研修2006-2
第二課題では実際にAIBOを使ったプログラミングを行います。
今回の目標は「ペナルティキック」です。要するにPK戦でのキッカープログラムを作ってもらいます。
前回と同様に、いきなりプログラムを作り始めるのではなく、問題の分析を行った上で、アルゴリズムを考えプログラムを作ってください。
ペナルティキック問題
ロボカップの公式ルールにあるペナルティシュートアウトを基本とした競技を行います。
基本的なルールとしては以下の通りです。
- キッカーとキーパーの2体で行う
- 5回のチャンスがあり、1回あたり1分以内にシュートしなければならない
- キッカーは何度でもボールに触れ、何回でもシュートを試みることができる。
- キッカーはペナルティエリアに入ってはならない。入った時点で×となる。
なお「キッカーがペナルティエリアに入る」のは「脚が4本とも完全に入った場合」とします。
更に今回の課題用にルールを追加します。
- キーパーは先日のロボカップジャパンオープンで使用したキーパープログラムを使用する。
- キーパーはペナルティエリアから出てもかまわない。
- ボールはキッカーとキーパーの間に置くが、どこに置かれるかは当日にならないとわからない。
課題2のチーム分けと結果
チーム成績
チーム名 メンバー 記録 備考 メンバー 記録 備考 合計 順位
Aチーム 小河原 31s 6回目のみ 横内 68s 1回目のみ 99s 1位◎
Bチーム 仲澤 120s 時間切れ 赤沢 43s 4回目のみ 163s 4位
Cチーム 水上 120s 時間切れ 福島 33s 4回目 153s 2位○
Dチーム 西方 34s 2回目 倉沢 120s 時間切れ 154s 3位
個人成績
順位 名前 記録
1 小河原 31s
2 福島 33s
3 西方 34s
4 赤沢 43s
5 横内 68s
連続成功者
名前 1回目 2回目 3回目 4回目 平均
福島 44s 42s 43s 33s 41s
西方 ? 34s 44s 36s 38s
課題2005-2
3年生のプログラミング課題(2)
テーマ
ボールとゴールを認識して動く
学習目標
* AIBOが物体をどのように認識するか理解する
* 視覚的な情報を動作に結びつける方法を学ぶ
課題内容
* ボールをゴールにシュートするプログラムを作る
大まかなルール
* ゴールとAIBOの間にボールを置く。
* スタートの合図によりAIBOが動きはじめ、できるだけ早くボールをゴールに入れる。
* 計測時間の合計が最短のチームが優勝とする。
細かいルール
* フィールド用シート(大)を使って行う。
* 一人1回チャレンジする。
* AIBOとゴールの間は2mとし、AIBOがゴールに向かうようにゴールの正面に置く。
* ボールはペナルティライン上のどこかに置く。
* ゴールの左右にはゴールライン用のスロープを設置する。
* スロープの長さは2004年度版フィールドと同じ。
* 開始の合図によってAIBOを動かしボールが完全にゴールエリア内に入った時点を終了とする。
* 開始と終了の間の時間を計測する。
* 2分をタイムオーバーとする。この場合の計測時間を2分とする。
* ボールやAIBOの脚がシートの外に出たときは失格とし、この場合の計測時間を3分とする。
* ゴール後や計測終了、失格時には無線によりAIBOの動作を止める。
* チーム毎に計測時間を合計し、もっとも少ない値のチームが優勝とする。
競技日
* 6月21日のゼミ時間に行う予定です。
* 7月4日のゼミ時間に行いました。
* 4年生およびラシタ君は、競技の準備・計測・撮影を担当してください。
チーム分けおよび結果
http://blog.ygu.ac.jp/seminar/e-itoh/blog/archive/2005/07/191127213316.html
資料
* フィールドデータ – http://www.itolab.com/wp-content/uploads/20050704a.xls
* 結果 – http://www.itolab.com/wp-content/uploads/20050704b.xls