UCLA-京大の遠隔講義

Alanが半分(というのはつまり70%くらいということになってしまうわけだが)、京都側で喜多先生が半分、という時間配分だった。

Alanの話はUCLA側の生徒に出されていたエッセイの課題に関する講評からはじまり、前回の続きである。

Julia Nishijima先生による小学校1年生のクラスを参観する機会があった。Alan自身はまったく関与せずにカリキュラムが組まれていた。Nishijima先生自身は微積分学(calculus)のコースなどは取ったこともなく、微積分学の定義などは知らなかったはずだが、天性の数学者として直感的にそれを理解していたように見えた。教室は数字を表す複数のもの(長さとか矢印とか物とか)がいろいろ飾られていて、数のさまざまな表現法が示されていた。

Alanが見ていたのは、ダイヤモンド型(平行四辺形)や台形や正方形の小さなコマをたくさん使って、次に大きい相似形を順々に作っていく、という課題だった。台形はピースを逆さまにして組み合わせたりしなくてはいけないのでちょっと難しいが、それでも1年生たちは自分に与えられた形のピースを並べてだんだん大きくなる相似形を作っていく。ある大きさの相似形を作るのに、その前の大きさの相似形から何個余計にピースを必要としたかと、何個のピースからなっているかを表にまとめていく。

例えばダイヤモンドなら、最初のものはダイヤモンド1つ。次の大きさを作るにはダイヤモンドを3個足して、全体で4つ。その次はダイヤモンドを5つ足して、全体で9つ。というようにやっていくと、5番目くらいのところで、子供は「足す数はいつも奇数で、合計はいつも平方数だ」と気が付く。

山場はさらにその後にあって、それぞれ別々の形を使って作業していた子供がそれぞれの成果と表を持ち寄ると、台形でも正方形でもダイヤモンド型の平行四辺形であっても、表に埋められた数が奇数の数列と平方数の数列になっていることには代わりがない、ということに気が付いて、子供達が大いに感動する("holy shit")、という授業であった。Alanもこれを見ていて涙を流さんばかりに感動したそうである。

子供達は、我々がやるように1つの例からすぐに一般化した理論を導き出すことはできない。料理本方式ともいえて、最初は言われるままに6種類7種類のスープを作り、それぞれを味わったりしてみるとようやくスープ一般に適用できるスープ理論が分かってきて、その理論を適用できるようになる。

もし足し算だけの世界にとどまるように工夫しておいて、それを繰り返し適用するようにすれば、6歳の子供でも等加速度運動のような2次式を扱うことができる。

これは数学に対する実証科学的なアプローチとも言える。橋を作るときは、まず橋を自然界の中に作り、その後で科学者達が橋を観察して、橋に関するより良い理論を作り出すというサイクルを繰り返すが、この1年生たちもそのようなやりかたで学んでいたと言える。

(途中BabbageとDifferential Engineの逸話があったのだが、聞き逃した。)

ここでeToysの画面に切り替わる。車の絵のほうはhand-eye-viewで、ビューワのほうはsketchy-and-cold-viewと言える。(今回は言及はなかったが、子供の発達段階に関してTactile/Kinesthetic(触覚的、運動感覚的)段階と、記号的段階を経るという話にも対応しているわけである。)

絵で遊べるLogoのようにペンを使って線も書ける。「進む」と「まわす」を組み合わせると定数曲率の図形つまり円が描けるし、円をポリゴンで近似したものを考え、それぞれの線分を矢印で表現するようにすれば、ベクトルの和で円が描かれているとも言える。

eToysの世界ではオブジェクトは1種類。当初Simulaのような継承を導入したのは良くなかった。

変数の概念を学ぶのは難しいように思われているが、eToysの環境のように、変数を学ぶことに意味があり、動機付けがあって普通の言語で語られているようになっていれば子供でも学ぶことができる。車の運転がしにくいので、いわばギアを入れるようにハンドルの角度を割り算してから車の向きにするようにすれば、運転がしやすくなる。9歳の子にとっては、「割り算がなんの役に立つのかはじめて分かった!」という経験になる。

環境付けされた学習と言うのはMontessoriの「子供は環境と対話しながらその環境のことを学ぶようになっている」あるいはPapertの言う、「フランスに行けば、フランス語を教えなくても子供は勝手にフランス語を話すようになる」という理論に通じる。多くの学校では、教えていることが重要な事柄でないかのように先生が教えているので、動機付けが弱くなってしまっている。

eToysでは、スクリプタもオブジェクトなのでスクリプタに対するスクリプトを書くことができる。人間の知覚は小さな違いを見つけ出すことを得意としているので、ものをデザインするときについつい違いを強調してしまって、同じように扱えるはずのものを別物としてしまうことがある。違わなくても良いものを違うように扱う必要はない。

道を描き、道を自動的に辿る車を作る。

ここまでの短い例でも、変数、ベクトル、フィードバックシステムというような強力な概念がたっぷりと詰まっている。

Alanの子供時代にはまだT型フォードやA型フォードが使われていた。300個くらいの部品からなっていて、小学生でも週末に全部ばらばらにしてまた組み立てなおすことができた。どこが壊れても直せたし、鍛冶屋さんが部品をとんとんと作ってしまうこともできた。本物の車だが、内部が理解できたわけである。我々がやろうとしてるのは、重要な知識に関して、このT型フォードのように(本物の車と言う)エッセンスは残しながらも、子供が理解できるものを作り出すことである。

最後に僕(大島)の作ったガスタンクの例が出てきた。還元主義的な科学だけでは、素粒子が大量に集まった後の物質の挙動を説明しきれない。emergentな(普通の訳は「創発」というのか)性質を扱う科学と還元主義科学とは手に手をとって補い合う関係である、と子供に教えるときに、毛玉のようなシステムは非常に強力である(とAlanが言っていた)。

ここで話者が京大側の喜多先生に交代した。喜多先生は主に京都の小学校で継続的に使われていますよと言う話と、去年のTIDEで学生が作った例題を紹介してくださった。が、京都の画面をこちらに送る設定に手間取ったのと、あとちょっとした事情があってUCLA側の学生はややダレ気味であったかもしれない。それから、ここにこういうことを書くのはあまりうよろしくないのかもしれないが、学生が作ったeToysプロジェクトを紹介するのに、スクリーンショットを一枚だけの静止画としてPower Pointに取り込んで紹介するのはいかがなものかなあ、と思うわけではあった。遠隔でアニメーション付きのものが正しく再生されるか定かではなかったという懸念があったのは確かではあるが。