多角形パズル問題の ヒューリスティックによる 解法の検討

Slides:



Advertisements
Similar presentations
画像処理・実習 第五回: 空間フィルタ (特徴抽出,ラプラシアン,鮮鋭化) 東海大学 情報理工学部情報メディア学科 濱本和彦.
Advertisements

Problem A : Everlasting...? 原案 : 泉 模範解答 : 黄・野田 解説 : 野田.
G 問題 コードアート オンライン 原案:西出 ライタ:伊藤 テスタ:西出. 問題概要 0 大きさのさまざまな n 個の円に多角形 m 個を入れら れるか判定する問題 0 ただし、同じ円に複数の多角形を入れることはでき ない 0 もし、入れられる場合は、辞書順最小の入れ方を出 力 ① ② ③ ① ②.
ステップアップグループ 2014/03/15 梅谷. メンバー紹介 ステップアップのグループは ・足立さん、渡辺さん、中瀬さん 世並さん、堀越さん、 長岡さんと梅谷です ・大森さんは休会で、リーダーだった谷口さんは 退会されてしまいました ・そして思いがけないことに、中瀬さん、渡辺さ んが しばらくお休みするということになりました.
Problem C: Grated Radish ~大根おろし~. 成績 Submit 数: 0 Accept 数: 0 問題セットの中で最難問題なので解けな くても仕方が無いかなと思いつつ, 1 チー ム位 submit して欲しかった.
模擬国内予選2013 Problem F テトラ姫のパズル 原案:須藤 解答:大友、須藤 解説:須藤.
ペンローズタイリングを 学べるパズルの製作
J: Magical Switches JAG 模擬地区予選 2013 原案:保坂 解答:保坂・楠本 解説:保坂.
画像処理学習用RTコンポーネントライブラリ 田窪 朋仁,大原 賢一,吉岡 健伸(大阪大学)
3次元nクイーン問題の 解に関する研究 論理工学研究室 伊藤精一
本日のスケジュール 14:45~15:30 テキストの講義 15:30~16:15 設計レビュー 16:15~16:30 休憩
豊中高校土曜講座「数学セミナー2003」 プラトン多面体の数学 なぜ正多面体は5種類しかないのか 大阪府立豊中高等学校 深川 久.
プログラミング基礎I(再) 山元進.
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
東京大学工学部 丁友会学生委員会 学生委員長 竹内健登
Princess, a Strategiest
スペクトル法による数値計算の原理 -一次元線形・非線形移流問題の場合-
整数計画法を用いた スリザーリンクの解法 杉村 由花 (東京大学)
技術トピックス 2014/08.
クイズ 「インターネットを使う前に」 ネチケット(情報モラル)について学ぼう.
第18回全国高専プログラミングコンテスト 課題部門 10020
数独パズルの難易度判定 ~解法ロジックを用いた数値化の提案~
OpenCV を使った画像処理コンポーネントの作成例 田窪 朋仁(大阪大学)
ACM ICPC 国内予選 2006 模擬練習会総評 2006 / 06 / 18 ACM ICPC OB/OG 会.
2013年度模擬アジア地区予選 Problem E: Putter
4.2 連立非線形方程式 (1)繰返し法による方法
【トップページ-TOPICSの登録・編集】
こんにちは。これからVR部隊の紹介を始めます。
最短路問題のための LMS(Levelwise Mesh Sparsification)
「三月三日」 08210066.
塩山幾何学を用いた ボロノイ図の解析 立命館高等学校 三村 知洋 宮崎 航輔 村田 航大 塩山幾何学を用いたボロノイ図の解析
理論試験速報 理論問題部会長 鈴木 亨 先生 (筑波大学附属高等学校) にインタビュー.
拡張タングラムとラッキーパズルの凸配置について
第四回 ゲーム                 05A1054         前田嵩公.
7-3.高度な木 (平衡木) AVL木 平衡2分木。回転操作に基づくバランス回復機構により平衡を保つ。 B木
情報工学総合演習 D-I 近似アルゴリズム 埼玉大学 理工学研究科 山田 敏規、 橋口 博樹、 堀山 貴史
顔部品の検出システムの構築 指導教員 廉田浩 教授 1DS04188W  田中 甲太郎.
内視鏡画像からの奥行き情報提示による 視覚支援システムの開発
グラフアルゴリズムの可視化 数理科学コース 福永研究室 高橋 優子 2018/12/29.
テトリスにおけるAI の開発 情報論理工学研究室 13— 川原 翔太.
卒論の書き方: 参考文献について 2017年9月27日 小尻智子.
4人版リバーシYoninの解析 情報論理研究室 藤本 侑花
生物統計学・第3回 全体を眺める(1) R、クラスタリング、ヒートマップ、各種手法
 情報の授業 アルゴリズムとプログラム(1) Go.Ota.
正多角形の作図 プログラミングで多角形を描く方法を考えよう 1時間目.
連続領域におけるファジィ制約充足問題の 反復改善アルゴリズムによる解法 Solving by heuristic repair Algorithm of the Fuzzy Constraint Satisfaction Problems with Continuous Domains 北海道大学.
数独の解生成と 解に対する番号付け 理学部 情報科学科 渡辺研究室 戸神星也.
音声分析 フーリエ解析の定性的理解のために.
学 正多角形のどんな性質を使えば,プログラミングで正多角形を描くことができるだろうか。
問題作成、解説担当:中島 副担当:坪坂、松本
第16章 動的計画法 アルゴリズムイントロダクション.
構造的類似性を持つ半構造化文書における頻度分析
ホ-5班 発表タイトル(30字以内) 学籍番号1 名前 学籍番号2 名前 学籍番号3 名前 学籍番号4 名前 …
2016年1月14日 報道関係各位 ETロボコン2016開催・記者発表会のご案内
本当は消去できていない!? ~データを完全消去する方法~
本当は消去できていない!? ~データを完全消去する方法~
問題 あなたはポケモンGOをやっています. これから5か所のポケモンの巣(ポケモンがよく出る場所)を回って レアポケモンを捕まえに行こうと思っています. しかし,持ち物を見たらハイパーボール1つしかありませんでした. なるべくCPが高い(強い)レアポケモンを 捕まえたいのですが, 何か所目で捕まえれば.
第5章 まだまだ続く反復処理!! ~繰り返しその2 for~
指令1 三角形の謎にせまれ!.
駒澤大学 経営学部経営学科 MG8007 市川 綾由美 西村ゼミ課題 駒澤大学 経営学部経営学科 MG8007 市川 綾由美.
情報ネットワークと コミュニケーション 数学領域3回 山本・野地.
原口和也 高橋隆一 丸岡章 石巻専修大学 理工学部 情報電子工学科
テクニカル・ライティング 第4回 ~文章の設計法「KJ法」について~.
3.1 シューティングゲームの当たり判定 当たったら死亡.
論理回路製作実験 発表ガイダンス 発表者氏名 秋田工業高等専門学校 電気・電子・情報系.
一問一答式クイズAQuAsにおける学習支援の方法
レポート&筆記試験について.
2015年1月29日 報道関係各位 ETロボコン2015開催・記者発表会のご案内
1 ひとりにしてくれ数 東北大学 大学院情報科学研究科 ◎鈴木 顕 内澤 啓 国立情報学研究所 情報学プリンシプル研究系 宇野 毅明.
ペンシルパズルの大道芸ステージショーへの応用
Presentation transcript:

多角形パズル問題の ヒューリスティックによる 解法の検討 〇川上 直人, 橋本 剛 松江工業高等専門学校 情報工学科 それでは松江高専情報工学科の川上が、多角形パズル問題のヒューリスティックによる解法の検討という題で発表させていただきます。

全国高専プログラミングコンテスト (プロコン) 2016年:多角形パズルが出題された 人間が元の形を復元! 今回話すのは、高専プロコンを元にした研究です。高専プロコンについてご存じない方も多いと思うので、まずは、高専プロコンについて話します。 高専プロコンは、全国の高専生たちが競うプログラミングコンテストで、年に一度開催されます。 部門は、アイデア部門、自由部門、競技部門の3つです。毎年課題は違いますが、アイデア部門と自由部門はプレゼンと成果物で競うコンテストで、競技部門は プログラミングの力を競うコンテストです。今回は、2016年の競技部門について説明させていただきます。 2016年の高専プロコンでは, 実物のパズルが出題されました。 こちらは、昨年のプロコン出題された問題の一つです。 競技の目的は、できるだけ早く全てのピースを枠穴に埋めることです。パズルは人間が解きます。もちろん、パソコンやカメラなどは自由に使えます。 解答 問題 PC, スキャナ, カメラなどは自由に使える

多角形パズルの定義 全ピースを枠穴に入れるパズル 100%埋まる ピースと枠穴は穴のない多角形 全ピース埋まった⇔解けた ここでいう多角形パズルは、「すべてのピースを枠穴に入れるパズル」を指します。ピースと枠穴は穴がない多角形であり、すべてのピースを隙間なく枠穴に入れられることが保障されています。

2016年の高専プロコン 枠穴に入ったピースの個数が多い 多角形パズルを解く大会 勝利条件: 1回戦, 敗者復活戦, 準決勝, 決勝を行った. 詳しいルールは次のようになります。 まず、ピースと枠穴は単純多角形です。 また、100%埋まることが保障されています。 勝敗は次のようにつけられました。 2016年の高専プロコンはあまり評判がよくありません。その理由の一つは、勝敗が「ピースの個数」で決まることです。 これは、大きなピースを1個か2個取り除いて素早く解答する、という戦略が流行したからです。

2016年の高専プロコン 優勝(完全人力) 全部埋まっていない! (多角形を詰め込んでいるだけ) 決勝戦の回答 決勝戦の様子がこちらになります。 (メモ:会場全体の図を入れる。肖像権に問題がなければ、手で解いているチームの写真とカメラを使って解いているチームの写真を入れる。) 決勝戦では12チームがパズルを解きました。 2,3チームはプログラムを使って解いていましたが、他のチームは完全手動でパズルを解いていました。 その結果がこちらです。優勝校は…完全手動でした。人間は強いですね。 でもちょっと待ってください。パズルが完成しているチームがいませんよね。 実は決勝戦では完全解答が出ていません。優勝チームも、大きなピースを2個除き、他のピースを枠穴に詰め込んだだけでした。 全部埋まっていない! (多角形を詰め込んでいるだけ)

2016年の高専プロコン 我々は「ピースを全部埋めること」を目指した。 完全人力は難しかったので, プログラムで解いた 1回戦, 敗者復活戦ともに敗退 しかし… 回答プログラムは役に立ちそう? せっかく作ったので, 何に使えるか考えた 我々松江高専もこのプロコンに参加していました。 ルールを見た瞬間に、大きなピースを1,2個取り除いて手で解くのが有利、分かりました。 しかし、それでは面白くないので、我々はパズルを完成させることを目指していました。 時間内に人間が解くのは難しかったので、プログラムを使って解いていました。 しかし、本番環境が分からなかったこと、スキャナにパズルが入らず精度の悪いカメラでパズルを撮影したこと、プログラムにデータを渡すまでに時間がかかったこと、本番のパズルがプログラムで解けなかったこと、が理由で1回戦・敗者復活戦ともに敗退してしまいました。 とはいえ、このとき作った回答プログラムは、本番のパズルより少し簡単なものであれば解けていました。 せっかく作ったのでもっと精度を上げたいと思っていて、開発時間を確保するために、多角形パズルの求解を研究テーマにできないだろうか?と思いました。 そこで高専プロコンが終わってから、多角形パズルを解くプログラムが何に使えるかを考えてみました。

何に応用できる? 土器の復元 (多角形パズルが解けると嬉しい)

関連研究 七金三パズルの研究 多角形詰込み問題の研究 ポリオミノパズルの研究 同じようなものは見つからなかった

七金三パズルの研究 必ず解けるが, 計算爆発! 3角形7個のパズル, 枠がない ピースの形は決まっている 辺と辺の合わせ方を探索 (ただし, 角を合わせる) (2016, 上原ら) 作れる凸多角形の全列挙(2016, 上原ら) (675秒) 七金三パズルと多角形パズルの比較: 七金三パズルは, ピースの形が固定(3角形7個)である。多角形パズルと違い, 枠穴がない。7個のピースを使って様々な形を作るのが目的。 枠穴を除いた多角形パズルの一つといえる。 研究: 七金三パズルのピースを使って作れる凸多角形を全列挙している。 手法は, 全探索。辺同士のくっつけ方を全部試している。これにより、全ピースを使って作れる多角形を全て列挙できる。列挙したものから、凸多角形だけを抽出し表示している。 七金三パズルに限らなくても同じように全列挙できる。(研究対象が七金三パズルになっているだけ。) しかし、時間がかかりすぎてしまう。(七金三パズルですら675秒かかっている) 研究(七金三パズル)の良いところ:全ピースを使って作れる多角形を全て列挙できる。時間を気にしなければ、この手法で多角形パズルが解ける。 イマイチなところ:全列挙しているので、時間がかかりすぎてしまう。10ピース以上にもなると現実的な時間で解けない。 まとめると?:時間を気にしなければ、多角形パズルだって必ず解けてしまう。でも、時間がかかりすぎる。 同じ手法で, 多角形パズルを解くと…? 必ず解けるが, 計算爆発! 画像は下記から引用 http://www.bep-shizuoka.jp/c02_00001.html, http://blogs.yahoo.co.jp/tanidr/16914025.html

多角形詰込み問題の研究 多角形パズルは, 解けない 多角形を多角形に詰め込む問題 回転を禁止した場合の近似解 (2005, 梅谷ら) タブー探索法 結果 例 多角形パズルは, 解けない 論文: 梅谷 俊治, 今堀 慎治 : 切出し・詰込み問題とその応用-(3)多角形詰込み問題-, 日本オペレーションズ・リサーチ学会論文誌, (2005).Vol.50, No.403

ポリオミノパズルの研究 多角形パズルに応用できない ピースの頂点角を90, 270°に限定し, 枠穴を長方 形にした「多角形パズル」 (2012, 村井ら) 近似解法 精度よく, 計算も速い ポリオミノパズル独特の解法っぽい 多角形パズルに応用できない 論文:村井保之, 巽久行, 徳増眞司: 位相的特徴量に基づく平面ポリオミノ箱 詰め問題の解法, 情報処理学会論文誌, Vol.43, No.12 (2012)

今回やること 高専プロコンで作ったプログラム を使って, どのくらい解けるのか 実験 多角形パズルをヒューリスティック で解く

研究対象 実物パズル 誤差対策が難しい 今回は触れない プログラムで作ったパズル 研究対象

人間ならどう解くか 人間なら「辺の一致」 「角の和」を見る 5辺一致 拡大図 結合! この考え方を実装

解法 以下のステップを繰り返す (貪欲法) ①2辺の合わせ方を全部試す→各々について結合度を 計算 ②結合度最大の合わせ方で確定 1ステップ

解法のイメージ 2辺を合わせる 結合度を計算 ①のイメージ (角と角で辺を合わせる」 2辺の合わせ方は無数にあるので… 「角と角で辺を合わせる」ようにしています (角と角で辺を合わせる」 結合度を計算

結合度(1) 2多角形を合わせたと きに得点を付ける 得点は適当 (実験で決めた) 一致辺の個数 360°角の個数 180°角の個数

結合度(2) 重なった場合は評価値を最低にした. 不正なくっつけ方に対しては最低点を返すようにし、多角形同士が重なる置き方はしないようにしました。 重なった場合は評価値を最低にした.

実験 問題一覧(1) ・適当に線を引いて作ったパズル(問題1~24) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

実験 問題一覧(2) ・適当に線を引いて作ったパズル(問題1~24) 16 17 18 19 20 21 22 23 24

実験結果(1) 紫…枠穴, 赤…ピース,赤枠は解けた問題 24問中14問解けた 1 2 3 4 5 6 7 8 9 10 11 12 13 人間のやり方を模倣 10 11 12 13 14 15

実験結果(2) 紫…枠穴, 赤…ピース,赤枠は解けた問題 24問中14問解けた 解けた問題は14問(平均ピース数:16.1) 17 18 19 20 21 22 23 24 解けた問題は14問(平均ピース数:16.1) 解けなかった問題は10問(平均ピース数:15.3)

考察 ピース数は「解ける, 解けない」と関係なさそう 凸多角形が多いと苦手? 17

実験2(知恵の板) これら3種類の7ピースパズルを解かせる ↑タングラム 動機: 単純な形のパズルがなぜか解けない。 http://sechin.blog.shinobi.jp/%E6%97%A5%E8%A8%98/%E6%99%BA %E6%81%B5%E6%9D%BF%EF%BC%88stomachion%EF%BC%89 画像URL: http://www.pdojo-onlineshop.com/SHOP/S0001.html

実験2 結果 問題 実行結果 おしい! ラッキーパズル 清少納言の板 タングラム やっぱり解けなかった

実験2 考察 なぜ解けないか? たぶん, 結合度の計算方法 が原因 凸多角形同士を合わせる と… 結合度の値に差が付きにく い

まとめ 高専プロコンで多角形パズルを知る ヒューリスティックで解いてみた ピース数10~30程度のパズルは半分くらい解けた 知恵の板は解けなかった -> 同じ長さの辺, 凸多角形が多いパズルは難しい

mct-procon/procon2016/ プログラムの公開 https://github.com/mctprocon/procon2016/ https://github.com/mctprocon/procon2016/ wiki mct-procon/procon2016/

問題作成ソフト DXライブラリ, C++で作成 線分で領域分割