エンジニアのための数学~数え上げの理論
コンピューターの分野で必要とされる数学的知識に、離散数学や論理学がある。
特定の分野の業務で無い限り意外と微分・積分よりもグラフ理論や数え上げ問題および行列、統計の知識が良く使われる。
特に数え上げ問題は日本の学校教育では極めて軽視されているために、苦手としている方が多い。
数え上げ問題は、学校の教科書では”場合の数”、”順列・組み合わせ”、”確率”として登場するが、最も基礎的で大切なのは”場合の数(個数の処理)”だと思う。
順列や確率は、まずは問題を整理し、その上で公式を用いることになる。
このとき使うのが場合の数、つまり”数え上げる”という行為である。
意外と地味でエレガントな方法ではない。
順列、確率の問題で式を用いる場合でも、まずは基本的に事象を場合分けすることが重要で、そのために数え上げを1つ1つ行うことが基本となる。
その上で公式が適用できる部分に適用する。
日本では直ぐに順列・組み合わせの公式や確率の公式を当てはめようとするが、教科書で登場する問題が、順列の公式や確率の公式をそのまま利用できるような問題をチョイスしているだけである。
教科書で登場する問題は、一般的には極めて限られたパータンのケースと言える。
このような問題を解いていてもあまり力は付かない。
私達が直面し解決する問題は、もっと複雑で、”どのような視点で整理すればいいか?”、”どように解答を導き出せばよいか?”が問われ、この一番重要かつ難しい部分がごっそり抜けているからだ。
アイディアとインスピレーションおよび集中力と忍耐も必要となるが、このような訓練をしないと21世紀の知的産業では競争に勝てない。
手間がかかり大変だがパータン別けなどを行いながら数え上げる作業が非常に重要な作業だ。
NP問題として取り上げられる巡回セールスマン問題などをはじめ、効果的な解法がないことが多く、数え上げの問題の対象は極めて広い。
数え上げ問題はじっくり取り組まないとなかなか身に付かないが、コンピューターサイエンスでは重要な基礎となる。
=HSCI Takanari Hashimoto(URL:http://hsc-i.com/)=
| 固定リンク
| コメント (0)
| トラックバック (0)
最近のコメント