hirax.net::Keywords::「アルゴリズム」のブログ



2009-09-18[n年前へ]

合議アルゴリズムが有効な局面 

 情報処理 Vol.50 No.9 Sep. 2009 の『合議アルゴリズム「文殊」 単純多数決で勝率を上げる新技術』に対する湖東俊彦氏のコラムから。

 合議が一定の成果を得ているのは、先に悪手を指してしまうとなかなか勝てないが、妙手を連発しなくてもなんとか均衡を保って、相手が先に悪手を差せば勝てる、という将棋の特性ではないかと思います。レベルは互角でそのうち悪手を差すレベル同士ならば、合議の意味があるのではないかと思います。相手が格上だと駄目かもしれません。

2010-01-17[n年前へ]

Rubyで迷路問題を解いた 

 「Rubyで迷路問題を解いた

 幅優先探索というアルゴリズムが分かりやすかったので、これで解いてみましたが、調べつつで2時間くらいかかった。
(中略)
幅優先探索は、候補をキューに貯めていき、一個一個キューから取り出して、チェックしていくとこがポイント。 あと、チェック済み(訪問済み)のノードには、フラグ立てておいて2回以上行かないようにする。

2010-01-24[n年前へ]

「迷路」を自分で作ってみよう 

 「迷路作成のアルゴリズムの一つである穴掘り法について簡単に説明する

ここで、迷路作成のアルゴリズムの一つである穴掘り法について簡単に説明する。

 エイリアンに襲われながら路地の片隅で穴掘りをせっせとする「平安京エイリアン」とか、あるいは、(少し新しめの)「ボンバーマン」といった、懐かしい古典ゲームを自分自身で作ってみたい人は、こんなアルゴリズムを一回眺めて実装してみると面白いかもしれません。

2010-02-23[n年前へ]

特許抵触検証のために(CPUの)X線透視や内部コード解析をしてみよう!? 

 「コピー品」から。

某自動車メーカのT社は某電機メーカのT社にECU用のCPUを作らせた。表向きはオリジナルCPUで、8ビット、同期バスでROMを内蔵していた。私はある自動車メーカの依頼でそのECUを解析する事になった。まずはCPUを調べる。X線で透視してI/O端子の当たりを付け、外部ROMモードがある事をつかむ。
 何故解析をするのかというと、一つは特許の問題だ。制御アルゴリズムなどの特許は、実際のコードを見ないとハッキリ解らない場合がある。ギリギリ特許に抵触しないように設計するためには相手のECUの中身を見る必要があるという事だ。

 現在でも同様の解析がコスト的に可能かどうかはわからないが、(検証性を問われがちな)制御アルゴリズムの特許を書こうとする人には、とても興味深く・楽しめる話かもしれない。

2010-02-27[n年前へ]

「男と女のデート大戦略(アルゴリズム)」をプログラムで語る (初出:2006年03月26日) 

Title  「サイエンス・ウォーカー」で「科学なデート」で、「理系ウンチク話」をデートの時に喋るのは、デート成功のために有利なのか・それとも不利なのか?どっちなんだろうか?と書いてみました。

 すると、その後、「本人が楽しそうに話してたら、何が楽しいと思ってるかを伝えようとしたら、きっと受け手も楽しい。けれど、相手に楽しさを伝える前に自分を賢そうに見せたり自分の知識をひけらかしたりしたがる人だと、受け手はあんまり楽しくない」「友達だって、恋人だって、飲み会だって、一方通行の会話(話?)だと楽しくない」「(理系話題に慣れていない)聴き手に合わせて上手く説明したり、話をアレンジできる機転が(話し手に)ない場合には、理系ウンチク話をしない方が良いかも」なんていう意見を頂きました。

 その言葉を眺めながら、私はふと「相手に合わせて上手く理系ウンチク(あるいはそれ以外)を話すデート作戦」をキッチリ考えてみたくなったのです。…「ゴリゴリ理系っぽく」論理的に考えてみたい、と思ったのです。

 そこで、試しに、「男と女の間のデート戦略アルゴリズム」をプログラム言語で考えてみることにしました。例えば、

try {
    if (he.talksAbout(rikei)) { 
        she.likes() 
    }
} catch (Java.she.Exception jse) { 
    she.talksAbout(DISLIKE); 
    he.chagePolicy('otherWay');
}

という感じです。

 実際に、行動をプログラムで実装してみれば、デートの作戦・考え方や、自分が予想する相手の対応がすっきり、明確に見えてくるような気がします。そして、何より、そんな作業はとても面白そうです(あくまで、理系的には、ですが)。

 「男と女のデート大戦略(アルゴリズム)」をプログラムで語る、オープン・ソースの「デート」支援 というのも結構楽しく役に立つかもしれません。「誰もが活用できるデート戦略(アルゴリズム)」や「(いさまざまな)例外・エラー処理に対してどのように対処するか」を、さまざまな言語でオープン・ソース開発する、というハウ・トゥー本なんていうものがあっても、面白いのではないでしょうか。

 さらには、もしかしたら、いつの日か「男プログラム」と「女プログラム」がデート試行をすることで、アルゴリズム・実装の「性能・効果比較」をすることができるようになり、その結果として、汎用的な一般最適アルゴリズム(戦略)すら、できあがったりする時代が来たりするかもしれません!?



■Powered by yagm.net