タグ

2009年8月22日のブックマーク (2件)

  • オーダーを極める思考法

    プログラムの実行に掛かる時間を把握しておくのは、プログラミングを行う上で基的な注意点です。今回は、計算量のオーダーについて学びながら、TopCoderのMedium問題を考えてみましょう。 プログラムの実行時間 業務としてプログラミングをされている方には釈迦に説法かもしれませんが、プログラムの実行に掛かる時間を把握しておくのは、プログラミングを行う上で基的な注意点です。そしてこれは、TopCoderなどのコンテストでプログラムを組む際にもよく当てはまります。通常、こうしたことは感覚的に理解している方がほとんどだと思いますが、具体的にどれくらいのループを回すと何秒掛かる、といった基準を持っている人は少ないのではないでしょうか? 非常に基的なことですが、プログラムの実行時間に関して再確認しておきたいと思います。 TopCoderの制限に関して TopCoderでは、実行時間およびメモリ使

    オーダーを極める思考法
  • 驚くべきテクニックで「スーパーマリオ」をクリアしていく人工知能

    ゲームゲームをクリアする時代に? 「New スーパーマリオブラザーズ Wii」で、初心者向けに新しく搭載されるという噂の「スキップ機能」は、もしかしたらこんな感じなのかもしれません。 土管や砲台、敵キャラクターなど多くの障害物が設置されたコース上を、驚くべきスムーズさで、マリオがひたすら右へ右へと進んでいくこちらの動画。迫りくる敵の間を難なくすり抜けたり、パックンフラワーの間をギリギリでくぐり抜けていったりと、確かに上手いプレイであることは分かるのですが、何かがちょっと違うことに気付いたでしょうか。 実はこれ、すべてAI制御による自動プレイ。マリオの前方に表示されている赤い放物線は、この先進むルートの候補を表したもので、どうやらこの中から安全で、なおかつ最短でゴールにたどり着けるルートを自動で選択するようプログラムされているようです。途中、何度かはヒヤリとさせられる場面もあるのですが、き

    驚くべきテクニックで「スーパーマリオ」をクリアしていく人工知能
    shalnerk
    shalnerk 2009/08/22
    先読みしつつも、進んで最適解が改めて見つかったらそちらにするといった感じかな