Each tile has a hidden value. Sort them by it. That's all. Choose two tiles. If left > right, they will be swaped.
Peter Norvig / 青木靖 訳 このエッセイでは、 あらゆる数独パズルを解くという問題に取り組む。制約伝播と探索という2つのアイデアを使うと、ごく簡単に解けるということがわかる(主要なアイデアはコードにして1ページたらずで、補足的なコードが2ページある)。 数独の記法と予備概念 最初に記法をいくつか決めておこう。数独パズルは81個のマス(square)からなる盤面を使う。数独ファンの多くはカラムを1-9で、行をA-Iでラベル付けしており、カラム、行、ボックスのような9個のマスの集まりをユニット(unit)と呼び、ユニットを共有するマスをピア(peer)と呼んでいる。パズルではマスのいくつかが空いており、他は数字が入っている。パズルの目的はこうだ。 それぞれのユニットのマスが1から9の数字の順列によって埋められるようにする。 つまり、1つのユニットに同じ数字が2度現れてはならず、そ
就活・インターンのための情報サイト。Webテスト・ES・志望理由・OB訪問・会社説明会・面接・TOEIC・英語の勉強など 【プログラミングのトピックとしての数独】 数独は9×9のマス目に1~9の数字を単純なルールに基づいて埋めていくパズルです。 http://ja.wikipedia.org/wiki/%E6%95%B0%E7%8B%AC 2005年頃から雑誌のパズル欄に登場して以来、世界的に有名になりました。最近では、数独のパズルだけを数百個収録した本も売っているくらいです。電車で数独を説いている人を見たことのある人も多いのではないでしょうか。 数独はプログラミングのトピックとしてとても興味深いです。ルール自体は誰でも1分で理解できる単純明快なものですが、 ・「問題を解くための戦略が複数種類存在する」 ・「解答が1通りになるような数独の問題を生成する時に許される『空白マス数の最大値』が問
「サイボウズ・アドベントカレンダー」の4日目です(これまでの記事一覧)。どうやら三日坊主は免れたようです(笑)。 (0) はじめに こんにちは。サイボウズ・ラボの川合秀実です。私は主にサイボウズ製品の高速化のお手伝いをしています。しかし先日、製品とは関係ないものを高速化したので、今日はそれを発表します。 サイボウズには社内勉強会がいくつかあって、その中にはC++の勉強会もあります。私はサイボウズの勉強会に参加するのが好きなので、このC++の勉強会に参加してみました。この勉強会では、「数独」というパズルを解くプログラムをC++で書いてみよう、というのが最初のテーマでした。参加者各自がプログラムを書き、翌週にお互いにレビューしあうということが行われました。 ここで私はやらかしてしまいました。ええ、そうです、高速化してしまったのです! 言うまでもないですが、誰もこんなことは望んでいません。そもそ
このサイトについて このサイトと"Code Puzzle"は、任天堂株式会社が採用広報活動のために運営しているものであり、商品・サービスの宣伝や新作ゲーム情報の提供を目的としたものではありません。 掲載内容に関するすべての著作権は任天堂株式会社に帰属します。法律により認められた範囲を除き、コピー等の利用は固くお断りします。 このサイトで掲載している"Code Puzzle"は、興味を持っていただいた技術者の方々に楽しんでいただくために公開しているものですが、"Code Puzzle"を 解かれた方々に対して、景品をお渡ししたり採用におけるメリットを提供することはありません。 また、"Code Puzzle"の解法や内容に関するお問合せには回答いたしませんので、あらかじめご了承ください。
2010年10月17日 あから2010合議サーバログを可視化してみた Tweet 10月11日に開催された清水市代女流王将とコンピュータ将棋「あから2010」の対戦は「あから2010」の勝利となった。コンピュータが将棋のプロを破った初めてのケースである。対局前の展望、技術解説、棋譜再現Flashなどは次のエントリを参照いただきたい。 コンピュータ将棋の現状:三人寄れば文殊の知恵は正しいか? 清水女流王将 vs コンピュータ: 世紀の対局を楽しむために さて、情報処理学会は、棋譜と合議サーバのログを公開している(今気づいたが、各プログラムの読む筋も追加されている)。コンピュータ将棋や囲碁の掲示板ではYSS開発者の山下氏がログについて簡単な解説を行っている。そこでスクリプトを組んで、各プログラムの合議過程がなるべく見やすくなるように可視化を試みてみた。 本来の性能を発揮していなかったあから20
清水市代女流王将とあから2010の対局が開催された。あから2010というのは4つのシステムの合議によるコンピュータ将棋。それぞれ相当な強さだけに、あからが勝つんじゃないかと思っていた人も多いだろうが (むしろなんとか清水女流王将には残してほしいと思っていたのだろうが)、蓋を開けてみるとやはりコンピュータ将棋の勝利。 スラッシュドットやらなんやらのコメントを見るとやれコンピュータが合議なのは人間と比べてずるいだの (人間も脳内で並列処理してもかもしれない)、人間が考えている時間にコンピュータが考えられるのはずるい (それは人間だって同じでは?) だの、なんだか「コンピュータ将棋が勝つのはコンピュータに有利な条件だったんじゃないか」という意見ばかりでうんざり。 いちばんまともな記事は PC Watch によるコンピュータ将棋が女流王将に勝利という記事。各人の (あまりバイアスのかかっていないよ
平成22年10月11日の対局では、あから2010は無事終局まで指し続け、86手で清水女流王将が投了、あからの勝ちとなりました。新聞社やTV局など多数のメディアの注目を集め、立ち見がでるほどの解説会場も大いに盛り上がりました。インターネットでも多くの方々がこの対局を観戦して下さり、対戦結果は日本国内のみならず世界中に報道され、情報処理学会による情報処理技術の進歩の一端を示すことができ、50周年記念イベントとしての対局を成功裏に終えることができました。 一回限りの勝負事ではどのような結果もあり得たところですが、今回の対局では情報処理学会の期待通りのあから2010の棋力を棋譜に残すことができたと自負しております。また、この対局を通じてプロ棋士の将棋に対する姿勢など、多くの新しい発見や感動を得られたことも大きな収穫でした。 今回の成功は、35有余年に及ぶコンピュータ将棋開発の積み重ねとともに、広く
10月11日、情報処理学会の50周年記念として、女流棋士がコンピューターとガチンコで勝負するというイベントが行われました。 コンピューターとの対局に臨んだのは、清水市代女流王将。2010年10月現在で獲得タイトル数は女流歴代一位の43期。押しも押されぬトップクラスの女流棋士です。対するコンピューターは情報処理学会による「トッププロ棋士に勝つ将棋プロジェクト」特製システム「あから2010」(以下「あから」)。「あから」とは10の224乗の数を示す数「阿伽羅」であり、将棋の局面の数がこの数に近いことに因んで命名されたそうです。本記事ではこの歴史的な対局の模様をレポートしたいと思います。(取材/文・罪山罰太郎) 対局の会場となったのは、東京大学本郷キャンパス。将棋ファンのみならず、人工知能の研究をしている方など、多くの人が詰めかけ、熱気ムンムンです。 それにしてもオッサン率が高……いや、なんでも
すでに広く報じられている通り、清水市代女流王将vsあから2010の対局は、振り駒で後手となったあから2010が勝利をおさめました。 コンピュータ将棋が女流のトッププロに公式戦で勝利したのは初めて。コンピュータ将棋の実力が改めて結果をもって示されました。たったひとつの勝利ではありますが、今後この1戦が基準線となってコンピュータ将棋の実力が語られることになるでしょう。プロ棋士とコンピュータ将棋の公式戦のマッチメークについても、次回以降はこの1戦を基準として行われることになるでしょう。 手数は86手と短めでしたが、白熱した内容でした。今回は当初からコンピュータが有利と考えられていましたが、中盤はほぼ互角とみられるねじり合いが続き、人間棋士の強さも証明されたと思います。対局場においても、人類の叡智が機械に屈してしまった、といったような悲壮感は対局後もなく、人間とコンピュータが互いを好敵手として認め
4月2日に情報処理学会が日本将棋連盟に「コンピュータ将棋」で挑戦状を送ったことが話題になった*1。日本将棋連盟は挑戦を受諾、女流棋界の第一人者、清水市代女流王将・女流王位が対戦相手と決まった。対戦は今秋から順次行われるという。 情報処理学会の挑戦状に関するFAQによれば、対戦ソフトウェアに関して次のように記されている。 Q:対戦ソフトウェアは既に決まっているか A:合議アルゴリズムを用いる方針になっています。複数のソフトウェアを疎結合で並列計算させて、それらの意見を集約して、次の一手を決定する手法です。現在のところ、限られた実験では効果が認められており、これを実際の対局に用いる方向で検討しています。個々の参加ソフトウェアの候補は、プロジェクトに現時点で参加しているGPS将棋、Bonanza、激指、YSS、TACOS、柿木将棋などです。これを実用的にどのように組みあわせるのかは、実験を元に決
2010年10月11日 清水女流王将 vs コンピュータ: 世紀の対局を楽しむために Tweet いよいよ本日10月11日、清水市代女流王将とコンピュータ将棋「あから2010」の世紀の対局が行われる(情報処理学会-コンピュータ将棋プロジェクト、駒桜 | 女流棋士会ファンクラブ)。平手一番勝負、持時間各3時間のガチンコ勝負である。清水女流王将はタイトル獲得合計43期の歴代1位の記録を保持する女流棋士の第一人者であるが、「あから2010」の相手は少々荷が重いとする意見が大半のようだ。 情報処理学会によれば、「あから2010」は次のようなシステムだ。 情報処理学会の「トッププロ棋士に勝つ将棋プロジェクト」特製システム 阿伽羅(あから)は10の224乗という数を表し、将棋の局面の数がこの数に近いことに因んで命名された ハードウエア部 -東京大学クラスターマシン: -Intel Xeon 2.80G
今月号の会誌「情報処理」(2010年8月号目次)の特集は「コンピュータ将棋の不遜な挑戦」というタイトルで、ここ数年のコンピュータ将棋の発展の技術的な解説。こうやって毎年のように情報がアップデートされると非常にありがたい。 見所は鶴岡さんによる「選手権優勝記--激指の技術的改良の解説--」とktanaka先生・kanekoさんによる「大規模クラスタシステムでの実行--GPS将棋の試み--」の2記事。特に鶴岡さんによる記事は、Bonanza のよい解説にもなっており、必読である。実は、激指は 評価関数というのは,局面の形勢判断をコンピュータで行うための関数で,任意の与えられた局面に対して,どちらがどれだけ有利なのかを数値化する関数である.[...] このようなパラメータの調整は非常に手間のかかる作業だが,かつては完全に手作業で行われており,将棋プログラム開発における作業の多くの割合を占めていた
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く