情報の図による表現の例に確率漸化式を素材に求めてみる

今の課程になって、期待値が出題不可になった。よって、確率の出題傾向も変化してくると思っていた。

私の予想は、条件付き確率の問題、特に原因の確率のタイプの問題が頻出になると思っていた。しかし、予想は外れた。原因の確率のタイプの問題はあまり出てこない。去年は確率漸化式の問題が続出したように見受けられた。

この確率漸化式は、情報の授業の素材として扱えると個人的には考えている。特に、問題の図による整理の部分である。社会と情報ですら図解による情報の整理は立派なテーマの一つである。

情報の時間であれば、この問題が解けるかどうかはあまり扱わなくて良い。よって、一番大切な「図による整理」の部分だけ時間をかけて扱えるのが良い点である。

特に、2年で情報をやる場合はこれが有効である。同時期に数列を履修しているので。

ここのところ毎年出している某京都の有名国立大学は今年も確率漸化式を出題した。今年の4の問題などは、情報の授業で扱うのに良い素材かもね、と思った。少し見ていってみる。

問題

問題を複素数平面でない形で書いておくと以下の通り。tは1以上の整数、みたいな細かいことはいちいち断らずに書く。

半径1上の正三角形の三頂点を点が動く。点1を偏角0の点、点2を偏角2/3\pi の点・点3を偏角4/3 \pi の点としておく。 t=1で点1にいる確率は1/2, Bにいる確率は1/2である。t>=2以降は次のルールに従う。

  • t-1で点1にいた場合、点1に止まる確率と点2に行く確率はそれぞれ1/2。
  • t-1で点2にいた場合、点2から点3にいく確率は1
  • t-1で点3にいた場合、点1と点3にいく確率はそれぞれ1/2

(注 : 点Aとかとするのが普通だが、手書きの図を数字で書いてしまったのでそれに合わせる)

なお、元の形は移動のルールが複素数平面の形で書かれている。それを翻訳すると上記のようになる。

いきなり式は立てないですよね・・・

複素数平面の形が書かれている問題文を、上の形の問題文の理解に落とし込むことがまず必要である。そのときに規則性を把握するのに作った図が次の図である。

問題文を見ながら、下の図に自分は書き込んでいった(注 : 実際は手書きなので「表」などはひらがな。

f:id:baruku07:20180301002221j:plain

実際の問題文では、コインが裏が出たときが共役を取る、となっている。共役を取った結果は点1・点2・点3ごとにそれぞれ色々と違う。この挙動の違いは、三角形を実際に見ながら考えないと混乱すると判断した。よって、まずは三角形を書いてそれに書き込んで考えていこう、ということで書いていったのがこの図である。

このまま式を立てても良いけど、普通の状態遷移図風に書き換えたほうが落ち着いて式が立てられるので、図を書き換えたものが次の図である。

f:id:baruku07:20180301002237j:plain

確率1/2なので、確率は書き込まずに、この図のままで式を立てても大丈夫、というところでここから式を立てた。

後から駿台の解答速報を見たら、わりと図が似ていた。。。自分がやると、なぜか河合の解答でなく駿台の解答に似る傾向がある・・・(予備校などいけるレベルではありません。私は)

なお、河合は表で整理して解答を書いている。

河合の場合は、アイデアを導くための整理というよりかは「全ての場合をちゃんとつくして説明していますよ」的な論理的な説明を重視して表にしたのだと思う。

この2社の整理の仕方の違いでも、現行の社会と情報でも立派な授業の問になる。図と表の表現の違いは?メリット・デメリットは?などとやれば良い。

この手の問題ってモデル化の単元で扱うべき思考プロセスを扱えるのでは?

かちっとした文章でまとめられている要件を図や数式に落とし込むというのは、モデル化のプロセスの一種であると考えている。図にするだけで「図によるモデル」とかいう言い方で教科書でも扱われている。

理想的な形で、この問題を情報の授業で扱えるなら次のプロセスを踏むことになると思う。

  1. 図に落とし込む
  2. 数式に落とし込む
  3. 手で解かせる
  4. 計算機でシミュレーションさせて手の結果と整合的になることを確認させる
  5. シミュレーションの様子をグラフィカルに見せる(この場合であれば、三角形上で点を動かしている絵を作るなど)
  6. 問題条件を変えて解く(手では難しい場合が多いので計算機で)

パブコメで出ている指導要領でも、手で解かせたものと計算機で解かせたものの比較はしろといっている。なので、手で解かせること自体に何も問題はない。

この問題の場合、問題条件を変えると手では解き難くなるはずである。この問題を手で解くときは、対称性を利用している(逆にそれに気づけますか?という問題でもある。図を描いていたら、向かっている線の様子で対称性に気付きやすくなる)。よって、計算機のほうが簡単に問題条件を変えて色々と試しやすいはずである。

数式処理ソフトで行列のn乗を使って解かせてみるのも面白いと思う。

地に足をついた素材で普通の人は授業をしたい

数理モデルの扱いについては、情報ワーキングが過激も、それを反映したパブコメ版の指導要領もやや過激なような気がする。ここまで過激にやられると、もはや一般人は全部無視でやるぞ、と居直られても仕方がないような気がする。

超ハイパーな指導力とゆとりがないとあれやるのは無理ですよと最近思う。この視点で、いくつか問題に関連して思うことを述べておく。

現象からモデル化の部分はハードルが高すぎる

現状、物理以外で(そして物理ですらパターン暗記)、モデルというものそのものをいじっているという実感のある生徒はほとんどいないと思う。

その状況で、情報の授業では、現実の要件をこの問題文の形に落とし込む部分から始めていこうとしているように見える(現状の情報の科学などの教科書も見ながら考えると)。しかし、そんなのは無理でしょう?と思う。

モデルを触っているという実感の無い人に、何の参考情報もなし(情報の教科書は基本的にそういうスタンス)モデルを一から作らせるということは、まんじゅうを食べたことのない人に、誰も考えたことのないオリジナルまんじゅうの作り方を考えろといっているものだと思う。

だいたい、ほぼモデル化の初期の作業が済んだこの問題文から、この図に落とし込めるレベルの生徒ですら、どれぐらいいるかわからない(自称でない進学校を除いて)。現実を見ようよと言いたい。

不自然に身近や社会に題材を求めても

問題解決では「現実の問題を扱って興味を引き出す」「身近で考えやすい問題を扱って興味を引き出す」とやたらにいっている。そういって、これ高校生からは浮世離れしてるよな、という問題を扱っているのをよく見かける(ように私は感じる)。

高校生にとっての現実の問題は、まさに目の前にある受験である。それに関連させて、情報科が扱うべき項目を扱って何が悪いと個人的には言いたい。

歴史的経緯はわかっている。情報未履修問題のときに、適当に他の教科に振り替えられた思い出があるので、そういうことはさせたくないという思いが強くなるのもわかる。しかし、もうそろそろそういのはね・・・

受験科目の教材研究の蓄積・教材の質の高さは生かしたい

受験関連の教材は質が高い。こういった、問題文の状況の整理の良い例をみたければ、受験参考書などの場合の数・確率の本を見れば良い。受験参考書の場合の数・確率の本は、図の描き方の実践集みたいなものだと思っている。

受験系の参考書のもう一つのメリットは、訓練系の問題が大量に用意されていることである。これは、授業をするほうからするとありがたい。一般人に能力を身につけさせるには、やはり一定の演習量は必要となる。このとき、一個人で問題を大量に作るというのは難しい。質の高い演習問題が揃っている教材が使えるなら使いたい。

個人的には、(ある程度の偏差値以上の)入試レベルの数学の「解く前の問題の整理」は情報のモデル化で求められているものとかなり重なっている。そして、情報で開発されている教材よりまともなものが多いと思う。

こういう題材を、情報で展開するときは、以下の点がポイントだと思っている。

  • 情報科の身につけさせたい資質の部分をうまく取り出す(情報系の技術書などをみながら考える)
  • 一般人向けにマイルドにする

理想の情報のカリキュラムでも数学の生徒実態を考えておかないと全てがぶち壊し

適当に情報の指導要領についてかきなぐっていくシリーズである。

プログラミングとそれとセットになるモデリングの部分のかき回しが、思ってたより逃げられない感じのかき回しでびびった話に関連してのことである。(指導要領の本文をPDFから持ってくると、制御文字がトラブルを引き起こすので貼らない。)

この書き回しだと、情報で数理モデルを扱わざるを得ない感じである。私は、もう少しふわっとした書き回しがくると思っていた。よって、大変な学校ではふわっとした書き回しをうまく使って逃げれば良いと思っていた。しかし、この書き回しだと逃げ方が限定されそうであるような気がしてきた。

ここまで過激にやられると、逆に工夫してどうこうしようという人はいなくなるでしょう。そうなると、結局は、超優しい教科書が出てきて、それを何も考えずになぞり「やりました」ということになるところに落ち着きそうである。ただ、大人のメンツの関係上、超優しい教科書レベルが使えないケースもありそうで。その状況では大変でしょうね・・・

2年生でやるならすばらしいカリキュラムだと思います

パブコメの案の、情報のカリキュラム自体は私は良いと思っている。どの単元も私は好きで教えたい単元である。現状でも、ネタを拾ってきて次の情報で入る話に近い話は色々としたことがある。しかし、現状では「わけのわからない高度なことをやっている」とか「これは情報ではない」などと不勉強な人々(教師も生徒も)に錯覚されることがたまにあった。その現状が解消されるだけでうれしい話である。

ただし、予備知識と能力がない段階でこれをやると最悪のカリキュラムになる。このカリキュラム、2年生で教えるのであれば素晴らしいと思う。色々とやりたいことがありすぎる。しかし、1年でやらされるケースもそれなりに出てきそうである。それがいかにあほらしいことか。特に、数学の準備なしでこれを教えさせられることはありえない。それだけは強い問題意識があるので、その点についてばかばかに批判する。

逃げ道のない書き回しなので

数学が問題になるのは、(3)のコンピュータとプログラミングの単元である。ここは、ふわっとプログラミングではなくて、アルゴリズム数理モデルという理系プログラミングをやれという指定にしか私には読めなかった。

もちろん、理系風のことをやるとはいえ、必履修で先行科目の規定や履修年次の規定がない以上は、使う数学は厳密に中学範囲に制限されるはずである。まあ算数や中学数学でも十分にしんどいということは置いておこう。

プログラミング、というだけであれば、数1Aは逃げられるプログミングはいくらでも存在した。大変な学校は、まあうまくやって逃げるか、とも考えていた。しかし、ここでは「社会や自然などにおける事象をモデル化する方法」となっている。こうなると、数理モデルを避けにくい。

数学っぽい話を工学部系の人がするときに「この程度は数学でないから難しく無い。」とよくいう。しかし、これは見ているレベルが違う。IF関数で不等号が出てくるだけでレベルでも十分に「ばりばりに数学」という環境も、世の中に存在する。

コンピュータでふわっとモデルいじるだけだから、数学関係ない、という言い訳も普通なら通る。しかし、ここでは留意事項として、手で色々とやって比べろと書いてあるのである。手で数理モデルを操作するということは、数学そのものの営みである。それも、生徒が数学の時間に大の苦手な文章題を、さらにややこしくした文章題である。

はっきりいって、理科で物理基礎を必履修にされされている気分である。

実現性を考慮せずに理想を語るのは無責任では・・・

別に数1Aの後でやって良いなら何の問題もないが

数1Aをやった後で数理モデルを扱うのであれば何の問題もない。よって、大変な学校は2年でやれ、と言いたい。数研の高等学校以上が使えない学校はそうしろと特に言いたい。大変でない学校でも、そのほうがこの内容がよく理解できると思う。

しかし、大変な学校に限って、色々と大人の事情で情報の必履修が1年にくるのである。また、数研の高等学校以上が使える学校は、理科基礎を2つ1年生でやる関係で、結果的に情報が2年生となっているので何も問題はおこらない。皮肉な話である。

過激派は生徒が文章題が苦手って知ってる?

情報の過激派な人は、1年生でこれをやらせるべきだといっている。しかし、数1Aの教科書内容と生徒の状況知ってる?と言いたい。だいたい、数学教師ですらまともに文章題を教えきれていない状況である。数学的活動もできているとはいえない状況なわけだし。それにも関わらず、家庭学習・入試・単位数・教員の質のどれについても数学より条件の悪い情報で、それより難しいことができる、というのはなぜ言えるのだろうか。

もはや、情報関係者は意地になっているとしか思えない。情報教員の地位向上のためと称して、わけのわからないことをやろうというところから話が始まっている。要は生徒にわからないことをやることで、他教科の教員や生徒になめられない状況を作り出したいと。そうとしか思えない。

実戦投入の前に自分たちの大学の文系で試せ

パブコメの案の内容、まずは、ある一定以下の水準の大学の文系学生にやらせてみろと言いたい。それでこなせることが実証されてから導入しろと言いたい。高校はそれ以上に大変な環境すらあるのだから。

はっきりいって、このカリキュラム大学入試偏差値65以上の生徒のみを集めた学校のことしか見てないだろ?と言いたい。

工夫すればできるという主張も滅びろ

数学の準備のなさを避けるための工夫は、授業時間外にやることになる。情報の非常勤にそれやらせて良いのだろうか?ワーキングで好き放題言った人々が、責任を持っていかなる層でも通用する教材を全部作成してくれるならやってくれるなら良い。しかし、そんなことは絶対にありえない。

その工夫によって生徒に何かが身についてくれるなら、百歩譲って何かやっても良い。しかし、どうせアリバイ作りにしかならないのである。そんなことを無償奉仕させて良いのか?とにかく、無茶を通すための工夫というのは、労力だけ消費して何も生み出さないのである。

指導要領を熟読していない人が色々言い出すと面倒

指導要領は、色々と逃げ道がある。「生徒の実態に応じて・・・」とか「指導の順序は入れ替えても良い」などというお助け規定もある。それをフル活用すれば、まあなんとかはごまかせる。

数1Aの進度を考えると

超大変学校でないが中堅進学校でもないケースを考える。数理モデルの単元を相手にしようと思ったら、数IAは2次関数の最大・最小、数Aは場合の数・確率は終わっていると選択肢が広がる。普通にいけば、2学期中間まででこれらの単元は終わるはずである。

数I側では、2学期期末の入りで2次関数の最大・最小をやったこともある。しかし、これは遅いケースで普通に考えれば2学期中間で2次関数の最大・最小は終わる。

数A側は現状と少し変わってくるかもしれない。というのも、今度は数Aは2単位で2単元である。内容を考えると、場合の数・確率より幾何のほうが少ないので、場合の数・確率を1.2単位から1.5単位ぐらいかけてやる進行が考えれらる。そうなると、2学期期末まで確率を持ち越す環境(特に条件付き確率)もでてきてもおかしくない。

モデル化の単元は、指導要領の順序でいけば、(3)であることと、(1)の単元は導入単元であることを考えることから、普通にやると2学期にの頭にはこの単元に突入することになる。しかし、これは避けたい。詳細はまた別途書くが、うまく(4)のネットワークやデータの活用をうまく先に消化しながら数学側の準備を待って、この単元に入りたい。

しかし、後回しにもリミットがある。というのも、アルゴリズム数理モデルの単元の筆記試験は3学期に回したくないという制約があるからである。この単元でまともに筆記試験をやった場合、どう考えても欠点が続出である。年度末の土壇場になって単位不認定が続出か?とか、追指導か?などとういうのは精神衛生に良くない。

以上をふまえると、2学期にこの単元は扱う。最低限、筆記試験もする。しかし、数学側をぎりぎりまで待って単元には入る。このせめぎ合いは、非常に微妙な調整が必要とされることになりそうである。

情報の教員は情報に専念させろと言われているが・・・

数学の授業経験なしで現地調達方式はやりにくい

情報の授業をやる上で必要な数学は、現地調達方式をやれば良いという人がいるが何も見えてない。まず、2単位で生徒も興味関心もない、さっぱりできない状況で、数学の現地調達に付き合えるほど暇はない。そして、実際に学校で(できれば情報を教える勤務校で)数学を教えたことがなければ、生徒の数学理解の肌感覚なんかわからない。そのため、適切な現地調達方式での授業ができるとは思えない。

自分の場合は数学の授業をすることは重要な教材研究です

情報教員には、他の科目を教えさせずに情報に集中させろという言説が世間にはある。しかし、自分が新課程のこの内容を持つのであれば、自分が情報を教える学校で、自分で数1か数Aの授業を1クラスぐらいは(できれば両方)情報と同時に持ちたいと思う。数学をやることで得られた生徒理解がないと、授業が組み立てにくいからである。

数学の授業をやることによる生徒理解は、何時間の机上の教材研究よりも重要な情報である。少なくとも、TTが付けられる場合は、どちらかは数1Aの担当者に入って欲しいところである。

情報の授業をやっているだけで、アルゴリズム数理モデルの授業を展開するための生徒理解ができるというのはどう考えても無理筋の主張である。問題解決の単元や情報デザインをやっているときに、どうやったら生徒の数学的な状況が把握できるのだろうか?私の能力では無理です。

理想を掲げる前に現実に対処してくれ

数学を現地調達方式で教えるときも、色々と細心の注意を払う必要がある。

まず、生徒は初期学習に縛られるので、数学に迷惑をかけないようにしないとならない。この点は、数学教師対策も含めてのことである。情報の教師は数学の教師より地位が低くみられている。その上、俺様志向のプライドの高い(かつ実力のある人もいるんだな、これが。)人も多い。その状況では、何情報で適当なことを教えてくれたのだ、と言われてしまうと面倒なことになる。相当に気を使わなければならない。まだ、数学を同じ学校で教えて入れば対等の立場で話せるのでなんとかなる。しかし、そうでなければ悲惨である。

さらに、生徒が情報を飛び越えて数学に質問しにいくケースの対処も想定しておかなければならない。情報が非常勤である場合、試験前に数学の常勤に生徒が質問しにいくケースがは想定される。そのときに生徒がぼろくそに言ったとする。このとき、数学側が情報の非常勤を守ってくれるとはとても思えない。逆に情報の教師を攻撃してくれる可能性が高い。同時に数学を同時に教えていれば、この問題もかなり緩和できるのだが。。。。

大変な学校の場合はある意味情報だけで閉じる

1年は数Iでなく学校設定科目であるケースすらありえる。数Aなど当然なし。自分の場合はこのケースは楽勝である。逆に自分で全部教えてしまえば済むだけである。開き直って、必要な数学は普通に数学の授業をして教える。そういう学校では、変なマイルールでああだこうだいう数学の人など絶対にいない。ただ、数学免許なしの人にそれやらせるのかな・・・

LuaTeXで分散の計算の途中の表を自動生成する(データと平均値が整数のみのケース)

データの分析で分散を手計算させることがある。

私が問題を作成するときも、分散計算は単純な値で計算させる。今時、コンピュータで計算させるのが普通であるからである。手で計算するのは、理解を深めるためである。その目的であれば、複雑な数値の計算は一切やらせなくて良い。

複雑な計算でない以上、解答を作成をするときに計算でミスをすることは考えにくい。しかし、途中式に書くあれこれが間違いやすい。

一番ありえるミスが、問題文のデータと途中式のデータが一致しないことである。試験問題を演習プリントに貼り付けて(あるいは逆)、試験問題と演習プリントをいったりきたりするうちに、何箇所かデータがずれる、というのがよくある話である。そこで、データの配列を与えたら途中式の表を作るスクリプトを書いてみた。

以下のようなものを作ることを考える。

f:id:baruku07:20180225201402p:plain

Luaの部分。

function data_to_problem(data) --問題文に表示するデータの整形
 for i=1, #data -1 do
  tex.print(data[i] .. ",")
 end
  tex.print(data[#data])
end

function data_to_mean(data) --平均値を計算する関数
 sum = 0
 for i=1, #data do 
   sum = sum + data[i]
 end
  return sum/#data
end

function repeat_str(rep_str,n) --文字列を繰り返す
  str =""
  for i=1, n do
    str = str .. rep_str
  end
  return str
end

function add_ary_str(ary, str_pre, str_m, str_end,math_chr) --配列の前後に色々とくっつけるための関数
  str = str_pre
  for i=1, #ary -1 do
    str = str ..math_chr .. ary[i] .. math_chr .. str_m
  end
  str = str .. math_chr .. ary[#ary]  .. math_chr .. str_end   
  return(str)
end

function data_to_vartable(data)
 str =""
 -- 表の1行目・2行目の部分
 str = str .. "\\begin{tabular}{|c|" .. repeat_str("c",#data) .. "|c|}" .. "  \\hline \n"  --\nの前にhlineでないとエラー
 str = str .. add_ary_str(data,"x &","& ","&合計","$") .. "\\\\" .. "\\hline "  .."\n"  --データを並べた列
 -- 表の3・4行目に必要となる値と配列を計算
 x_minus_m ={}
 x_minus_m_square = {}
 sum_square = 0
 for i =1, #data do
  x_minus_m[i] = data[i] - data_to_mean(data)
  x_minus_m_square[i] = (x_minus_m[i])^2
  sum_square = sum_square + x_minus_m_square[i]
  end
  -- 表の3行目・(x-\bar{x})
 str = str .. add_ary_str(x_minus_m, "$x-\\bar{x}$ &", "&", "&","$") .. "\\\\ \\hline \n"
  -- 表の4行目・(x-\bar{x})^2
 str = str .. add_ary_str(x_minus_m_square, "$(x-\\bar{x})^2$ &", "&","&" .. sum_square,"$") .. "\\\\  \\hline "
 --hlineの後で改行を入れると一行追加になってしまうので入れない。
 str = str .. "\\end{tabular}"
 tex.print(str)
end

TeXの部分

\documentclass{ltjsarticle}
\usepackage{luacode}
\usepackage{amsmath}
\usepackage{tcolorbox}
\begin{luacode*}
--ここに上のluaのコードが入る
\end{luacode*}


\begin{document}
\def\xa{{1,2,3,4,5,6,7}}
次のデータについて、分散および標準偏差の値を求めよ。
\[
\luaexec{data_to_problem(\xa)}
\]
 \begin{tcolorbox}[colframe=white,colback=white,visible] %
\begin{center}
\luaexec{data_to_vartable(\xa)}
\end{center}
\end{tcolorbox}

問題部分はdata_to_problemで作っている。文字列を少し加工しているだけである。

表の部分でいろいろとややこしいことをしている。文字列の加工に関しては

  1. ccccの部分を作るためのrepeat_str
  2. & $ary[1]$ &ary[2] ... を作るためのadd_ary_str

の2つの関数を使って作っている。

表は最初と最後に例外が色々ある。それに対応させるため、2.のadd_ary_str色々と面倒なことをしている。そして、2.のadd_ary_strに、あらかじめ必要な計算をした配列とオプションを与えて、表の各行の文字列を生成している。

&$ary[1]$の部分は、関数を引数にとらせる関数を作れ美しくできそうなのはなんとなくわかっている。ただ、現在はまだうまくいっていない。よって、強引に処理している(今後の課題)。

その他の課題は、分数への対応である。今回、計算結果を自動表示するものを書かなかったのも、この対応ができなかったからである。色々な問題の自動生成をする以上、有理数を統一的にうまく扱う仕組みは早く考えてしまわないとまずいのはわかっているが・・・

経済学部でベクトルを使うから数Bにベクトルを残せだけは違うと思う

色々とベクトルの数C先送りの件について思うことはある。

ただ、色々と見ていてこれだけは言いたいということを書く。この話題に限定すれば、基本的には自分の相対的に詳しいところだけで話ができるので問題ないはずである。よって、書くことにする。

理系は履習順の工夫で現状と同等の環境が確保できる

だいたい、この件は、理系には一切影響はない。数Bと数Cを1単位ずつ2年間履修する、とするだけで問題は解決する。よって、物理系の人々の批判は一切合切当てはまらない。そうなると、議論のメインは文系でどうか?という話になる。

以下は、理系の人が「経済ではどうこう」といってるのに個人的に少しいらっときたので、書いてみる、という話である。

なお、私は経済学の世界にあまり深く関わっていないし、遠ざかってからもかなりたつ。また、関わっていたときも、そんなに深く経済を勉強していたわけではない。したがって、不正確なこともあるかもしれない。

学部生向け = ベクトル・行列不使用

統計・エコノメ

(私が学部生をやっていた頃の)学部生向けのテキストの持つべき性質としては、ベクトル・行列不使用というものがあった。統計学計量経済学のテキストで、学部中級とそれより上を分ける決定的要素の一つであったはずである。シグマはまあ使っても良いかな、ということになっている。

なお、学部上級というのは、基本的にはほとんどの学生がやらないこと、と考えておいて良い。

ミクロ

ミクロの学部生の初級や中級の授業は、多変数の話を避ける方向に向かっていたはずである。1変数とか2変数でモデルの本質を理解すれば、学部生の段階としてはそれで良い、とされていたはずである。

ミクロもまた、テキストでベクトル表記を使うかどうかで学部中級かそれより上かが分かれていたはずである。仮に中級のテキストでベクトル表記があったとしても、それはその上級を目指す読者を対象とした中級のテキストのはずである。よって、実質上級とみなして良い。

大昔は、学部生の講義でも多変数を相手にすることもかなりあったらしい。しかし、最近はそういうものが減っていたはずである。その代わりに、現実につながりやすい話が増えてきているはずである。例えば、ゲーム論がなにがしかの形で絡んでくるタイプの話である。最近は行動経済学も、この仲間に入ってきているのではないかと思う。

変数の数を減らして議論する流れがある以上、多変数を相手にするための道具である線形代数は必要ない。そして、不確実性を扱う項目が増えた以上、確率の必要性は高まってきている。特に離散型の確率変数の表記(概念)や期待値の和の性質ぐらいは当たり前に使いたい。以上を踏まえると、文系数学からベクトルを落として確率を入れるのは、理にかなっているとすら言える。

だいたい、線形代数だ確率だという前に絶対に必要なるのは、数3の微分の一部(自然対数、指数・対数関数の微分など)である。1変数の最適化問題が解けないと、そもそも議論が何も前に進まない。確率やベクトルが登場するのはそれからである。

よって、まず微分(数3)、次に確率、そしてオプションとして線形代数である。ベクトルどうこうで騒ぐ前に、まず数3の微分を試験範囲に入れていないことを騒ぐべきである。

3回生向けの上級科目では理系1回生数学の簡単なレベルが必要となることもあるが

ご立派な大学では、学部3回生が研究者コースの(ここ重要)院生のコアコースと同じ科目を取ることができる科目がある。このケースで、ベクトルを含めた線形代数は不要と言い切るのは、さすがに無理だと思う。しかし、全国にそんな学生何人いるのか?せいぜい、何百人のオーダーではないかと思っている。

だいたい、そういう大学は理系数学を試験範囲として試験をすれば良いだけである。それで何も問題ない。

指導要領にどうこう言わずに入試科目を変えれば良いだけ

繰り返すが、経済系で理系数学が必要だというのであれば、理系数学を試験範囲として試験をすれば良いだけである。古典をなしにして、理系範囲の数学の試験をすることにすれば良いだけである。

大学側がそれをやらずに、文系数学の範囲を狭めると数学が必要な文系がああだこうだと言い始めるのはおかしな話である。

「高校側に遠慮してそんなことはできない」というが、現状、入試範囲の指定によって数Aを実質3単位やらせるということの強制を勝ち取っている実績がある。やればできるのという例が、少なくとも一例は出ているのだから、絶対にできないという言い訳までは通らない。

数学を勉強して経済学部に入学した人が報われる環境が用意されていますか?

だいたい、有名大学出身の素晴らしい能力をお持ちの方が(そしてなぜか当事者でない理系の人)「経済にはベクトルが必要だからどうこう」といっている。しかし、何を教えるか以前の、勉強する意欲を生徒に与えられる環境になっていますか?のところでどうかと思うことが色々ある。

数学を勉強しても活かす機会がなければ・・・

現状、普通の能力(ここ重要)を持った人が、普通に数学を勉強して普通の大学の経済学部に学して幸せになれるか?と聞かれたとき、それに肯定的に答えられる自信は私にはない。特に、有名大学でない大学に入学した場合はそうなる確率が高いと思われる。

(注 : 要は、カリキュラムとスタッフ依存の話なので一括りにできない面もある。ただ、その詳細を今は議論したくないので、有名大学という書き方にした。)

最悪のケースは、入学者の大半が数学ができないのだから、数学を使うような科目は最初からほとんど開講なし。制度覚えろとか歴史覚えろとかにする。そして、簿記を適当に混ぜる(経営)。そういう大学もある。

私のいた普通の大学の経済学部でも、数学を勉強していない側に授業設計が合わせられていた部分が多かった。よって、ううんとなったことも多かった。

ただ、自分は、そういった普通の大学にいても、様々な偶然によって作られた教育環境によって(活かせたとは言えないが)、高校のときにそれなりに数学を勉強したリターンはあった。(講義も含めてさぼりまくっていたのであれだが)それでも数学の勉強もできる環境はあった。しかし、そういう良心的でない大学も世の中には存在する(のも人づてに聞いている。)。

自分がこういう育ちをしているので、理系の人が無邪気に「経済学部は数学どうこう」と言うのを聞くと、血圧が上がるのである。

普通の能力をもった人が数学を勉強して入学したことが活かせる環境がなくて、どうして数学を勉強しろと言えるのだろうか?また、現状、普通の能力の生徒が文系数学をやったところで入試で報われる確率も高いとも言えない。その状況でどうして数学を勉強しろと言えるのだろうか?

よって、私は普通の能力の覚悟の決まっていない文系に数学を勉強しろとは言えない。はっきりいって、文系数学にどの内容を入れるか以前の状況であると思っている。

メインストリーム数学に数学活用が入ってくるのは助かる

あまり本業ではない、数学のパブコメ版指導要領について思うことつらつらである。

ベクトルについて燃えそうな記事を下書きに書いてしまった。よって、そちらはお蔵入りになりそうである。まずは、ここでは誰も興味を持っていない部分について書くことにする。

パブコメ案では、数A・数B・数Cに数学活用の内容が選択として入ってきた。これは、ただのアリバイで無駄だという意見もある。しかし、個人的にはこれは使いどころが色々とある良い話だと思う。こういう使い方ができればな、という空想を述べる。

なお、以下はアクロバティックな空想的解釈によるものである。こんな解釈をする人はいないので実際はこうはならないが。120%独断と主観である。妥当性もない。

受験を目指す学校以外で数Aや数Bを開講するとき

数Aでふんわり数学ができる

学力に関わらず、数Aまでは突っ切って授業をしてしまわないとならない場合は多い。このとき、数Aの一部として、ふんわり数学ができる選択肢があると大きい。ナンプレを堂々と堂々と数Aだと言い切れるのである。良いことである。現状、数学活用の教科書にナンプレはあったはずである(2社のどちらかの教科書にあったはずである)。

数Aの内容選択は、字面だけ見れば(1)から(3)までの内容の中から「適宜選択せよ」である。3つから2つ選べとはどこにも書かれていない。センターがそうなっていて、かつ、1単元が1単位分の内容だから多くの学校がそうしているだけである。別に全部の簡単な部分から引っ張って授業をしたとしても、学習指導要領状の字面はセーフである。確率はガチでやるとして、図形とふんわりを適度に混ぜるのは数学の体系性の趣旨に反するとは思えない。

確率・場合の数・図形のややこしくないとこ・数学活用っぽいところをかき集めて授業できれば、がちで数学やるより相当に楽である。現状、ときどきふんわり数学を混ぜることもある。しかし、自作するより教科書にあれば、そちらのほうが質が高いので使い勝手が良い。

数Bを合法的に就職数学対策として開講できそう

ベクトルとややこしい漸化式は大変なとこではやりにくい

大変な学校ではややこしい漸化式の存在(ややこしくない漸化式もあるが。そして、ややこしくない漸化式は情報をやる上では必要なので教えたい)とベクトルのせいで数Bを開講しにくいというのはある。数列の簡単なところ(等比・等差)・確率分布の簡単なところ(離散型確率変数まで)・数学と社会生活の簡単なところをうまくかき集めて授業ができるなら、2単位ぐらいの授業を成立させるのは楽勝である。

本来、数Bは他の数学との依存関係が薄い。大変な学校でも本来は数2より開講しやすいはずである。それにも関わらず多くの場合数2が開講されている。数Bが回避される一番の要因は、今の高校数学のベクトルは、学力が大変な学校での一斉授業には向かないということに尽きると思う。仮に、ベクトルを避けたとして、簡単な数列 + 確率分布の簡単な部分で2単位を持たせるのは大変である。そうなると、数Bを開講する勇気はない。

使い勝手が良い数列と数学と社会生活

就職数学を考えたとき、数列と数学と社会生活の2単元は使い勝手が良い。

就職数学としては、小学校レベルの数列はどうしてもやらせたい。特に、「数学能力だけはあるけど、受験に数学が必要ないからそういうクラスにいるだけ。」の生徒にはやらせたい。数Bは開講していないが、就職数学で数列が出てきたときに生徒に質問をされるケースは何度かあった。このようなとき、アドホックに対処することはできる。しかし、その問題だけを丸暗記という結果になりがちでその生徒に考え方が定着していかない。やはり、少し体系的に扱えるといいのに(理解できる能力もあるのだから)と思うわけである。

数学と社会生活は解釈とアレンジの仕方によっては、就職数学の文章題をカバーできる可能性がある。実用数学検定あたりとからめてやってしまうこともできる。要は、数学っぽい文章題は全部「日常や社会の事象を数学化したもの」なので合法である。

思考力・判断力で要求されている(ウ)や(エ)はきつそうだが、このあたりもまあ適当に一個大ネタをやってクリアすることにしよう。留意事項ががたがたと書かれているが、総則にあるはずの「生徒と学校の実態にあわせて趣旨を損なわない範囲で重点化した」と居直っておけばよさそう。

ITパスポートのストラテジ・マネジメント系の過去問も使えそうである。こちらの問題は問題によって数Bか数Cかどちらか微妙なものになる。アローダイアグラムとかは数Cかな・・・合法的にITパスポート対策もできそうである。

現状は2単位ガチかふんわりかなのでしんどい

過去の数学基礎の開講が嫌がられたのは(数学基礎を開講していた学校にいたこともあるが)「2単位全部ふんわり数学をやれ」だからであると思っている。試験を作るのも難しすぎる。逆に2単位がち数学をやるのもきつい。その落とし所が、学校設定をとって単純計算中心でやらせるということになっているのだと思う。

しかし、もし「1単位普通の数学の簡単なとこ・1単位はふんわり数学」という選択肢があれば、それなりにやっても良いと思う人はいるのではないか。1単位ぐらいふんわり数学を雑談的にやるのを嫌がる人はあまりいない。このときは、ふんわり数学最大の障害、評価の面倒さは、残りの1単位の普通の数学で筆記を作る、という手で解決できる。

今のままでは「それ以外」の進路を選択した中学数学をクリアできている人がかわいそう

就職数学系薄っぺらい数学のテキストの質が低いのを見ると、もっとましなものを使ってあげたいと思うのである。そして、そういうクラスでもクラスに1人や2人ぐらいは普通に中学数学や高校数学の大判ぐらいならこなせる生徒がいたりする。そういう人に小学校・中学校数学の復習だけで全ての時間を過ごす、ということを強いる学校設定はかわいそうすぎる。しかし、ガチ受験か中学数学かの2択しかない現状では、そうならざるを得ないケースが発生するのは仕方がない。

こういう科目で、レベルがあっていなくて暇にしている生徒を見ることもあった。そういう生徒が、大人の都合で分数計算や九九ばっかりやらされているのを見るのは悲しい。ましてや、すらすらできるのに「周りに合わせて態度良く授業を受けなさい。」的なことまで強要されているのを見ると、かわいそうすぎるのである。こういう人には、普通の数学も少しはやらせてあげたいと切に願うのである。

逆もある。すなわち、中途半端な進学校の文系生徒に数学活用のような世界を見せてあげられるという面である。授業中の暇つぶしでめくったぺらぺら教科書にそういう話があるだけでも良いことだと思っている。文系クラスだったら、新数Bの教科書にのっている最小二乗法の話は(留意事項のデータを関数として扱うことというのはそういう意味だと理解している)、試験後のだらだら系の1時間とかでやってあげても良いと思っている。

情報でモデリングを扱うための参考資料として

次期のBとCは、情報で扱うモデル化の前段となる数学に近い。全員が持っている数Bと数C(国立文系はCも範囲指定して欲しいと切に願っている)の教科書にこういう素材があると、情報で副教材を買わせることなく「もってこい」とできるのが大きい。

情報で、数学活用的なネタを取り上げようかと何度も思った。しかし、教材を作り上げるコストで断念したことが何度もある。数学活用の教科書を参考にしてそういう授業をやろうとしたことが何度もある。。。。数学的な部分だけでも、かっちりした手元が説明にあれば、残りの部分だけ自分で作れば良いのでコストが減って楽である。

特に、情報の2を(あえて検索にひっかかりにくくするためにわかりにくい書き方にしたが)開講するときには(そんなことがあるのか?)ありがたいと思う。データサイエンスやモデリングの理論的な部分のレクチャーを自力で全部作るのはしんどい。どうせ、情報の教科書の説明は工学部的な「こうなります」がぺらっと書かれるだけなのだから使い物にならないに決まってる。数式的な部分は、数学の教科書を見ながらレクチャーするか自習しろとするかして、じゃあ情報の授業はコンピュータでやってみようとできる。

数学がなんとなくからむ総合問題の対策

これも教師の質で左右される部分が大きい。教科書にそういう問題が乗っていれば、独習できる部分も増えてきて、教師の質の差が少しでも埋められるかもしれない。

現実に使わない道具を使った現実のデータの分析風の授業は嫌い

職場でgeogebraでデータの分析の授業をやる例があることを知った。

とりあえず、その例も含めて、データの分析の授業で現実のデータを扱う例をインターネット上で2例ほどみた。

  1. プロ野球の球団ごとの(勝利・敗北など)データを与えて、そこから2変量を適当に抽出してgeogebraでプロットと相関係数を求める
  2. 総務省統計局Webサイト「なるほどデータ for きっず」の「おやくだちデータ倉庫」内の都道府県別データから適当に2変量を選んで相関係数を求めていろいろと交流する(Excel使用)

1.に思うこと

家でこのデータの分析の続きをすることになったとしよう。このためだけにgeogebraをインストールすることは考えにくい。実際に家に帰ってできないデータ分析の授業など意味があるのだろうか?

2.に思うこと

やっていること自体は悪くはないと思う。ただ、何組もの関係を予想しないといけないときにちまちまとExcelGUIでやりたいか?とは思う。同じ作業を繰り返して「やりました」感を出すのは、わざと大変さを思い知らせるときとか、操作そのものの教育のとき以外では意義が感じにくい・・・

絨毯爆撃系はCUIを使うのが筋が良い

1.も2.も絨毯爆撃をしてしまえば済む話である。いずれの授業も2変量を選んでから描くという流れになっているが、適切な道具を使えば逆の流れもできる。すなわち、全通りの散布図と相関係数を出して置いてのんびり考えようということである。Rだったら、とりあえずcorやpairs使って全部の相関係数とか散布図をだして置いて、それからのんびり考えるところでしょう。行列の形から、相関係数を絶対値1に近いペアの順に並べ換えるのは少し頭を使う必要がありそうだが。(たぶん探せば何かある)

自分が授業をするときには「世の中にはもっと簡単に絨毯爆撃をする方法があるけど、Excelを使う練習としてわざと効率の悪い方法をまず基本として教える。効率の良い使い方はたぶん忘れたり、あるいは環境で使えなかったりするから。」とエクスキューズを入れて授業をするけど。

そして、最後にとどめを刺すかのようにCUIでやったものを見せると思う。いかに道具を知っているかということが重要かを思い知ってもらう。

学校社会の外にいる人間なので

教育用ソフトは、Web上の情報が少ない。日本語前提の教育用ソフトだと、日本の高校教師が書いたものしか出てこない。

生徒側の立場としても、こういう学校限定のソフトは良くない。生徒側が仮に興味を持ったとしても、その後自力で深く学んでいけるのだろうか?

私は、自分が教えられることは大したことではないと思っている人である(そして現実もそれと一致している)。よって、興味を持った生徒は勝手に自習をしてほしいと思っている。それだけは邪魔したく無いとも思っている。

自習するときは、できるだけ優秀な方が書いたもので学んで欲しいと思っている。よく使われている良い道具の使い方は、優秀な方が書かれた良い教材が多くある可能性が高い。したがって、紹介する道具は良いものにしたいとは考えている。

(この手の話・今後も手を変え品を変え書くことになると思う。今後、タイトルを被せてしまわないか、今から心配で仕方がない。)

発信そのものが全くできないレベルで「受け手のことを考えて」と言われても・・・

情報の指導要領のパブコメ版を読みながら思ったこと・・・散発的に投げていく。まずは情報デザインのとこをぱっとみて思ったことを浅く。

情報デザインの「目的や状況に応じて」「受け手に分かりやすく情報を伝える」に?となった。なお、指導要領をコピーしたら、制御文字が入ってプレビューにエラーが出たのでカット。

高校生って情報発信する必要ないよね・・・

だいたい、私の知る狭い範囲では、何らかの伝えたい情報を持っている高校生は多いとは言い難い。情報を持っていたとしても、自力で表現できないケースも相当数あると思われる。特に、文字情報を使うものはそうである。ましてや、コンピュータを用いて、ある程度の情報量の発信を行うことに慣れているとは思い難い。

別に彼・彼女らが悪いわけではない。そもそも、先進的な高校生以外は、情報を発信して何かを動かそうという現実の強いインセンティブがない。その状況で、受け手のことなど考えられるはずもない。情報構造を工夫して、受け手に思ったことを伝えたいと思うわけもない。この手の話を聞いてすとっと落ちるのは、現実に受け手を動かさないとならない必然性がある状況に直面している、または、ある程度のアウトプットの経験を積んだ後である。

野球初心者に野村スコープを教えるか?

例えるのであれば、ストレートでど真ん中ですら投げることもできず、パッターを打ち取ることの楽しみもわかっていないピッチャーに対して、「緩急の付け方」「インコースの出し入れ」「美しいフォーム」を教えても????となるようなものである。最初は、「ホームベースに投げたボールが届く楽しさを教える」「ホームベースまで安定してボールを投げられるための練習」「バッターを打ち取る喜びを教える」のが普通であろう。

自分がスライドの指導する場合も、情報デザインのことは、あえて指摘しないことがほとんどである。指摘する場合も、生徒の能力と性格を見て慎重に行動を決める。だいたい、ほとんどの人は、まずは自由にボールをホームベースまで投げて野球の楽しみを知る段階であると判断しているからである。そんなときに、コースの出し入れのことをごちゃごちゃいうのは無粋である。

私が生徒を初心者とみなしている場合のスライドの指導は、まずはいかなるものでも良いので、生徒が考えたことを極力修正せずに物を作りきらせる、ということに重点を置く。そして、2単位であれば、これが精一杯(それもかなり色々な効率化をしたとしても)である。

他の科目でスライドを作る経験をしていることもある場合、初心者とみなすのはありえないという意見もあるかもしれない。しかし、たいていは、指導の都合上、形式面など様々なしばりを強くしているため。そのため、一から自分の頭で考えて作るということはほとんどない。したがって、その場合であれば経験があっても初心者と同じである。

なぜ楽しみから教えないとならないか?量がこなせないからである。この手の話は、物量をこなさないと身につかない。最初に、表現活動自体が苦痛(色々とごちゃごちゃ考えないとならない)ということになると、誰も量をこなさない。よって、最初は量をこなせるような下地を作る必要がある。それは、楽しさを教えることであったり、訓練を何度もできるような基礎体力をつけることであったりする(その意味で私はタイピングは重要だと考えている)。

情報デザインを扱うことは好きだけど

自分は情報デザインの話を扱うのは好きである。授業でもお話的によくする。Webサイトの情報構造をとりあげたことも何度かある。問題点を改善したデザインを提示して(自分でhtmlとCSSを書いて実際に作ってみせる)、何が問題か、を話す、というのは割と好きな授業である。

あるいは、自分が改善した案を例にした次のようなことも話すことがある。

  • この部分の読み手をこのように想定したので、この部分をこうデザインした。
  • この情報の閲覧頻度はこのようなものだと想定しているのでこのような部分に配置した。
  • メンテするほうが素人ということを前提にすると、こういうデザインにしておいたほうがコストが低いのでこのようなデザインにした。
  • デザインした人がこういう人間でこういう発想だからこういうだめデザインになる。

スライドのデザインの話も良くする。伝わるデザインあたりのエッセンスを抽出して話す。生徒の実例を見て、最大公約数的な問題点を抽出したスライドを作って、その改善案をみせたりすることもある。

しかし、この手の授業準備、特にwebサイトの改善の授業をするとき、プライベートの時間は相当に飛んでいく。授業準備中に頭や手を動かしていると、自分の色々な経験・知識・技能を総動員させていることも実感する。この実感からすると、これを生徒の知識・理解・技能で同じことを有限時間でやらせるのは厳しいと感じるのである。

70時間(2単位)で完結させて・・(余談)

「思考力を身につけさせることを目的とした実習によって情報デザインの力を身につけさせる」というのは、労働問題から考えても反対である。遅い生徒のフォローと評価をする時間だけで、ありえないぐらいの労働時間が発生する。

教材が十分に提供されない場合の教材作成時間も大変なことになりそうである。生徒の技能が怪しい状況で、それに合わせた教材を作るのは相当なことであろう。これは、非常勤のみで持っているケースでは大きな問題となる。

非常勤が多いという現実を見て!

情報は、非常勤のみで持っているケースもある。諸事情により、常勤がいても非常勤がメインで授業をするということもありえる。こういう状況では、授業の70時間以上は生徒・講師双方を拘束すべきではない。70時間で、実習も含めて最低限は全てが完結することを前提に設計してほしいと強く思うのである。

色々なテーマに、教師個人が趣味で技能を高めるために取り組むのは良い。しかし、生徒のそれに時間外で無償で付き合っていられるほど私は心が広くない。また、そんなことを前提にしたカリキュラムは、結局は誰も実行できずに骨抜きになる。

個人的には、LMSが入ってて、サービス残業がオンラインで色々完結するなら許せる。家でお茶すすりながら色々できるので。しかし、大人の事情によって、そんな環境は絶対に整わないと言える。

こういうハードな指導要領が出てくると、立派な先生の素晴らしい取り組みがでてきて世間でもてはやされることになるのが見えている。しかし、その取り組み、非常勤の制約でも同じ成果があげられるのか?と強く思う。

求む!インスタントな実践

個人的には、生徒のレベルを問わず、インスタントな準備で適当な指導力でやって効果があがる実践こそ、素晴らしい実践であると思っている。そして、この考え方が情報固有の見方・考え方なのではないかとも思っている。

良いシステムは皆を幸せにするのである。素晴らしいシステムが開発されることで、下々の単純労働がちゃらになるというのは、まさに情報固有の見方・考え方ではないかと個人的に思う。

情報デザインの考え方に関連付けるなら、シンプルで誰でも使えて同じ効果があがるというシステムが良いのである、ということと同じである。

誰でも授業できるなら専門家いらないって?誰でもできるシステムを作るということそのものが、高度な専門性である。そのための専門家は一定数は雇っておく必要がある。ただし、その専門家のタイプは、この業界で考えられてるものと違うものとなるべきである。「リアルタイムな授業が上手い人」とは違う全く専門性が必要になる。