2015年4月23日木曜日

量子どうぶつしょうぎでの同時トライについて

量子どうぶつしょうぎを知らない人はとりあえずやってみてください。
http://mogera.jp/gameplay?gid=gm0000002122
どうぶつしょうぎも知らない人はここにルールが書いてあります。
http://www.joshi-shogi.com/doubutsushogi/rule.html

トライとは、どうぶつしょうぎのルールの一つで、ライオンが一番奥のマスに到達して、相手の次の一手で取られなければ勝利するというルールである。
もう一つ重要なルールが有って、駒が取られたとき、その駒からライオンの可能性が消えるというものだ。(量子将棋と同じ)

では量子どうぶつしょうぎで次のような局面になった時はどうすればいいだろうか。


A1の「ひよこライオン」をB2の「ライオン」が取る。
すると先手がトライの形になるのだが、A1にあった「ひよこライオン」が「ひよこ」に収束するので、C4の「ひよこライオン」からひよこの可能性が取り除かれて、「ライオン」になり、こちらもトライの形になる。
したがって両方が同時にトライしたことになる。

量子どうぶつしょうぎの作者であり、おそらく唯一の実装である上記リンク先の量子どうぶつしょうぎはどうなっているのだろうか。
説明を見てみたところ、ライオンの可能性がある駒がトライした場合、その駒はライオンに確定してトライが成立するというルールになっていた。
少し腑に落ちなかったので、作者の量子どうぶつしょうぎ紹介動画を見てみたところ、トライルールに関して言及されていて、同時トライについても書いてあった。
http://www.nicovideo.jp/watch/sm22292276
しかしやはり同時トライが発生しても元のどうぶつしょうぎのルールからの変更はできるだけ少なくしたい。
なので同時トライをどう扱うか考えなければならない。
引き分けにするというのが一番自然だとは思う。引き分け自体は千日手が存在するのでおかしいことではないし、局面だけを見てみると引き分けが適当なのではないか。

しかし、「ライオンがA1に移動」→「ひよこライオンが取られて、ひよこに収束すると同時にC4のひよこライオンがライオンに収束」という順でイベントが発生しているので、先手が先にトライしたとみなせるのではないかとも思った。

さて、どうしようか。

2015年4月17日金曜日

050PlusをWindows Phoneで使う(Linphone)

ocn mobile oneにしたら050Plusがついてきたので、せっかくだからLumia930で使えるようにした。
まず050Plusのアプリをダウンロード出来る端末で、050plusの初期設定とパスワードの設定をする。(重要)

Linphone(SIPクライアント)をインストールする。

SIPの設定に必要な情報を取得する。

下のフォームの050********の所に050番号を
パスワードの所に先ほど設定したパスワードを入力して送信を押す。
(ソースを見れば分かると思うが、https://start.050plus.com/sFMCWeb/other/InitSet.aspxにリクエストを送ってる。)

参考(少し修正した)::http://050plus.blog.fc2.com/blog-entry-2.html

成功すると「正常に終了しました」というメッセージとともに情報が表示される。
LinphoneのSetting > SIP accountに情報を入力して保存する。

Username<nicNm>
Auth userid (not mandatory)<sipID>
Password<sipPwd>
Domain<tranGwAd>
TransportTLS
Proxy (not mandatory)<tranGwAd>:<freeTranGwPNm>
Outbound proxyOn
Display name (not mandatory)好きな名前

参考::http://suzumenomiya.seesaa.net/article/405374239.html

試しに117(時報)に電話して見たところつながった。
追記(2015/10/5):つながるものの何故か30秒ほどで切れてしまう。050plusを使うつもりでWindowsPhoneを買わないほうが良いかもしれない。早く公式で対応してほしいものだ。

残念ながらWindows Phoneの仕様の問題でバックグラウンドでの受信は出来ないらしい。