決定的アルゴリズムを併用した遺伝的アルゴリズムによるピクロス解決の効率化
6
0
0
全文
(2) Vol.2016-MPS-107 No.4 2016/3/8. 情報処理学会研究報告 IPSJ SIG Technical Report 要な白マス数 n-1 とヒントの数字の和 ΣH+(n-1)である.. =exp(ax2+bx+c)の形で表現できると考え,Excel を用いて. (b)のマス数は(a)を代表するマス数 n と(a)に使用さ. 計算した結果 f(x)=exp(0.465112x2-0.865190x+1.63598). れていないマス数 x-(ΣH+(n-1))の和 n+(x-(ΣH+n-1)). を得てそれを近似関数として示した.. =x+1-ΣH である.y は(b)のマス数のうち n マスを選択す る組み合わせの数となるので,次の式が成り立つ. (1). = ݕCሺ ݔ+ 1 − ΣH, ݊ሻ. 次にピクロスの 1 行の長さが x マスであるときの y の最 大値 Y を求める.H=[0]のとき明らかに y=1 である.H=[0] 以外の全てのヒントの構成は,H=[1]より開始して,H の末. 組 み 合 わ せ の 最 大 値. 1E+210 1E+180 1E+150 1E+120 1E+90 1E+60 Y' 1E+30 近似関数. 1. 尾に新たに要素 1 を追加して H'[n+1]=1,n'=n+1 とする操. 0. 10. 作(操作 1)と,要素の内 1 つに 1 を加えて H'[i]=H[i]+1 とする操作(操作 2)を繰り返し行うことで到達すること. 図 3. 20 1辺の長さ. 30. 辺の長さと組み合わせの最大値. が出来る.w=x+1-ΣH とする.y=C(w, n)であるとき,式 (1)より,操作 1 を行うと y'=C(w-1, n+1)となり,操作. 図 2 では Y'と近似関数の 2 系列が示されているが,1 つ. 2 を行うと y'=C(w-1, n)となる.操作 1 では y と y'の大小. の曲線のように見え,高い精度で近似できている.探索空. 関係は H により異なるが,操作 2 では C(w, n)>C(w-1, n). 間のオーダーは exp(O(x2))と表せる.これは問題のサ. より y>y'が成り立つ.y の最大値 Y を求めるためには,y. イズが大きくなると探索空間が非常に急激に増加すること. が減少する操作 2 は行わず,操作 1 のみを行えばよい.図. を表し,大規模なピクロスが困難な問題であることを表す.. 2 にプログラムで操作 1 を繰り返して求めた Y とその近似 関数を示す. 組 み 合 わ せ の 最 大 値. 3. 効率的な GA のための決定的アルゴリズム. 1.E+20. 3.1 確定アルゴリズムの狙い. 1.E+16. GA を行う前にマスを確定する決定的アルゴリズム(確. 1.E+12. 定アルゴリズム)を実行し,GA を効率化するための情報. 1.E+08. を得る.マスを確定するとは,あるマスで白マスと黒マス Y 近似関数. 1.E+04 1.E+00 0 図 2. 20. 40 60 1行の長さ. 80. 100. 行の長さと組み合わせの最大値. のどちらが正解であるかを知ることである.サイズの大き い問題では探索空間も巨大であり,GA を行っても局所最 適解に陥る可能性が高いと考えられる.GA を適用する前 に,予め効率的な確定アルゴリズムの適用を行うことによ り,確定されたマスと矛盾するような黒マスの配置パター ンを生成することなく探索することができ,探索効率が向. Y が片対数グラフにおいてほぼ直線状に並んでいたこと から近似関数は f(x)=exp(ax+b) の形で表現できると 考え,表計算ソフト Excel を用いて計算した結果 ( f x)= exp. 上して局所最適解に陥る可能性が下がることが期待できる. 3.2 提案する確定アルゴリズムの実行手順 確定アルゴリズムは背理法を用いない単純な探索である.. (0.468794x-0.802390)を得てそれを近似関数として示した.. 初期状態として全ての黒マスは制約と矛盾しない全ての位. 図 1 では Y と近似関数の 2 系列が示されているが,原点付. 置を位置候補として持つ.あるマスが確定したとき,その. 近のわずかな差を除き 1 つの直線のように見え,高い精度. マスと矛盾するような位置候補があればその位置候補を除. で近似できている.. 外する.確定するマス数は問題に依存する.全てのマスが. 次に 1 行中の組み合わせの最大値 Y を元にして問題全体. 確定した場合は問題が解かれたということであるので,GA. の組み合わせの最大値 Y'を求める.ピクロスの問題は長方. を行わずに探索を終了する.未確定のマスが残っている状. 形であり,行と列の長さは同程度であるものが多い.ここ. 態で新たに確定できるマスが無い場合は,問題を解くため. では単純に行と列の長さが等しい,1 辺が x マスの正方形. に GA での探索を開始する.. の問題であるとする.x 行全てで Y 通りのパターンがある. マスが確定したときの位置候補の除外方法を示す.図 4. 場合に組み合わせの数が最大であるので,Y'=Yx である.. はヒント H=[1, 3]で 3 番目のマスが黒,6 番目のマスが白と. 図 3 に 35 マスまでの Y'とその近似関数を示す.Y の近似. 確定した例である.下部の数字は H[1], H[2]のそれぞれに 0. 関数を元にして,Y'の近似関数は f(x)=c(exp(ax+b))x. から 5 番目までの位置候補があることを表す.位置候補は. ⓒ2016 Information Processing Society of Japan. 2.
(3) Vol.2016-MPS-107 No.4 2016/3/8. 情報処理学会研究報告 IPSJ SIG Technical Report 連続する黒マスの 連続 マスの先頭の位置 位置である.例えば えば H[2]の 0 番目. が偽 偽,他のマスが のマスが真となり,論理積 論理積を求めると めると 3, 6, 7 番目. の位置は の 3, 4, 5 番目のマスが のマスが黒マスとなる マスとなることを表す す.3. のマスが真,他のマスが のマスが のマスが偽となる となる.論理和が が偽となるのは となるのは. H[2] 番目のマスが黒 番目 黒マスであることで マスであることで H[1]の の 1, 3 番目,H[2]. 全ての ての配置で白マスであったマスのみであるため マスであったマスのみであるため マスであったマスのみであるため,1 番目. の 1 番目の位置 位置は制約に反する する(連続する する黒マスの個数 個数が. のマスが白マスと のマスが マスと確定する(cc).同様にして にして論理積が真 真で. ヒントの数字を ヒントの を超える)ため ため除外される. .また 6 番目のマ のマ. あった 3, 6, 7 番目のマスのうち 番目 のマスのうち未確定であった であった 7 番目のマ のマ. スが白マスであることで スが マスであることで H[1]の H[1] 5 番目,H[2] H[2]の 1, 2, 3 番目. スが新たに黒マスと スが マスと確定する. .. の位置は矛盾するため の するため除外される される.. 4. ピクロスへの GA の適用 適用 1 3 X 1 0 1 2 3 4 5 3 0 1 2 3 4 5 図 4. 4.1 染色体と初期 初期個体 染色体 G は整数型 整数型の二重配列 二重配列で定義する する.問題の行数 行数を x, ,i 行目のヒント のヒント配列 Hi の長 長さを ni とすると G[x][ni]の の大. 位置候補 位置候補の除外の一例 一例. きさを持つ.G[i きさを ][j]の遺伝子は は Hi[j]の表す黒 黒マスの位置 位置を マスを確定する する手順を示す す.マスの確定 定は 2 段階で行 行わ. 表す す.ここで各遺伝子 各遺伝子は制約に に従う範囲で, ,図 4 に示され され. れる.第一段階 れる 第一段階はヒントのみを はヒントのみを利用してマスを してマスを確定し し,1. ているように,対応 ているように 対応する黒マスの マスの最も先頭に に近い位置を を 0. 度だけ行われる 度 われる.図 5 はヒント H=[5, 2]の の例である.各行 各行. とする.全ての初期個体 とする 初期個体は,突然変異 突然変異のアルゴリズムを のアルゴリズムを のアルゴリズムを利. 各列について制約 各列 制約を満たす範囲 範囲で,全ての ての黒マスを先頭 先頭か. 用して して行全体を変異 変異させることで させることで,制約を満 満たす範囲で で全. ら連続して配置 ら 配置した場合(a) )と,全ての黒 黒マスを末尾から から. ての遺伝子をランダムに ての をランダムに生成する する.. 連続して配置した 連続 した場合(b)を を比較する.あるマスがどちら あるマスがどちら. 4.2 評価方法. の場合でも黒マスでありそれが の マスでありそれが マスでありそれが同一のヒントの のヒントの数字に対応 対応. 個体の評価値は 個体 は,その個体の の持つマス目が が列の制約に に反. しているとき, しているとき,そのマスを黒 黒マスと確定する する(c).どちら どちら. する度合いを計算 する 計算した点数とする とする.今回の各遺伝的操作 各遺伝的操作 各遺伝的操作に. の場合でも配置 の 配置が同じであるとき じであるとき,すなわち すなわち配置が 1 通 通り. おいて個体の遺伝子 おいて 遺伝子は常に行の の制約を満たしながら たしながら変更 変更さ. のみであるときには のみであるときには,その行 行(列)の全てのマスを てのマスを得られ られ. れるので,行の制約 れるので 制約に反する度合 度合いは計算しない しない.列の の制. た 1 通りの配置 配置で白マス,黒 黒マス共に確定 確定する.. 約に に反する度合いは いは,各列の黒 黒マスの取り得 得る配置のなか のなか で, ,最も個体の持 持つ列との矛盾点 矛盾点が少ない配置 配置の点数を を,. 5 2 5 2 5 2. (a) (b) (c) 図 5. 全列で合計したものとする 全列 したものとする.この この計算による による点数は,個体 個体 の持 持つマスを自由 自由に変更して列 列の制約との矛盾 矛盾を解消する する ための最小の変更 ための 変更マス数を意味 意味する.すなわち すなわち評価値が が低 いほど適応度が高 いほど 高い優秀な個体 個体である.点数 点数が 0 である個 である. 第一段階 第一段階の確定の一例 一例. 体を を発見したとき したとき,解を発見したとみなし したとみなし探索 探索を終了する する. 第二段階はヒントと はヒントと既に確定 確定されたマスを されたマスを利用してマス してマス. 制約を満たす解が 制約 が複数ある場合 場合でも,そのうちの そのうちの 1 つを発 つを. を確定し,新たにマスが を たにマスが確定 確定されなくなるまで されなくなるまで繰り返され され. 見したとき したとき終了する する.この計算方式 計算方式は先行研究 先行研究[1]と同様 同様で. る.各行各列について る について,黒マスを マスを真,白マスを マスを偽として として,. ある. ある. 黒マスの取り得 黒 得る全ての配置 配置について同じ じ位置のマス同士 同士 で論理和と論理積 で 論理積を計算する する.. 2 3 1 2 2 2 2. 3 3 3 3. (a). 1 1 1 1. (b). 2 3 1X 図 6. (c) 第二段階 第二段階の確定の一例 一例. による計算のイメージ のイメージ 図 7 評価関数による 本研究では各列 本研究 各列の点数計算は は動的計画法で で行う.全ての ての 黒マスの マスの配置パターンを パターンを生成して して計算する場合 場合,大規模 大規模な 問題では組み合わせ 問題 わせ爆発が起こり こり長い処理時間 処理時間がかかる がかかる.. 図 6 はヒント H=[2, 3, 1]で で 3 番目と 6 番目が黒マスと 番目 マスと確 定している例である 定 である(a).確定 確定しているマスに しているマスに矛盾しない しない 配置の全て(b) 配置 )について,論理和 論理和を求めると めると 1 番目のマス のマス. ⓒ2016 ⓒ Information Processing Society of Japan. 動的計画法では, 動的計画法 ,組み合わせを わせを細分化して段階的 段階的に解くこ くこ とにより多項式時間 とにより多項式時間で処理することができる することができる. することができる 図 8 は動的計画法 動的計画法による計算 計算の様子を表 表した例である である.. 3.
(4) Vol.2016-MPS-107 No.4 2016/3/8. 情報処理学会研究報告 IPSJ SIG Technical Report 上部の 上部 1 行はこれより はこれより評価するある するある個体の の持つ列と,その その. し, ,ルーレット選択 選択には適応度 適応度の高さが選択 選択される確率 確率に. 列のヒント 列 H である(説明 説明のため転置してある してある).列の の長. 直接影響するという 直接影響するという特徴があるが があるが,トーナメント トーナメント選択では では. さ x=10,H の長 長さ n=2 である. である. 個体群中での順位 個体群中 順位が同じであれば じであれば選択される される確率は変わら わら ない.今回は評価値 ない 評価値が低いほど いほど適応度が高いことを いことを表す す評 価関数であるので 価関数であるので,最も評価値 評価値の低い個体を を選択する. . 4.4 交叉 交叉では二点交叉 交叉 二点交叉を用いる. .二点交叉では では 2 個体を選択 選択 し, ,ランダムに決定 決定された始点 始点と終点の間の の連続する遺伝 遺伝 子を を交換して新たな たな 2 個体とする とする.行方向の の制約と矛盾 矛盾し ないように,今回 ないように 今回はランダムな ランダムな数行を交換する する.先行研究 先行研究 [1]では では一点交叉が が用いられているが いられているが,交叉のパターンが のパターンが のパターンが一 点交叉より多く個体群 点交叉 個体群の多様性 多様性が保たれると たれると考え,今回 今回は 二点交叉を採用した 二点交叉 した.. 図 8. 動的計画法 動的計画法による評価計算 評価計算の例 入れ替 替える. 図 8 のグラフは n(x+1-ΣH) )=8 個のノード のノード(楕円)とダミ とダミ ーのノード(点線 ーのノード 点線の円)からなるグラフである からなるグラフである.ダミーの からなるグラフである ダミーの ノードは左上のものが ノードは のものが先頭を を,右下のものが のものが末尾を表す す. このグラフで先頭 このグラフで先頭ノードから ノードから右か下に進み み,末尾ノードに ノードに. 図 9. 二点交叉 二点交叉の様子. 到達する経路 到達 1 つが黒マスを マスを配置するパターン するパターン 1 つに対応 対応 し,最も点数の し の低い経路(最短経路 最短経路)を探索 探索することが することが最. 4.5 候補情報を利用 利用する突然変異 突然変異. も点数の低い配置 も 配置を探索することに することに対応する する.最短経路 最短経路の. 各個体の各行につ 各個体 について変異判定 変異判定を行い,突然変異率 突然変異率 r の. 点数がその列の 点数 の点数となる. .i 行 j 列のノードを のノードを通ることは ることは. 確率で,対象の行 確率 行で突然変異を を行う.突然変異 突然変異は二分探索 二分探索. H[i]の表す黒マスを H[ マスを j-1 番目の位置に置くと 番目 くと想定すること すること. 法に に似た動作で, ,ランダムに始点 始点 s と終点 終点 t を決定し, ,中. を表す.ノード を ノード中のマスは, ,想定される黒 黒マスと同じ位置 位置. 間点 m=(s+t)/2 /2 の遺伝子 g[m m]を位置候補からランダムに からランダムに. の,個体が持つマスである の つマスである. .そのマスに白 白マスが含まれて まれて. 決定して, 決定 他の遺伝子 遺伝子を再帰的 再帰的に決定する. .図 10 は遺伝子 遺伝子. いる場合は制約 いる 制約に反するので するので白マスの数だけ だけ点数が追加 追加さ. g[1]から g[1] g[6]までの までの突然変異を を行う様子を表 表す例であり, ,8. れる.経路上のマスを れる のマスを通ることは ることは白マスを マスを置くと想定する する. 番目のマスが白マスと 番目 マスと確定している している.灰色マスは マスは位置候補 位置候補. ことを表す.経路上 こと 経路上のマスは のマスは,想定される される白マスと同じ じ位. を表 表し,黒マスは マスは位置候補のうち のうち選択されたマスを されたマスを表す す.. 置の,個体が持 置 持つマスである つマスである.そのマスが そのマスが黒マスである マスである場. 始めに めに g[3]を決定 決定し,制約に従 従って g[1]と と g[5]の選択可能 選択可能. 合は制約に反するので 合 するので 1 点追加する. 点追加. なマスを減らす. なマスを .次に g[1]の の位置を決定し し,g[2]の選択可 選択可. まず H[1]を配置 配置する 4 通りについてそれぞれの りについてそれぞれの点数を りについてそれぞれの を計. 能なマスを なマスを減らして らして g[2]の位置 位置を決定する する.同様にして にして. 算する.図中の 算 の矢印は通った った経路を表す. .次に H[2]を配置 配置. g[5], g[4], g[6]の順 g[6] 順で位置を決定 決定する.単純に に先頭の遺伝子 遺伝子. する 4 通りについて りについて,経由すると すると最短となる となる H[1]の位置 位置と. より順に位置候補 より 位置候補から等確率で で決定した場合 場合には,黒マス マス. その経路の点数 その 点数を計算する. .次に末尾ノードへ ノードへ行くまでに くまでに. が末尾 末尾に偏りやすい りやすい(選択する する位置により以降 以降に決定する する. 経由すると最短 経由 最短となるノードとその となるノードとその経路の の点数を計算する する.. 遺伝子の組み合わせの 遺伝子 わせの数が異なる なる)ため,偏 偏りの少ないよ ないよ. 最後に「どの配置 最後 配置を経由すれば すれば最短となるか となるか」を末尾ノー ノー. う中間 中間から決定する する仕様にした にした.. ドから逆算して ドから して最短経路を得 得る.太い矢印 矢印が最終的な最短 最短 経路を表す. 経路 4.3 選択方法 選択にはトーナメント にはトーナメント選択 選択を用いる.トーナメント トーナメント選択 選択 では個体群からあらかじめ では からあらかじめ決 決められた数( (サイズ)の個体 個体 を等確率で選び を び出し,その中 中で最も適応度 適応度の高い個体を を選 択個体とする. 択個体 .先行研究[1]ではルーレット ではルーレット選択が用いられ ではルーレット いられ ているが,サイズを ているが サイズを変更することに することにより動作 動作を変更できる できる 特徴に注目して 特徴 して今回はトーナメント はトーナメント選択を を採用した.ただ ただ. ⓒ2016 ⓒ Information Processing Society of Japan. 図 10. 突然変異 突然変異の一例. 4.
(5) Vol.2016-MPS-107 No.4 2016/3/8. 情報処理学会研究報告 IPSJ SIG Technical Report. GA1 ではほぼ全ての問題で正解数が 0 である.GA2 では. 4.6 大規模突然変異 一定世代の間(世代間隔)に最良評価値の更新が無かっ. 確定マス数が 200 以下の問題ではほぼ全ての問題で GA1. た場合,個体群が局所最適解に陥っていると想定し,それ. と同様に正解数が 0 であるが,正解している場合も見られ,. を抜け出すことを目的として大規模突然変異を行う.大規. 確定マス数が 200 以上の問題では正解する場合が多くなる.. 模突然変異では各個体の各行について変異判定を行い,突. また,確定マス数が多いほど正解数も多い傾向がある.. 然変異率より高い確率で,初期個体生成と同様にして対象 の行の遺伝子を再生成する.. 生成された問題の例を示す.図 13 は 47 マスが確定する 問題で,正解数は GA1,GA2 共に 0 であった.図 14 は 393 マスが確定する問題で,遺伝子の初期値を変えて 20 回実行 した結果正解数は GA1 では 0,GA2 では 20 であった.. 5. 評価実験 5.1 実験内容 先行研究[1]のマスの確定法を用いる GA(GA1)と本研 究で提案する GA(GA2)で,20×20 の問題 1 つにつき 20 回ずつ探索を行い正解数を計る.これを 50 種類の問題につ いて行う.20×20 の問題は,10 種類の 10×10 の問題の中 から重複を許してランダムに 4 つ選択し,それらを互いに 隣接させて生成する.図 11 は用意した 10×10 の問題の一 部であり,左の問題は人工衛星,右の問題はさくらんぼの イラストである.確定アルゴリズムによって全てのマスが 確定される問題が生成された場合は問題を再生成する.各 種パラメーターは個体数 3000,打ち切り世代 300,トーナ メントサイズ 4,突然変異率 2.5%,大規模突然変異の世代 間隔 10,変異率 0.5 とする.. 図 11. 図 13. 確定マス数が少ない問題の一例. 10×10 の問題例. 5.2 実験結果 図 12 に確定アルゴリズムによって確定したマス数と,実 行した 2 種類の GA の正解数を示す.. 図 14. 20. 確定マス数が多い問題の一例. 6. 考察. 15 正 解 10 数 5. 確定マス数が 200 以上の多くの問題で GA2 の正解数が. GA1 GA2. GA1 の正解数を大きく超えていることから,提案したマス の確定が GA の探索精度を向上させたと考えられ,提案手 法は有効であったと考えられる.一方,確定マス数が 200 以下の問題での GA2 の正解数は GA1 の正解数と並びほぼ. 0 0. 100. 200. 300. 確定マス数 図 12. 確定マス数と正解数. ⓒ2016 Information Processing Society of Japan. 400. 全て 0 であり,探索精度の向上が十分でないと考えられる. この理由の一つに考えられるのは,確定したマスと矛盾し ない個体のみを生成すべきであるのに,実際には矛盾する. 5.
(6) 情報処理学会研究報告 IPSJ SIG Technical Report. Vol.2016-MPS-107 No.4 2016/3/8. 個体も生成されることである.具体的には,あるマスが黒 マスであると確定している場合でも,そのマスが白マスで ある個体が生成されることがある.確定したマスと矛盾す る位置候補を除外するという今回の仕様では,黒マスであ ると確定しているマスは遺伝子の位置候補には残るが,位 置候補からどの位置が選択されるかはランダムであるため である.確定したマスと矛盾しない個体のみを生成するた めには,位置を決定する際に位置候補の情報と共に,確定 している黒マスの情報も利用しなければならない. また, 確定マス数が少ないほど除外される位置候補も少ないため, 探索精度の向上率も低くなってしまう.この問題に対処す る方法として,確定マス数が少ない問題ほど困難な問題で あると捉え,より多くの個体を用いる探索を行うなどが考 えられ,今後調査を行う必要がある.. 7. むすび 本研究では,大規模ピクロス解法の探索精度の向上と処 理時間の短縮のための遺伝的操作の提案と GA が効率的に 動作するための決定的アルゴリズムを併用する手法を提案 した.評価実験ではランダムに生成した 20×20 の問題を 50 種類用いて単純にマスの確定法を行う GA と提案するマ スの確定法を行う GA による確定したマス数ごとの正解数 を比較した.結果,提案する決定的アルゴリズムが有効に 作用して探索空間の減少に成功した場合,GA の探索精度 を大きく向上できる可能性を示した.. 参考文献 助川隆俊, 佐藤裕二 "大規模ピクロスへの部分解を利用した GA の適用方法の検討", 情報処理学会第 77 回全国大会講演論 文集, pp 261-263, 2015 年 [2] 鈴木礼智, 渡邊 俊彦 "異なる探索法と移住個体の選択を用 いた DGA のイラストロジック問題への適用", BMFSA2005 論 文集, pp117-120, 2005 年 [3] Jinn-Tsong Tsai, "Solving Japanese nonograms by Taguchi-based genetic algorithm", Applied Intelligence Volume 37, Issue 3 , pp 405-419, 2012 年. [1]. ⓒ2016 Information Processing Society of Japan. 6.
(7)
関連したドキュメント
・逆解析は,GA(遺伝的アルゴリズム)を用い,パラメータは,個体数 20,世 代数 100,交叉確率 0.75,突然変異率は
(自分で感じられ得る[もの])という用例は注目に値する(脚注 24 ).接頭辞の sam は「正しい」と
遠くに住んでいる、家に入られることに抵抗感があるなどの 療養中の子どもへの直接支援の難しさを、 IT という手段を使えば
累積ルールがない場合には、日本の付加価値が 30% であるため「付加価値 55% 」を満たせないが、完全累 積制度があれば、 EU で生産された部品が EU
性」原則があげられている〔政策評価法第 3 条第 1
概念と価値が芸術を作る過程を通して 改められ、修正され、あるいは再確認
神はこのように隠れておられるので、神は隠 れていると言わない宗教はどれも正しくな
労働者の主体性を回復する, あるいは客体的地位から主体的地位へ労働者を