ゲームロジカルシンキング俯瞰力について趣味と勉強

ロジカルシンキング

 プログラミングが上達してくると、日頃の思考も間違いなく、「ロジカルシンキング」になります。プログラミングだけでなく、シミュレーションゲームでも同じ効果が期待できます。なぜかといえば、いずれも、全体を俯瞰して見ないと、プログラムは走らないし、シミュレーションゲームも負け戦になります。この、「全体を俯瞰して見る」というのが、ロジカルシンキングでは重要です。全体を俯瞰して見て、どこかに思考の抜けや穴があると、そこから論理が崩れてしまいます。プログラムでは、まさに「バグ」がその穴になります。特に私が研究している数値計算では1カ所でもプログラムが間違っていると解が得られたとしても、間違っている解になります。たとえば、符号のプラスとマイナスを1カ所間違っていてもです。プログラミングで費やす時間の90%以上はこのバグ取りになります。いつまでたっても取れないときの対策はすでに書きました。プログラミングの上達と、このいわゆる「俯瞰力」は表裏一体であり、同時に鍛えることができます。そういう意味で、小学校からプログラミングが取り入れられるようになったのは、実用的な面だけでなく、俯瞰力を養う上でたいへん良いことだと私は思います。大学の共通テストでも必須科目に追加されました。

 プログラミングでは、思考の手順を示すフローチャートを作成しますが、私は作りません。なぜならば、最初から完全なフローチャートを作るのはほぼ不可能です。プログラムは試行錯誤で作るしかなく、むしろ積み木のように一つずつパーツを追加して、組み合わせていきながら、お互いをつないだり、切り離したり、他につなぎ変えたりしながら、完成させます。当然完成させるためには時間がかかります。幸い、全くのゼロからプログラムを作る場合はめったになく、いまはネット上にサンプルプログラムはたくさん公開されていますので、いずれかをいただいて、それを改良しながら構築するのがほとんどかと思います。pythonなども使っていますが、必要とされるほとんどのルーチン(プログラムの一部に当たる命令系)はネット上から収集することができます。私もある計算プログラムについて、そのルーチンのほとんどをネット上にあるサンプルから構成しました。ただし、公開されているものですので盗作ではありませんが、自ら公開したり商用化する場合には注意が必要です。

 会議やゼミなどでも、話をしている人の話のロジックがどうも破綻していると思える場合があります。感情的な思考や思い込みなどの場合に、そうなる傾向があります。怒りに任せて話をしている人には何を言っても無駄です。反論すれば、火に油を注ぐ結果に終わります。また、思い込みは、まさに全体が俯瞰できていない典型です。自分の考えていることは正しいと思い込み、話をするわけですが、聞き手から突っ込まれて、黙り込んでしまったり、その場しのぎでさらに墓穴を掘ったりすることが多いです。私も思いつきで意見したり、メイルしたりする場合がありますが、でもなぜか、話に抜けや穴がないか、いろんな角度から話す内容をまずは推敲するステップが必ず入ります。長年プログラミングやシミュレーションゲームをしてきた癖のようなものですね。物事を俯瞰して見るためには、訓練が必要かもしれません。その訓練に、プログラミングやシミュレーションゲームは最適であると、私は勝手に思っています。