分ものごとは白黒はっきりさせたいものです。なんだかぼんやりしたものを見ると,落ち着かないし,不安にさえなってしまいます。理系の人々にはそんな傾向の人が多いように感じます。逆に文系の人々は,むやみに白黒つけるのを好まないように思われます。伝統的な講道館柔道の試合は,実は文系的です。勝敗よりも大切にするものがあるからです。最優先ではありません。大切なのは「良い勝負ができたか」ということです。スポーツとしての格闘技は勝つことが目的ですから,わずかでもポイントで優勢に立てば逃げることも有効な戦術です。日本柔道では尊ばれません。逃げて勝った者には,それ相応のレッテルが貼られます。このあたり,近年急速に国際化したスポーツ柔道には見られなくなってきた価値観です。日本が近代化する中で嘉納治五郎が伝えたかったのは,このことだったはずです。数学といえば,はっきり白黒つくものの代表のように思われますが,確率の数学で取り扱うのはグレーです。結果のまだ出ていないものを予想するのが確率だからです。今回学習する確率の数学は,より現実に即した活用のための道具立てを紹介します。事象は式50.1で表したように,記号でまとめて表記できます。事象を記号で表したものを,確率変数(※1)といいます。その事象の集合を表す場合は大文字で,個別の事象を表す場合は小文字を用います。確率の値の関係を,次のように関数で示すことが出来ます。各要素の現れる確率の合計は1となります。確率密度関数(※2)といいます。確率分布の例グラフの横軸に確率変数,縦軸に確率密度関数を取り,確率密度関数の曲線を描いたものを確率分布(※3)といいます。さいころを1つ振って出た目の確率は均一ですから,確率分布は横一直線のグラフになります(図50.2(a)⁠)⁠。2つのさいころを振った目の合計の確率は,7になるところがピークでそれ以下,それ以上では確率が低くなることは以前に学びましたね。確率分布は山形になります(図50.2(b)⁠)⁠。演習では,そのような確率分布を数学的に導き,またシミュレーションした結果が確かにそのようになるかどうか,つまり大数の法則に従って数学的確率と統計的確率が一致するかどうかを確認してみましょう。n個のさいころを同時に投げて,出た目の最大値をXとします。このとき,確率変数Xの確率分布を,数学的に,そして統計的に答えてください。これは大昔にある大学の入試問題として出題されたものです。数学的確率は,紙の上で計算することで求めましょう。統計的確率は,シミュレーションするプログラムを作成して実行して求めましょう。問題:n個のさいころを同時に投げて,出た目の最大値をXとします。このとき,確率変数Xの確率分布を,数学的に,そして統計的に答えてください。数学的に確率分布を求める先ずは数学的に確率分布を計算してみましょう。目の最大値が1である確率とは,1の目だけが出る確率のことです。n個のさいころが全て1である確率は次の通り。最大値が2である確率とは,n個のさいころを振って,2か1が出る確率から,1が最大値になる確率を引いたものです。すると,確率は次のように計算できます。最大値が3である場合とは,n個のさいころを振って,3か2か1が出る場合から,2が最大値になる場合の確率を引いたものです。確率は次のように計算できます。以下同様に考えて,全ての確率を計算することが出来ます。以上が正しい式ならば,全ての場合の確率を合計したものが1になるはずです。確かに1になっています。間違っていないようですね。横一直線のグラフになります。nが増加するにつれて急速に変形し,右肩上がりのシャープな分布となることが式からわかります。統計的に確率分布を求める実際に数学的に求めた通りになるのか,シミュレーションをして統計的に確率分布を求めてみましょう。シミュレーションに用いたコードの例を次に示します。確率分布を,数学的に,そして統計的に答えてください。"出た目の最大値ごとに出現回数を表示する。Sample_NDiceMaxVal実行結果は次のようになりました。回振り,出た目の最大値ごとに出現回数を表示する。%試行回数を大きくすると,数学的確率は大きな目ほど更に大きくなり,100回を超えると6の目が最大である確率がほぼ100%となります。大きな目が最大値である確率が高い,ということは,題意からしても納得しやすいことでしょう。シミュレーションプログラム中の試行回数(trial)を10,100,1000と大きくして実行すると,6が最大である場合の数が,5が最大である場合の数の倍以上であることがわかります。確率密度関数のグラフは,試行回数1の時は横一直線ですが,試行回数が大きくなるに従い右にシャープなグラフになります。今回はここまで演習のプログラムは今回ノーヒントでしたが,無事作成できたでしょうか。解説のソースコードは,Diceクラスを利用したのでシンプルになりました。それにしても,数学的確率を計算した際はなんとなくわかったような気がする程度でした。それがシミュレーションすることで明白にドンと結果を得られました。シミュレーションとは説得力のあるものですね。今回のまとめ確率密度関数について確認しました。確率密度関数をシミュレーションするプログラムを作成しました。プログラミングと日本の端っこ踏破旅行。2010年のLotYはRuby。結城浩氏のような仕事をしたいと妄想する30代後半♂。2019」を開催しました。DAY1・DAY2の様子を注目セッションとともにお伝えします。LINEのエンジニア3名がイベントに先駆けて見どころを紹介します。コードの安全性・安定性を高める開発サイクル~テスト管理の効率を上げ,脆弱性診断を自動で行う~本連載では,連載「業務を改善する情報共有の仕掛け」を受けつつ,安全性・安定性を加えた開発サイクルについて考えていきます。若者世代から圧倒的な人気を誇るライブ配信&動画投稿コミュニティアプリ「MixChannel」(ミクチャ)の裏側(レコメンドシステムやサーバサイド開発など)について解説していきます。その他の連載CSS3アニメーションでつくるインターフェイス表現CSS3によるアニメーション表現を紹介していきます。その中でも,幅広い読者に応用してもらえるだろうインターフェイスを主なお題とします。MySQL道普請便り本連載では,MySQLを使ったアプリ開発・運用に関するノウハウをご紹介していきます。RecipeUbuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。JavaScriptセキュリティの基礎知識JavaScriptに関するセキュリティ上の問題はどこで発生し,どうすれば防ぐことができるのか?について解説していきます。〜システムをきちんと運用するための基礎知識システムは「作って終わり」ではなく,運用の中でさまざまな問題が発生します。問題の発生に備えて事前にどのような対応をしておくべきなのか,問題発生時に何をしなければならないのか,ポイントを解説していきます。きたみりゅうじの聞かせて珍プレーソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。Linuxのメンテナンスの傍ら,Linuxやオープンソースソフトと日々を過ごす著者が,その魅力とつきあい方を,エッセイ風味でお届けします。PRESS特別編集部員,さわやか笑顔のスーパーハカーはまちちゃんとネット大好き14歳わかばちゃんが,毎号,読者の皆さんから寄せられたおたよりを紹介します。皆さんの日頃の悩みにも答えちゃいますよ。]メールでのお知らせメールで次の案内をお送りしております。メールの配信を希望する方は,利用したい項目をチェックしてメールアドレスを入力し,[登録]ボタンをクリックしてください。UPDATES[ほぼ週間に1回]新刊メールマガジン[ほぼ週間に1回]電脳会議の各号案内[ほぼ1ヵ月半に1回]※変更する場合や停止する場合は,登録情報変更ページをご覧ください。※登録いただいたメールアドレスには,そのお知らせ以外,配信いたしません。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。