プログラム コンピュータが迷路を解くとき:探索木
- 迷路とコンピュータ複雑に入り組んだ迷路。私達はどのようにして出口を見つけるのでしょうか?おそらく、いくつかの道を進んでは行き止まりにぶつかり、また引き返して別の道を試す、ということを繰り返すのではないでしょうか。時には、前に通った道に戻ってしまったり、同じ道を何度も行ったり来たりしてしまうこともあるかもしれません。コンピュータも、迷路を解くことができます。しかも、私達人間のように無駄な寄り道をすることなく、効率的に解を見つけることができるのです。これは、コンピュータが「探索木」という考え方を使って迷路を解くためです。探索木とは、迷路の分岐点でどちらの道を選ぶかを、木の枝のように広げていくことで、全ての経路を表現したものです。 コンピュータは、この探索木を順番にたどっていくことで、必ず出口にたどり着くことができます。さらに、コンピュータは一度通った道を記憶することができます。そのため、人間のように同じ道を何度も通ってしまったり、堂々巡りをしてしまうことはありません。一度通った道は探索木上で記録され、「行き止まり」や「既に通った道」としてマークされます。コンピュータは、このマークを参考にしながら進むべき道を選び、効率的に迷路を解いていくのです。このように、コンピュータは探索木と記憶能力を組み合わせることで、複雑な迷路でも迷うことなく、最短ルートで出口までたどり着くことができるのです。
