昨日「非力なマシンに LinuxBeanを入れてみた」と書いたばかりなのですが、やっぱダメだった報告。
一応、子供の主な目的は Scratch だとわかっていました。
だから、ちゃんと Scratch が使えることは確認していた。
簡単なプログラムも組んで、多少遅いけど動作に問題ないことも確認した。
でも、子供はすでにいろいろなプログラムを作っていた。
これが想像以上に大規模なプログラムで、読み込ませたら非常に重い。
ついには、Flash がクラッシュして停止した。
うーむ、使い物にならなかったか。
Hello World 程度の簡単なプログラムが動いたからと言って、実用にはならなかった、という話。
Scratch には 1.4 と 2.0 の2系統がある。
長男が普段使っていたのは、2.0 。WEB サイトにアクセスすることで、WEB ブラウザ上で動作する。
Flash 上で動いている。
これとは別に、ローカルマシンにインストールして使用する 1.4 がある。
こちらは、Squeak (Smalltalk のフリー実装)上で動作する。
番号が上だから 2.0 のほうが高機能、というわけではない。
うちもそうだけど、子供が自分のマシンを持っていることは少なくて、親のマシンを借りていると「ソフトをインストール」はできないことがある。
そこで WEB ブラウザ上で動くようにした、というのが 2.0 なのだけど、WEB ブラウザの制限によって一部機能を諦めている。
とはいっても、機能劣化版ではなく、2.0 でないと使えない機能もある。似て非なるものだ。
1.4 でないと使えない機能の筆頭は、ポート入出力。
RaspberryPi に Scratch1.4 を組み合わせ、自作の自動車を制御する、なんて遊びが子供の間で流行している。
こういう、制御系に使う場合にはポート入出力が必須。
センサーで状況を確認して、モーターを動かす、というようなことが基本なので、車でなくてもかまわない。
現実世界をプログラムでコントロールできる、という夢のような機能は、1.4 でしか使えない。
2.0 でないと使えない機能の筆頭は、「ブロック」(手続き、関数に相当)の作成と、インスタンスの生成。
この二つ、プログラムへの理解が進まないと混乱するだけの機能なので、1.4 では入れられなかったのだと思う。
でも、使い慣れるとこれなしにはプログラムが作れなくなるほど強力。
特に、ゲームなどで必要な「たくさんの敵」の表現は、2.0 のインスタンス生成なしには考えられない。
さて、LinuxBean に 1.4 をインストールしてみたら、2.0 よりも軽快に動く。
それはそうだろう。1.4 は RaspberryPi でもよく使われるが、いくら非力とはいっても Lavie は RaspberryPi よりは高性能だ。
#初代 RasPi との比較。最近の RasPi は高性能化しているので負けるかも。
長男はとりあえず「ちょっと画面構成などが異なる」 1.4 に興味をもって少し使っていた。
でも、やっぱり Scratch は 2.0 でやりたいようだ。
#この件、高速化のための情報をいただいたので後日書きました。
RaspberryPi では、通常の Scratch よりも3~10倍程度早く動くものが使われているそうです。
話は変わる。
最近長男は将棋にも興味を持っているのだけど、周囲がみな弱いので、ゲームにならない。
駒を動かすのがやっとの長女を相手にして、勝ったと喜んでいる。全然自慢にならない。
そこで、Linux 上で動く将棋ソフト、GNU Shogi (と、グラフィカルに表示するフロントエンドである Xshogi)を入れてあった。
これは興味をもって遊んでいた。
でも、強すぎる。本来、このソフトは非常に弱い部類なのだけどね。
コンピューターに将棋を打たせるのも難しい、という時代に「森田和郎の将棋」が作られ、そこで使われたアルゴリズムなどはすべて公開された。
その後、森田将棋を参考に多くの将棋が作られ、GNU Shogi もそうしたものの一つだったはず。
初期の世代のアルゴリズムなので、それほど強くない。
Bonanza は、森田将棋以来のアルゴリズムを大きく変えたソフトだ。
将棋ソフトの思考の基本は、数手先に最善になる可能性が高い手を読む、ということだ。
ここで、「最善」とは何かが問題になる。
森田将棋のアルゴリズムでは、この「最善」をどう考えるかがプログラマの腕の見せ所だった。職人芸ともいえた。
Bonanza では、この「最善」を求める職人芸の部分を、機械学習に置き換えた。
膨大な棋譜を読み込ませ、それぞれの勝敗を元に、どこの手が良かったのか、悪かったのか、膨大な棋譜すべてに共通できる考え方を、自ら編み出していく。
そして、森田将棋がアルゴリズムを公開したように、Bonanza もソースコードを公開した。
それ以降、将棋ソフトはどんどん強くなっている。今も発展の途上だ。
…と歴史話を書いてみたけど、つまりは GNU Shogi は非常に弱い。
長男は将棋に興味を持っているけど、GNU Shogi にちっとも勝てない。
もちろん僕も勝てない。将棋に関しては僕もかなり弱いから。
このマシン、Windows より起動も終了も速くて、気楽に使えるのは事実。
当面気楽な WEB 端末として使ってみるのもいいかもしれない。
長男は将棋は気に入ったようで、将棋だけ遊ぶのにこちらのマシンを使っている。
他にも、いくつか子供が興味を持つようなゲームを入れてみてもいいかもしれない。
同じテーマの日記(最近の一覧)
関連ページ
古くて非力なマシンをLinuxBeanで再生してみた【日記 15/10/23】
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 |