数理最適化によるパズルの解法
PyConJP2014のTalkの内容をAzure Notebooksで簡単に実行できるように、Githubのopt4puzzleに公開しました。
45種類のパズルをPythonによる組合せ最適化モデルを使って解くことができます。
必要なもの
- インターネット環境とブラウザ
- Microsoftアカウント (ここから無料で作成してください)
実行できる45種類のパズル
カックロ | ののぐらむ | 美術館 | ナンバーリンク | 覆面算 |
---|---|---|---|---|
不等式 | ビルディングパズル | ウォールロジック | 波及効果 | ナンバースケルトン |
スリザーリンク | 四角に切れ | ましゅ | 橋をかけろ | のりのり |
ブロックパズル | タイルペイント | 因子の部屋 | 黒どこ | 推理パズル |
ひとりにしてくれ | へやわけ | ペイントエリア | 数コロ | パイプリンク |
クリーク | アイスバーン | サムライン | カントリーロード | カナオレ |
フィルマット | シャカシャカ | ヤジリン | ぬりかべ | ホタルビーム |
ステンドグラス | さとがえり | スケルトン | 数独 | OhNo! |
ABCプレース | ボンバーパズル | チョコナ | フィルオミノ | スターバトル |
(一部二コリの登録商標です)
実行方法
- Microsoft Azure Notebooksをブラウザで開き、Sign inしてください。
- 上の「Libraries」をクリックし、「New Library」をクリックします。
- 「From Github」を選び、Github repositoryに「SaitoTsutomu/opt4puzzle」を、Library NameとLibrary IDに「opt4puzzle」を入力し「Import」ボタンを押してください。
- 好きなパズルをクリックして開いてください。Jupyter Notebookが立ち上がります。
- 「Cell」メニューの「Run All」を実行してください。
実行例(ボンバーパズル: BomberPuzzle.ipynb)
- だいたい数十行ぐらいのプログラムで、瞬時に実行できます(一部、時間がかかるものもあります)。
参考
以上