2010-02-27[n年前へ]
■「男と女のデート大戦略(アルゴリズム)」をプログラムで語る (初出:2006年03月26日)
「サイエンス・ウォーカー」で「科学なデート」で、「理系ウンチク話」をデートの時に喋るのは、デート成功のために有利なのか・それとも不利なのか?どっちなんだろうか?と書いてみました。
すると、その後、「本人が楽しそうに話してたら、何が楽しいと思ってるかを伝えようとしたら、きっと受け手も楽しい。けれど、相手に楽しさを伝える前に自分を賢そうに見せたり自分の知識をひけらかしたりしたがる人だと、受け手はあんまり楽しくない」「友達だって、恋人だって、飲み会だって、一方通行の会話(話?)だと楽しくない」「(理系話題に慣れていない)聴き手に合わせて上手く説明したり、話をアレンジできる機転が(話し手に)ない場合には、理系ウンチク話をしない方が良いかも」なんていう意見を頂きました。
その言葉を眺めながら、私はふと「相手に合わせて上手く理系ウンチク(あるいはそれ以外)を話すデート作戦」をキッチリ考えてみたくなったのです。…「ゴリゴリ理系っぽく」論理的に考えてみたい、と思ったのです。
そこで、試しに、「男と女の間のデート戦略アルゴリズム」をプログラム言語で考えてみることにしました。例えば、
try {
if (he.talksAbout(rikei)) {
she.likes()
}
} catch (Java.she.Exception jse) {
she.talksAbout(DISLIKE);
he.chagePolicy('otherWay');
}
という感じです。
実際に、行動をプログラムで実装してみれば、デートの作戦・考え方や、自分が予想する相手の対応がすっきり、明確に見えてくるような気がします。そして、何より、そんな作業はとても面白そうです(あくまで、理系的には、ですが)。
「男と女のデート大戦略(アルゴリズム)」をプログラムで語る、オープン・ソースの「デート」支援 というのも結構楽しく役に立つかもしれません。「誰もが活用できるデート戦略(アルゴリズム)」や「(いさまざまな)例外・エラー処理に対してどのように対処するか」を、さまざまな言語でオープン・ソース開発する、というハウ・トゥー本なんていうものがあっても、面白いのではないでしょうか。
さらには、もしかしたら、いつの日か「男プログラム」と「女プログラム」がデート試行をすることで、アルゴリズム・実装の「性能・効果比較」をすることができるようになり、その結果として、汎用的な一般最適アルゴリズム(戦略)すら、できあがったりする時代が来たりするかもしれません!?
2010-04-22[n年前へ]
■物理現象のメカニズムに着目した設計最適化ツール
「物理現象のメカニズムに着目---CDAJが設計最適化ツール「modeFRONTIER」の新版を発売」
一般に製品設計などの際、数多くの設計パラメータが相互に影響し合うと、製品で起きている物理現象を推測するのが非常に難しくなり、設計を最適化できなかったり、不具合の要因となったりする。そこで、設計パラメータと目的関数の挙動から物理現象を推定し、それに基づいて不具合の発生メカニズムを理解して設計の最適化を図るのがCAPの目的だ。
大まかには(1)設計因子や評価項目を設定する、(2)シミュレーションによるパラメータ・スタディーを実施する、(3)階層的クラスタリング手法によって類似のデータを分類する、(4)設計因子同士の影響に着目して、物理現象のメカニズムの仮説を立てる---という手順で分析する。合理的なメカニズムの仮説が得られない場合は、(1)または(3)に戻る。技術者は、こうして得られた仮説を基に現象を理解し、新しい設計指針を作る。
2010-06-19[n年前へ]
■「サラリーマン的アルゴリズム」という名の最適化手法
遺伝的アルゴリズムもシミュレーティド・アニーリング(焼きなまし法)も、いずれも最適解を求めるための手法である。ふと、結構世の中に満ち溢(あふ)れていそうな最適化(最適解獲得)問題のための手法として、「サラリーマン的アルゴリズム」というものがあるのではないか、と考えた。
「サラリーマン的アルゴリズム」では、基本的に3つの状態遷移・探索過程がある。その最初のものは、局所的最適化を淡々と追い求める「兵隊フェーズ」である。この過程は、少なくとも局所的最適解を求めるが、ただしそれにより大局的な最適解を求めることができる可能性はかなり低い。
次の過程が、「船頭多くして、船山に登るフェーズ」である。兵隊だけでなく船頭も多くなり、エネルギーが高くなり、(焼きなまし法ではないが)比較的離れた解探索も行うようになる。ただし、悪く言えば、少し行き当たりばったり法とも言えるような状態になる。
そして、もう3つのフェーズのうち一番影響の大きいのが、「天の声フェーズ」である。このフェーズはこれまでの最適解から大幅に離れた場所の探索も可能にする、問答無用の(遺伝的アルゴリズムのような)突然変異的な探索である。
これら3つのフェーズの繰り返しにより、もちろん「兵隊フェーズ」「船頭多くして船山に登るフェーズ」「天の声フェーズ」の比率は異なるが、これが繰り返されることにより最適解を求めようとする最適化手法は意外に多いのではないだろうか。
「集中化」と「多様化」
「集中化」 -> 改善力
良い解の近傍を探索すれば もっとよい解が見つかるはず...
「多様化」-> 探索力
悪い解の近傍に陥らないように広範に探索すればずっと良い解が見つかるはず...
「集中化と多様化」から