Skip to content

Instantly share code, notes, and snippets.

@esehara
Last active December 26, 2015 17:09
Show Gist options
  • Save esehara/7184757 to your computer and use it in GitHub Desktop.
Save esehara/7184757 to your computer and use it in GitHub Desktop.
ラムダ・オセロ(Draft)

ラムダ・オセロ (Draft Rule)

ルール

 このオセロは、ある状態を再現するために協力するゲームです。その状態とは、通常のオセロでの「白が勝利」、言い換えれば「黒が敗北」する状態を作り出すことです。

 しかし、その状態に向かうためには一つ条件があります。それは必ず交互にコマがおける状態を最後までたもつということです。どちらかが一度でもパスをしなければならない状況におかれるか、あるいは全部のコマが最後の一マスが埋まる前に、白になってしまった場合(黒も同様です)、両者は、このルールでは敗北になります。もし最後までたどりつき、白が勝利し、黒が敗北した場合、両者の勝利となります。

意図

 最近になって、「量子人狼」であったり、あるいは「量子将棋」というコンセプトのゲームが埋まれています。これは状態を折りたたむことによって、一つに状態が確定することをコンセプトにとりこんだゲームです。この発想を、個人的には面白いと思いつつ、しかし別のアプローチが出来ないものかと考えてました。

 そこで、思いついたのは、ゲームというのは、基本的には二人のプレイヤーのどちらかが勝利/敗北するといった不確定性がどんどん収縮していくもののことです。しかし、これらの二人のプレイヤーを仮に「貴方は勝利するべきである、貴方は敗北するべきである」という、未来の確定状態に向かっていくものとしてデザインすると、どうでしょうか。その確定状態を壊した場合を敗北とするとどうでしょう。

 これは、実はゲームにならないし面白くないと思ってたのですが、発想を変えて、ある状態を作り出すために、お互いが協力しあうゲームとすると、実はこのコンセプトが使えるのでは、と思って仮ルールとして作ったのが、ラムダ・オセロという変則ルールです。

 なぜラムダか、というとこれは安直なのですが、ある関数が定義されたときに、その関数に入力されたデータが同じであるならば、同じデータを出力するはずである、という話に基づきます。そして、ゲームの勝利を必ず「白・勝利/黒・敗北」と振り分けるというコンセプトを示すのにぴったりかなと思ったので、そういう名前にしました。

 というわけで、オセロによる協力ゲーム、ラムダ・オセロです。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment