ICTスクール日記
PDF。 後で確認。
要するに 「コルモゴロフ記述量は計算が不可能だけど、圧縮プログラムを使えば近似計算ができるじゃん」 ということらしい。圧縮アルゴリズム屋さんが一生懸命速度や圧縮率を向上してきてくれているので…ということ。
ただ、圧縮のアルゴリズムをブラックボックス化して「コルモゴロフ記述量の近似になっているはず」とやっているけど、たとえば仮にこの圧縮方法が単に文字単位の出現頻度を数えてハフマン圧縮するようなやつだった場合、当然悲しいことになるわけで。そこの所どうなんだろうなぁ、という印象が強い。圧縮アルゴリズムは詳しくないのだけど、どうなんだろうなぁ。
なるほどなぁ。 BlockSorting。 PPM。 僕は圧縮はスルーしてきたのでハフマン圧縮以上のことを知らなかったから、それをコルモゴロフ記述量の近似に使っても悲しいことにしかならないじゃんと思ったわけだけど、最近の圧縮アルゴリズムは記号列の特徴的な繰り返し部分列を効率よく抽出するようになっているから、クラスタリングのための距離を計算するのにも使える訳か…。
__

ICTスクール2006冬 posted from フォト蔵
22時くらいに仮眠して、25時に起きてきたら、机の上に高校生たちの手によるタスクブレイクダウンの結果がいっぱい置いてありました。「未着手・着手・完了」の三分割のあれ。
__ 秋元@サイボウズラボ・プログラマー・ブログ: ループする写真 を紹介して、僕の「螺旋状に収縮させるスクリプトで簡単にできる」というアイデアを話したら「そこまで頑張ったことはしてないだろう」とのこと。 僕は「螺旋状に収縮させれば枠の切断は1カ所でいい」と思ったのだけど、 2カ所切断してしまえば別に螺旋状に収縮させる必要もない。

らせんThinkpad習作 posted from フォト蔵
そちらのアイデアで試してみたが、GIMPで適当にやってこれくらいのものは1時間かからないでできる。ふーん、なんだ、そうなのかー。ちょっとがっかり。
別に数学的な発想は必要なかった。 人間の目はだまされやすいのでレタッチで不自然な点が目立たないようにするというだけ。この習作ではモニターの右下部分がつぎめで、手を抜いているので明らかに不自然な形状になっているわけだけど、逆に言えばそこに気づかれなければ大丈夫。元ネタの方も、指摘されるまで気づかなかったのだけど膝関節が不自然に変形している。
まぁ僕の考えた方法は理屈上そういう不自然な継ぎ目がまったくできないはずだけどねぇ。でも、やる気が完全になくなってしまった。
__ 30時半。講義のキーワードだけでもメモっておこう。
量子コンピュータ - Wikipedia、 シュレーディンガーの猫 - Wikipedia、 チューリングマシン。NP完全。ベルの不等式
あと光ピンセットに興味があるなら奈良先端のオープンキャンパスに行けば見られると思うよ、と言う話。
チューリングの反応拡散系。 GIMPは昔はメニューにフォーカスしてキーを押すだけでキーバインドを変更できていたのに、最近のはできないようだ。 GIMPでチューリングの反応拡散のデモをやるのはどうするんだっけなぁ。 ぼかしと何かを繰り返しかけるだけで生物っぽいのができるんだけど…。 輪郭抽出でよかったのかなぁ。 何か別のモノだったような気もしなくもない、。
JythonとIronPython。いつもGRINEditは「XML-RPCでいろんな言語から使いやすい!」とアピールしているので「Jython便利だよ!」というアピールに使おうと思ったらバグがあった(苦笑) でもJythonコンソールでJavaのクラスをインポートしたりインスタンス作ったり、それをJavaで書かれているレイアウトエンジンにつっこんで挙動を変えたり、というデモをして、面白さは伝わったようなのでよしとしよう。
リフレクションがどう使われているのか、とか、静的型付けのJavaで動的型付けのPythonがどうして動くのか、とか、Object型の変数にはIntegerだってStringだって入るでしょ、という話。
僕が高校生の時にはまだPythonには出会っていなかった。 高校生の時にアスペクト指向だの動的型付け言語だのに触れたら、 今後どういう方向に走るのか非常に興味深い。 Jython本できたら送りつけようっと。
__ 2日目26時。
ブーリアン演算。球と立方体の足し算は、べったりくっついたもの。引き算は球から立方体に重なる部分をくりぬいたもの。ならば掛け算は何でしょう。
ブーリアンに限定されていなければ、コンボリューションって回答もありだよね。高校生から実際に出た回答には惜しいもの(NOT(X OR Y))もあったり。
ハミルトンがクォータニオンを発見したときの話。橋に刻み込んだとか。
やっぱりというか、想像通りというか、 Jython本の原稿はまったく書けていません。
Pythonの関数がオブジェクトであることを使って、 ある物体に入っている挙動(回転するとかうんぬん)が他のオブジェクトに乗り移るサンプルスクリプトを作成。
29時だ。もう眠い。
明日の夕方実家に戻って荷物を持って、明後日東京に帰らないと。
__ どうやら、高校生たちの手によって「やる気のある奴をプロモートするムービー」(高校生談)が作られそうな雰囲気。楽しみ。
__ ここから先は帰ってきてから書いています。 もう起きた事象の前後関係がだいぶわからなくなってきています。
誇張されて話が伝わる前に本人サイトで正確な情報を記載しておきます。
お風呂に入ったら、なぜか浴槽の中が熱湯でした。 シャワーで水をかけて冷まそうとしていた人がいたけど、 浴槽は満タンだったので 「すこしお湯を減らしてから水を入れないとダメじゃない?」と思い 浴槽の栓を抜きました大浴場の栓はお湯が入っている状態で抜いてしまうと、 お湯を全部抜くまで閉まりません。 閉めると流れていたお湯が止まった反動でパイプの中で何かが起こってまたふたが飛び上がります。 もしかすると、しっかり押さえつければ閉まったのかも知れませんが、 手を1秒つけるのも辛いような熱湯が入っている状態なので試せず。 仕方がないのでそのまま上がって管理人さんに来てもらいました。
えーと。浴槽の側面の半ばに穴が空いているようなタイプのお風呂は、 半循環式というらしく、浴槽の中のお湯を吸って暖めて戻しているそうです。なのでその吸水口(側面にある穴)より下まで水面を下げるとボイラーが過熱するそうです。 正直に報告してよかった。
結局、その後シャワーなどと同じ温水器からのお湯で浴槽に水をためるのに2時間かかりました。
「股間を吸い込まれて救出のためにみんなでバケツでお湯をかきだした」 とかいうデマが流される予定なので先に否定しておきます。