プログラミング入門課題について

3年生にはプログラミング言語を1つ覚えてもらいます。なにしろ全員のプログラミング経験がないので、プログラミング言語やプログラミングについて学習・研究するのに土台となるものを作らなければならなりません。
卒業研究や就職活動のためにC言語やJava言語を習得しようというのはよくある話ですが、本ゼミでは以下の5言語から1つ選んで学んでもらいます。
・Haskell
・Scheme
・Smalltalk/80
・Python
・Ruby
どれも聞いたことのない人がいるでしょう。その理由はいわゆるソフトウェア産業でよく利用される言語ではないからかもしれません。あるいは、これらを学習している人の数を全て足してもVisual Basicの学習人口より低いから、かもしれません。
これらの言語はプログラミング言語の中でも個性的な特徴を持っているもので、その個性が現在のプログラミング(言語や方法論)に少なからぬ影響を与えています。
みなさんにはこれらの言語の学習を通じて、プログラミングとは何か?プログラミング言語の背景にある概念は何か?といったことに興味を持ってほしいと思っています。
ともあれ、プログラミングは楽しいものですし新しいプログラミング言語を学ぶことは人をワクワクさせるものです。ぜひ、これらのプログラミング言語を楽しみながら学んでください。

言語の選択

昨日のゼミでは計測会の他に、今年学ぶ言語を各自に選択してもらいました。
先週候補となる5言語を挙げたので、その中から気に入ったものを選んでもらうことに。1週間でいろいろな情報を得て、結局以下のように決まりました。
Scheme 全さん
Haskell 三坂さん、保坂さん、キュウさん
Smalltalk/80 津田さん、堀内さん、王さん
Python 宮代さん
Ruby 清水さん、田中さん、野本さん
いちおう5言語すべて選ばれることとなりました。伝統的な言語というよりもはやりのLight Weight Languageですが、ぜひみっちりと基礎を学んで欲しいと思います。
来週から本格的に学習を開始してもらう予定です。

予選2日目、決勝戦

とても残念な結果となりました。
今日、残りの予選試合をFC Twavesと行いました。4:0で負けました。前半FC Twavesの調子が悪く「いけるかな?」と思ったのですが、後半は見違える動きで圧倒されました。
こちらのプログラムとしてはベストだと思うのですが、まったくレベルの違う動きで太刀打ちできませんでした。結局予選を最下位で終えました。
すぐに決勝戦がはじまり予選最下位の我々から試合がありました。対戦相手はBaby Tigers DASHで古豪チームです。ばたばたとした試合であまりBaby Tigers DASHも調子がよくなかったようなのですが2:0で負けてしまいました。これで我々のロボカップ4足リーグも終わってしまいました。
いろいろと反省するところは多いのですが、まずはプログラムを作った帝京科学大学の皆さんと津田君、それから試合を撮影してくれた王君、田中君、野本君、堀内君に感謝したいと思います。また、今までのITOLABチームの歴史を作ってくれたOBの皆さんにも感謝したいと思います。
来年以降どうするかは未定ですが、またいろいろとチャレンジをしていきたいと思っています。
応援してくださったみなさま、ありがとうございました。

予選1日目

今日からロボカップジャパンオープン大阪が始まりました。
今日SA+ITOLABチームは予選の1試合だけ行いました。
で、結果ですが、
強豪チームのTeam ARAIBOとの対戦の結果、6:0で一方的に負けました。
前半にGKの視覚設定が不十分でボールが見えておらず、素通りで4点入れられたのが大きな敗因だと思います。もちろん、ARAIBOのスピードの半分も出ていない状態なのでボール支配率が限りなく0%に近かったのも問題ですが。
明日はFC Twavesと対戦です。4点以上入れられると予選最下位が決定です。なんとか失点を防いで得点したいです。

準備完了

今日も午前中から津田君と二人で最終的な調整を行っていました。津田君はシュート絡みのプログラムを修正していて、ゴールが近くにない時になかなか思うように処理できずに苦労していたようです。ボールを抱え込む動きも現状のものでは精度が低く、ちょっと使い物にならないようでした。Hi-boチームのように精度高く抱え込めると良いのですが…
さて、今年の4月に卒業したラシタ君が遊びに(励ましに)きてくれました。初期の研修が終わって、これから半年程度宮城県の方で研修を受けるそうです。会社は規則が多くて大変だけど結構楽しいということでした。1ヶ月とはいえ久しぶりに顔を見てほっと安心させてもらった気がします。やはりOBはありがたいです。(OBの皆さん、時間が空いたらいつでも研究室にお越し下さい)
調整を終えてロボットやPC一式を会場に向けて発送しました。これで現地に行くまですることはありませんので、安心して?次のシステムや活動の計画を練ろうと思います。
なお、次の記事はロボカップ終了後かもしれません。その時をお楽しみに。

今後の予定

どうやら4足リーグも終了しそうな感じなので、公式戦に出るのは今回が最後になりそうです。今後Defartをどのようにしていくかいろいろ考えているのですが、思いつくところを忘れないように書いておきます。

  • 新しいプラットフォームへの対応。ヒューマノイドリーグに移行する可能性が高いのでそちらに移植する。C++部分は大幅な変更が必要だろう。
  • アクションを常に表示するようにする。また、アクションの共有・連続モーションなどもできるようにする。
  • 記録用の表現とロボット用の表現を分離する。いまは同一だが柔軟性に欠けるため何らかの記述言語を作る。記録用はXMLでよいだろう。エンジン用はparseの楽なS式か。単に両方ともS式にするか。
  • ERS-210への対応。普通の授業で使えるようにするため。
  • PCとロボットの通信プロトコルの改良。プログラムを与えてコマンドを柔軟に。

思いつくたびに追加する予定です。

ロボカップジャパンオープン大阪大会に向けて

ロボカップジャパンオープン大阪大会に向けたプログラムを作成しています。
東海大学オープン、玉川大学の練習試合はどれも誉められたプレイができていなかったので、かなりの部分に手を加えることにしました。
一緒にいった学生さんからプログラムが複雑で理解しにくいとの指摘があったので、構成をかなり変えてシンプルにまとめました。さらに、3年生が作ったプログラムも取り込みやすくするようにしました。ようやく明日の帝京科学大学との合同練習に持ち込めそうです。
今日は新3年生の津田君と一緒にテストを行いました。津田君のプログラムはかなり精度を増してきて、シュートまでの一連の動きができるようになりました。この上達ぶりは今までで一番早いのではないかと思います。ロボカップの試合でも使えるようにさらに頑張ってほしいところです。
明日は帝京科学大学の皆さんとの最後の合同練習です。フィールドを広げてテストするのも最後になるかもしれないので悔いの残らないよう十分にテストしたいと思います。

玉川大学での練習試合参加

玉川大学でロボカップの練習試合があったので参加してきました。もうジャパンオープンまで10日間ほどしかないので、調整も兼ねてと思っていたのですがさんざんな内容でした。以下はその報告です。
—-
場所:玉川大学工学部ロボット工房
時間:10時?17時
参加者:東海大学+玉川大学(FC-Twaves)、東京工科大学(Hi-bo)、山梨学院大学(SA+ITOLAB)
試合について:
 全体で3試合の総当たり戦を行いました。
第一試合:FC-Twaves v.s. Hi-bo
 全体的にシュートまでいかない感じでした。FC-Twavesのオウンゴールとゴールで、結局1:1となりました。
第二試合:FC-Twaves v.s. SA+ITOLAB.
 ほとんどSA+ITOLABチームはボールを支配することができず、一方的な試合でした。ただし、終了直前に一瞬ゴール際にボールがいったところをDFが身体で押し込んだため、1:0でSA+ITOLABが勝ちました。
第三試合:Hi-bo v.s. SA+ITOLAB.
 やはりSA+ITOLABチームはボールを支配できませんでした。逆に
Hi-boの確保率は非常に高く、振り回される感じでした。ただ、どちらも決定的なチャンスを逃していたため全体的にぼんやりとした試合となり0:0で終わりました。
SA+ITOLABチームの各プレーヤーの様子です。
結局DFが1点を上げただけで、その他のフィールドプレーヤーはボールに触れていませんでした。DFもおかしな動きを繰り返すことが多く万全の状態ではありません。
FWは東海大学オープンより良いものの、試合前、試合中のポジショニングが悪かったりボールへの近づきが不十分だったりでほとんど試合に参加していませんでした。(かなりLeaving the fieldを繰り返していました)
GKはほぼ完璧な動作で、かなり反応もよくなっていました。うちのチームの中では一番の出来ではないかと思います。ボールを止める場面もあって安心して見ていられました。たまに、ボールを探していない状態が続くことがあり、そこがちょっと心配です。
MFはボールに近づいた後の挙動がおかしく、すぐにボールを見失っていました。また、ほとんどシュートに結び付かずにポジショニングばかり繰り返していたように思います。
あと10日しかないのですが、何とかDFとMFを作り変えてシュートを狙えるようなものにしていきたいと思います。
参加した3年生、本当にお疲れ様でした。

Defart/PC v0.17a

このバージョンはジャパンオープンに向けた暫定バージョンです。通常の使用には向きませんのでご注意ください。

ここで公開しているソフトウェアは無保証です。本ソフトウェアの作者はソフトウェアを使用することによって生じたいかなる損害についても責任を持ちません。

  • 記憶範囲条件への対応(20070413a)
  • 黄色チャネルの表示を緑色から黄色にした(20070413b)
  • プログラム保存時のバグに対処した(20070423a)
  • defart.cfgを管理できるようにした(20070423b)
  • 「見えない」範囲指定時に対象物名が消えるバグに対処した(20060424a)
  • 記憶条件の色をマゼンタにした(20060426a)
  • 記憶条件の記憶時間を設定できるようにした(20060426b)

“Defart/PC v0.17a” の続きを読む

ジャパンオープン2007までのTODO

Defartシステム

  • 計画の生成と、実行
  • 方向や回数の記憶
  • ボールを探す際の動かし方
  • 視覚条件(近い)のビジュアル化
  • 視覚条件(遠い)の条件見直し、notの導入

モーション

  • 待機姿勢
  • 遅いモーションの除去
  • シュート

体制

  • 当日参加者の募集
  • 機能の分割、分担