よかったのが8話で、ダブルスのラリーをアニメで見られるのが感動的だ。そのあとのシーンでムネムネ先輩のムネがちゃんと揺れているのもすごい。ムネも体の一部だから、その揺れが卓球描写を邪魔するどころか描写に寄与している。卓球の基本的な説明を入れてくれるので、回が進むとEDであがりがループドライブを打っていたことがわかったりする。最終回は、露骨に未完アニメの悪さが出ていた。ヒミツのここたま5クール目。飽きてきた感はある(2回以上見ることが大きく減った)が、ぽつぽつ面白い話もある。EDがそろそろ変わらないかなーと思う。いい話のあとにパンツEDじゃぶち壊しだ。内容的に3月で終わりそうだからそこまで引っ張るのかな。似た内容を繰り返してもいいと思うけど。子供向けアニメだから、視聴者が入れ替わりながら長く続くのが理想だと思う。最初から飛ばしてんなあと思っていたら、最後まで飛ばしっぱなしだった。勢いを1クール保ったのはすごい。一方で、1クールという短い放送だったので、いつもそこに「てーきゅう」があるというかつての安心感はなかった。信長の忍びこういうので歴史の勉強したかったと思うよね。最近思うけど、中学生のときとかは覚えるだけで全然楽しくなかった。中学校で勉強する内容ってどの科目も相当な力がないと楽しめないと思う。作者は少なくとも楽しんで勉強できるレベルの人なのだろう。楽しめなくて何のための勉強だという気もするが、自分も中学の歴史のテストで平均点を取れるくらいの勉強は(嫌々ながら)していたから、今こうして「信長の忍び」というアニメを楽しめているとも言える。面白さがわかるのにかなり時間がかかったが、予想外にいい作品だった。自分はあまり本を読まないが、なるほどこの人たちは本が好きなんだなと。いう、自分の知らない世界を見せてくれる作品だ。町田さわ子と神林が仲良くしてる描写が後半増えてよかったというのもあるのだが、これは名前が付いてるのだろうか。自分は「ゆるゆり」であかりとちなつが仲良くしてるところが好きなのだが、それと似たイメージ。あれもゆるいゆりだということなのか。魔法少女なんてもういいですから。セカンドシーズン面白いしかわいいしOPもいい曲だけど、やはり短い。1話あたりの時間を2倍にしてほしい。話数が半分になるから都合は悪いだろうけど。NARUTO最終回後は微妙だったが、サスケ真伝は面白い。3月のライオンまだ追いついてないけど時間があるときに見てる。回が進むとシャフトっぽさがわかりやすくなり見やすい。声は、少しは慣れた気もするがまだまだだ。プロ棋士から将棋教わるのほんとうらやましい。ニャー将棋は見てらんないけど、これがきっかけで将棋に出会う人も多いだろうからもっとやれ。あにトレ!!XX酷い内容だが、ニコニコ動画のコメント付きで何とか見られる(基本的にアニメはコメントオフで見てる)。1期のEDは最後に必ずあさみが出てきたので、その寂しさはあった。1期と比べて設定の不自然さが鼻についたが、そんな中で最終回の夢オチはかなりきれいだと思った。22:072016-12-24shogi686における手駒の優劣判定コンピュータ将棋はじめにこれは、手駒の優劣判定を現在のshogi686がどう処理しているかをありのまま説明するための記事。優れた判定方法について解説した記事ではない。最近、数学で証明をするようなカッチリした思考が苦手になってきたので、なんか間違ってたら教えてください。持ち駒は先後64bitずつ計128bitで持っている。将棋の持ち駒は7種類なので、各駒の数をuint8_tで表しても1byte余る。32bitに収めるには各持ち駒のビット位置をテーブル引きするコストがかかるが、64bitあれば駒番号でアクセスできるため簡単高速である。局面のハッシュ局面のハッシュ値は、盤面のハッシュ値と手番側の持ち駒の和(xorではなくadd)としている。持ち駒のハッシュための乱数は使わない(少し高速化)。手番に関しては、持ち駒のデータ構造で余っていた1byteで後手側だけ特定のビットを立てればよい。手番側の持ち駒を足す操作は、手番がコンパイル時定数の状況(doMove内)で行うためコストが低い(先手番の持ち駒に固定しなかったのはこのため)(誤差レベルでしかないうえにCPUを選びそう)。将棋の局面は盤面と手番と片方の手番側の持ち駒から一意に定まるため、この方法が成立する。このハッシュを駒落ちも含んだ定跡に使う場合、落とした駒なのか相手の持ち駒なのか判別できなくなる。よって、落とした駒に応じた乱数を加えるなどする必要がある(今どきそんなことする人いないだろうけど)。盤面のハッシュはxorを使っているが、盤面のハッシュ値と持ち駒の更新は別々にやって最後に足すので、xorとaddの順番で値が違ってくるような心配はない。足す相手が乱数なので、持ち駒の数そのものを使ってもハッシュ値の衝突は増えない(よね?)。置換表でのデメリット持ち駒を64bit全体に足しているため、ハッシュ値の一部のビットだけを使うときにデメリットがある。局面のデータを置換表のどこに保存するかは、局面のハッシュ値の下位ビットで決める。持ち駒は64bit全体に散らばっているため、一部の持ち駒しか置換表エントリの位置に影響を及ぼさないということになってしまう。別にハッシュ値が被るわけではないが、持ち駒だけが違う局面の置換表での保存場所が被りやすくなり、有用な局面のデータが保存できなくなるケースが少しだけ増えそうなのだ。メリットとなるわずかな高速化は完全に吹き飛んでいると考えるが、実際のところはわからない。駒番号を変えたりPEXTを使ったりして緩和できるとも思うが、PEXTのコストが見合うかどうかもわからない。ちなみに、手番は最下位ビットに入るようになっているので問題ない。ソフトで、玉を除く成っていない駒の駒番号は1から7に割り当てられている。局面のハッシュ値同士の差が0かどうかで行っている。普通に==で比較してもいいのだが、上述したハッシュを採用しているため、差を求めれば同時に手駒の優劣判定もできるのだ。手駒の優劣判定さて、やっと本題。このハッシュを使うと、手番と盤面が同じであるような2局面のハッシュ値の差が、その2局面の持ち駒の差になる。盤面が同じなら盤面のハッシュ値も同じ(逆は必ずしも成り立たない)であり、引き算すれば相殺されて持ち駒の差だけが残るという寸法。各持ち駒の数がuint8_tで7個並んでいるので、「4手前の局面と比べて先手の持ち歩が1枚増えただけ」という後手が絶対に避けるべき局面の場合、現在の先手の持ち駒から4手前の先手の持ち駒を引けば、「持ち駒に歩が1枚」を表す1bitだけが立った数値が得られる。手番のビットについては、千日手等の判定が手番が同じ局面同士でしか行わないので引き算すれば消える。普通はこの判定を、持ち駒の数を格納するビットたち(例えば飛車なら0枚から2枚なので2bitぶん)の一つ上のビットを集めたマスクとのandで行う。これで繰り下がりがあったかどうかが判定できて、繰り下がりがあったなら減っている持ち駒があるから優越局面ではないとわかり、千日手でないうえに繰り下がりがないなら優越局面だとわかる。この2局面のハッシュ値の差をとる方法では、同時に盤面のハッシュ値が一致するかどうかも判定しなくてはならない。よって、使用するマスクのゼロになっているビットを必要最小限まで減らす。駒が2枚増えることは検出したいので、各駒1bitでは足りない。各駒2bitと持ち駒7種で14bit。64bitのハッシュ値の差から14bitを除いた50bitに、立っているビットが一つもなければ盤面が同じであり優越局面であると判断する。普通の方法と比べて、ハッシュが衝突する確率は16384倍くらいに上がったけど、元々(2の64乗分の1)が低い確率なのでそれほど問題ないと思う。1)で立っているビット数が1以下であることを確認していたが、これだと「銀打ち同玉金打ち同玉で同一盤面」というビットが2か所立っているケースが漏れてしまう。金打ち2回なら、金2枚は0b10だから1bitしか立ってないのだけど。ここは最後の確認であり速度はあまり必要ないので、単にpopcntして2より大きいものをはじけばいい気もする。置換表でハッシュ衝突が頻繁に起こるのは、誕生日のパラドックスだから。千日手等の判定は16手遡っても7つの局面としか比較しないが、置換表を引くときは登録されている全局面から一致するハッシュ値を100%発見できる。コンピュータは1分で何億局面も読むので、64bitのハッシュを使っても長考すればどこかでは衝突する(最近は衝突する前提でもう少し短いハッシュを使う人が多いけど)。余談だが、保存場所を決める下位ビットを置換表に保存する必要はないので、技巧が32bitで浮かむ瀬が16bitだけどこれは25bit増とかで動いているのだ(置換表のサイズを2倍にすると1bit増える)。ここは、特に大きなメリットはない。祖先ノードの、局面のハッシュ値だけを保存しておけば、盤面のハッシュ値や持ち駒が不要だというくらい。うら王のように、まず盤面のハッシュ値が同じかどうかで分岐してから千日手や手駒の優劣を判定したほうが速そうだ。まとめここに書いた中で役に立ちそうなアイデアは、持ち駒のデータ構造(手駒の優劣判定関係ないんかい!)。x64かつ持ち駒を置換表に入れない前提。メリットが(あったとして)「わずかな高速化」しかないというのがいかにも味が悪い。自分はコードが簡単になるのでこういうのが好きなんだけど。「各駒1枚ずつの値」は「3枚」の間違い。いう、ソースを変えたのにコメントがそのままというコメントバグが多い。「先手の持ち駒が増えた」ってのも「手番側の」だよねえ。これはなぜそう書いたのか想像できない。手番側の持ち駒をハッシュに入れる手法なのに。12:292016-12-13電王戦の予想書いとくね2将棋プロ棋士もコンピュータも最強が出てきたのはいいことだと思う。羽生が今回も出てこなかったのは残念な面もあるが、佐藤天彦のほうが強いと思っている人がたくさんいる現状はとっくに手遅れなので、そこまで残念でもない。電王戦のルールは、電王トーナメントのルールのページにある。持ち時間はチェスクロック5時間。個人的にはもう少し短くてもいいと思うが、叡王戦決勝と同じなので妥当なところだろう。生放送「すべてのパターンをやる」と言いつつ貸し出しだけは絶対にやめない。今度羽生さんと戦うから羽生さんを貸し出してくださいとかあり得ないのに。コンピュータ側は、評価関数に乱数を入れるなどの弱くする変更を強いられる。事前に手の内が知られているから、将棋の内容もつまらなくなる。ハンデを付けたいなら、コンピュータの持ち時間を減らせばいいのに。なんでこんなにデメリットしかないハンデの付け方をするんだ。プロ棋士とコンピュータが戦うという貴重な機会なのに。ハンデとわからないようにするためだろうけど。書くまでもないが、予想はPONANZAの2勝。絶対というわけではないけど、こうなる可能性が非常に高い。Adventar日本囲碁ルールの最大の欠点。美学ゆえに捨てられない。その4明日のハッピーハンターは君だ!—ここたまオンリーイベント雷句誠の今日このごろ。悪質なインタビューについて。書き続けるbebavior行為・行動・...ページビュー1141094。