(57)【特許請求の範囲】
【請求項１】
評価対象データ群を取得する取得部と、
前記評価対象データ群の各評価対象データについて、前記評価対象データ内の特徴に基づく評価対象データの評価値を算出する第１の算出部と、
前記各評価対象データについて、前記評価対象データ外の特徴群の中から選択された前記評価対象データ外の特徴に基づく前記評価対象データの評価値を算出する第２の算出部と、
前記各評価対象データについて、前記第１および第２の算出部によって算出された評価値に基づく前記評価対象データの総合評価値を算出する第３の算出部と、
前記第３の算出部によって算出された前記各評価対象データの総合評価値群が所定のしきい値以上の総合評価値群に収束したか否かを判断する判断部と、
前記判断部によって収束したと判断された場合、前記所定のしきい値以上の総合評価値群に対応する評価対象データ群を探索解に決定する決定部と、
前記決定部によって決定された探索解を出力する出力部と、
前記判断部によって収束していないと判断された場合、遺伝的アルゴリズムにより前記評価対象データ群から次世代の評価対象データ群を生成する生成部と、を有し、
前記第１の算出部は、
前記生成部によって生成された前記次世代の評価対象データ群の次世代の各評価対象データについて、次世代の評価対象データ内の特徴に基づく次世代の評価対象データの評価値を算出し、
前記第２の算出部は、
次世代の各評価対象データについて、前記特徴群の中から選択された次世代の評価対象データ外の特徴に基づく次世代の評価対象データの評価値を算出し、
前記第３の算出部は、
次世代の各評価対象データについて、前記第１および第２の算出部によって算出された評価値に基づく次世代の評価対象データの総合評価値を算出し、
前記判断部は、
前記第３の算出部によって算出された次世代の各評価対象データの総合評価値群が所定のしきい値以上の総合評価値群に収束したか否かを判断することを特徴とする探索装置。
【請求項２】
前記第２の算出部は、
前記各評価対象データについて、前記評価対象データには存在しない外的要因を与えたシミュレーションにより前記各評価対象データの評価値を算出することを特徴とする請求項１に記載の探索装置。
【請求項３】
所定の探索時間が経過したか否かを検出する検出部を有し、
前記決定部は、
前記検出部によって前記所定の探索時間の経過が検出された場合、前記判断部による判断対象となった評価対象データ群を探索解に決定することを特徴とする請求項１または２に記載の探索装置。
【請求項４】
コンピュータが、
評価対象データ群を取得し、
前記評価対象データ群の各評価対象データについて、前記評価対象データ内の特徴に基づく評価対象データの第１の評価値を算出し、
前記各評価対象データについて、前記評価対象データ外の特徴群の中から選択された前記評価対象データ外の特徴に基づく前記評価対象データの第２の評価値を算出し、
前記各評価対象データについて、算出された第１および第２の評価値に基づく前記評価対象データの総合評価値を算出し、
算出された前記各評価対象データの総合評価値群が所定のしきい値以上の総合評価値群に収束したか否かを判断し、
収束したと判断された場合、前記所定のしきい値以上の総合評価値群に対応する評価対象データ群を探索解に決定し、
決定された探索解を出力し、
収束していないと判断された場合、遺伝的アルゴリズムにより前記評価対象データ群から次世代の評価対象データ群を生成する
処理を実行し、
前記第１の評価値を算出する処理は、
生成された前記次世代の評価対象データ群の次世代の各評価対象データについて、次世代の評価対象データ内の特徴に基づく次世代の評価対象データの第１の評価値を算出し、
前記第２の評価値を算出する処理は、
次世代の各評価対象データについて、前記特徴群の中から選択された次世代の評価対象データ外の特徴に基づく次世代の評価対象データの第２の評価値を算出し、
前記総合評価値を算出する処理は、
次世代の各評価対象データについて、算出された第１および第２の評価値に基づく次世代の評価対象データの総合評価値を算出し、
前記判断する処理は、
算出された次世代の各評価対象データの総合評価値群が所定のしきい値以上の総合評価値群に収束したか否かを判断することを特徴とする探索方法。
【請求項５】
コンピュータに、
評価対象データ群を取得し、
前記評価対象データ群の各評価対象データについて、前記評価対象データ内の特徴に基づく評価対象データの第１の評価値を算出し、
前記各評価対象データについて、前記評価対象データ外の特徴群の中から選択された前記評価対象データ外の特徴に基づく前記評価対象データの第２の評価値を算出し、
前記各評価対象データについて、算出された第１および第２の評価値に基づく前記評価対象データの総合評価値を算出し、
算出された前記各評価対象データの総合評価値群が所定のしきい値以上の総合評価値群に収束したか否かを判断し、
収束したと判断された場合、前記所定のしきい値以上の総合評価値群に対応する評価対象データ群を探索解に決定し、
決定された探索解を出力し、
収束していないと判断された場合、遺伝的アルゴリズムにより前記評価対象データ群から次世代の評価対象データ群を生成する、
処理を実行させ、
前記第１の評価値を算出する処理は、
生成された前記次世代の評価対象データ群の次世代の各評価対象データについて、次世代の評価対象データ内の特徴に基づく次世代の評価対象データの第１の評価値を算出し、
前記第２の評価値を算出する処理は、
次世代の各評価対象データについて、前記特徴群の中から選択された次世代の評価対象データ外の特徴に基づく次世代の評価対象データの第２の評価値を算出し、
前記総合評価値を算出する処理は、
次世代の各評価対象データについて、算出された第１および第２の評価値に基づく次世代の評価対象データの総合評価値を算出し、
前記判断する処理は、
算出された次世代の各評価対象データの総合評価値群が所定のしきい値以上の総合評価値群に収束したか否かを判断することを特徴とする探索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、探索装置、探索方法、および探索プログラムに関する。
【背景技術】
【０００２】
従来例１として、職場配置システムがある（下記特許文献１を参照。）。従来例１は、初期集団の各遺伝子に対して適応度を計算し、適応度に応じて親と成る遺伝子を選択し、さらに交叉及び突然変異を終了条件として与えられた世代数繰り返し、適応度の高い職場配置を持つ遺伝子を淘汰で得る。
【０００３】
また、従来例２として、プラントのレイアウト設計支援方法がある（下記特許文献２を参照。）。従来例２は、配置される機器の種類や位置、機器の点検すべき箇所や点検項目、建物の床や階段の配置に関する情報により、プラント内を巡回する経路を計算し、経路を元に、機器、床のデータの配置を更新する。
【０００４】
また、従来例３として、設計支援システムがある（下記特許文献３を参照。）。従来例３は、入力された客動線の長さ、通過密度、立寄率、購入率などのデータを分析し、分析結果に基づいてゴンドラの配置、ゾーニング、売場スペースを診断、表示して売場配置シミュレーションに必要な情報を提供する。
【０００５】
また、従来例４として、遺伝的アルゴリズムを用いたレイアウト設計がある（下記非特許文献１を参照。）。従来例４は、制約条件としてペナルティとなる確実情報が考慮されている。たとえば、家具が室内に収まっていない、ドアがふさがれている、コンセントを必要とする家具はプラグの近くに配置されていない、壁側に配置する必要のある家具が壁際に配置されていないなどが制約条件として挙げられる。そして、従来例４は、家具の配置を染色体表現し、遺伝的アルゴリズムにより良解を探索し、収束した時点での配置を採用する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１０−３０７８７０号公報
【特許文献２】特開２００７−２６０８５号公報
【特許文献３】特開平８−１６６９７４号公報
【非特許文献】
【０００７】
【非特許文献１】清水美樹著  遺伝的アルゴリズムを用いた室内レイアウトシステム、情報処理学会第６２回全国大会  ８Ｋ−０２（２００１）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来例１は、あらかじめ決められた職場間の関連度となる確実情報のみを用いており、タスクの発生頻度や従業員の部門間行動といった不確実な情報を用いた探索をすることができない。また、従来例２は、あらかじめ決められた経路間距離と標準化作業となる確実情報のみを用いており、作業者の能力や点検時間の変化といった不確実情報を用いた探索をすることができない。
【０００９】
また、従来例３は、人間が目で見て修正を行うため、メタヒューリスティクスのような発見的手法を用いてはおらず、人間が納得した時点で解探索は終了してしまい、客観的な解を得ることができない。また、従来例４も家具の配置といった確実情報のみを用いており、不確実な情報を用いた探索をすることができない。
【００１０】
一方、配置オブジェクト間の関連度が良いレイアウトでも、来店客数や来店客の目的、従業員能力などの不確実な要因により、待ち時間が増大する可能性もある。そのため、不確実の要因を考慮することで、長蛇の列ができたり、サービス提供時間が長くなるといったリスクを排除したレイアウト設計が必要である。
【００１１】
このため、従来例１〜４において不確実性を考慮する場合、シミュレータは、顧客人数や従業員の作業習熟度を変化させた模擬実験を、確実情報で得られたレイアウトに対して繰り返し行うことになる。しかしながら、確実情報により評価が高かったレイアウトが、不確実性を考慮すると低い評価になる場合がある。また、確実情報で得られたレイアウトよりも評価が高いレイアウトが探索される場合もある。
【００１２】
これに対し、確実情報を用いた探索を行わず、全通りのレイアウトで全パターンの不確実性を用いて模擬試験をすると、レイアウト数が絞りきれていないため現実時間では対応しきれないという問題がある。また、模擬試験をしたとしても、評価が低いレイアウトを探索しても採用されないため、無駄になるという問題がある。
【００１３】
本発明は、解探索の効率化と高精度化を図ることを目的とする。
【課題を解決するための手段】
【００１４】
本発明の一側面によれば、評価対象データ群を取得し、前記評価対象データ群の各評価対象データについて、前記評価対象データ内の特徴に基づく評価対象データの評価値を算出し、前記各評価対象データについて、前記評価対象データ外の特徴に基づく前記評価対象データの評価値を算出し、前記各評価対象データについて、算出された評価値に基づく前記評価対象データの総合評価値を算出し、算出された前記各評価対象データの総合評価値群が所定のしきい値以上の総合評価値群に収束したか否かを判断し、収束したと判断された場合、前記所定のしきい値以上の総合評価値群に対応する評価対象データ群を探索解に決定し、決定された探索解を出力する探索装置、探索方法、および探索プログラムが提案される。
【発明の効果】
【００１５】
本発明の一側面によれば、解探索の効率化と高精度化を図ることができるという効果を奏する。
【図面の簡単な説明】
【００１６】
【図１】図１は、本実施の形態にかかる探索例を示す説明図である。
【図２】図２は、本実施の形態での総合評価例を示す説明図である。
【図３】図３は、染色体データの一例を示す説明図である。
【図４】図４は、図３に示した染色体データによる交叉例を示す説明図である。
【図５】図５は、図３に示した染色体データによる突然変異例を示す説明図である。
【図６】図６は、実施の形態にかかる探索装置のハードウェア構成例を示すブロック図である。
【図７】図７は、関連度テーブルの記憶内容の一例を示す説明図である。
【図８】図８は、ペナルティテーブルの記憶内容の一例を示す説明図である。
【図９】図９は、仮想顧客情報ＤＢ（Ｄａｔａ  Ｂａｓｅ）の記憶内容の一例を示す説明図である。
【図１０】図１０は、探索装置の機能的構成例を示すブロック図である。
【図１１】図１１は、評価値ｇｉｊの算出例を示す説明図である。
【図１２】図１２は、探索装置による探索処理手順例を示すフローチャートである。
【図１３】図１３は、図１２に示した初期集団生成処理（ステップＳ１２０１）の詳細な処理手順例を示すフローチャートである。
【図１４】図１４は、図１２に示した総合評価値算出処理（ステップＳ１２０４）の詳細な処理手順例を示すフローチャートである。
【発明を実施するための形態】
【００１７】
本実施の形態は、確実情報で絞り込まれた解に対して不確実情報を適用する場合に生じる評価誤りや良解の見落とし、確実情報で絞り込まずに各々の評価対象に対して不確実情報を適用する場合に生じる探索時間の長期化を防止する。これにより、解探索の効率的かつ高精度化が実現される。以下に添付図面を参照して、実施の形態にかかる探索装置、探索方法、および探索プログラムを詳細に説明する。
【００１８】
＜探索例＞
図１は、本実施の形態にかかる探索例を示す説明図である。評価対象データ群Ｖｉは、第ｉ世代の評価対象データの集合である。ｉ＝１、すなわち、第１世代の場合は、全評価対象データから選ばれたｎ個（ｎ＞１）の評価対象データである。評価対象データとは、組合せ最適化問題について遺伝的アルゴリズムに代表されるメタヒューリスティクスを用いた探索により評価されるデータである。
【００１９】
組合せ最適化問題としては、たとえば、店舗などのレイアウト設計や業務のシフト作成が挙げられる。また、評価対象データとしては、レイアウト設計の場合はレイアウト案であり、業務のシフト作成の場合はシフト案である。
【００２０】
（Ａ）探索装置は、評価対象データ群Ｖｉに対し、確実情報での評価をおこなう。確実情報とは、解探索者が事前に決めることができる情報であり、確実情報により評価対象データが特徴付けられる。たとえば、レイアウト案の場合は、レイアウトに配置する棚の大きさや棚と棚との相対的な配置関係である。探索装置は、評価対象データ群Ｖｉに関する評価値群ｖｉ（ｆ）＝｛ｆｉ（１），ｆｉ（２），…，ｆｉ（ｎ）｝を算出する。ｎ個の評価値ｆｉ（１），ｆｉ（２），…，ｆｉ（ｎ）は、それぞれ評価対象データに対応する評価値である。なお、評価値群ｖｉ（ｆ）の中の任意の評価値を「ｆｉ」と表記する。
【００２１】
評価値ｆｉは、たとえば、遺伝的アルゴリズムでいう染色体データから得られる値である。なお、染色体データは評価対象データから求められる評価対象データの特徴を示すデータである。たとえば、レイアウトの場合、机や棚ごとに、その識別子とその配置位置の組み合わせが染色体データを構成する遺伝子座となる。評価値ｆｉは、たとえば、上述した従来例１〜４を用いて算出される。
【００２２】
（Ｂ）また、探索装置は、不確実情報群Ｕから不確実情報ｕｊを選択し、選択した不確実情報ｕｊを用いて、評価対象データ群Ｖｉに対し評価をおこなう。不確実情報群Ｕとは、ｍ個（ｍ≧１）の不確実情報ｕｊ（１≦ｊ≦ｍ）の集合である。また、不確実情報ｕｊとは、解探索者が事前に決めることができる情報である。たとえば、レイアウトの場合、来店顧客人数や客層、来店者の移動速度、何を購入したいかといった来店者の目的、またはこれらの組み合わせなどが挙げられる。探索装置は、評価対象データ群Ｖｉに関する評価値群ｖｉ（ｇ）＝｛ｇｉｊ（１），ｇｉｊ（２），…，ｇｉｊ（ｎ）｝を算出する。ｎ個の評価値ｇｉｊ（１），ｇｉｊ（２），…，ｇｉｊ（ｎ）は、それぞれ評価対象データに対応する評価値である。なお、評価値群ｖｉ（ｇ）の中の任意の評価値を「ｇｉｊ」と表記する。
【００２３】
評価値ｇｉｊは、たとえば、遺伝的アルゴリズムでいう染色体データから得られる値である。なお、染色体データは評価対象データから求められる評価対象データの特徴を示すデータである。たとえば、レイアウトの場合、机や棚ごとに、その識別子とその配置位置の組み合わせが染色体データを構成する遺伝子座となる。評価値ｇｉｊは、たとえば、下記参考文献１，２を用いて算出される。
【００２４】
（参考文献１）
柳澤大地、友枝明保、木村紋子、西成活裕著、「歩行距離を考慮した待ち行列理論による待ち行列システムの解析」、日本応用数理学会論文誌Ｖｏｌ．１８，Ｎｏ．４，２００８，ｐｐ．５０７〜５３４
（参考文献２）
岸本有之、高橋徹、高橋雅和、山田隆志、津田和彦、寺野隆雄、「エージェント・シミュレーションによる店舗内顧客行動と販売促進策の分析」、社団法人  情報処理学会  研究報告  ２００９−ＩＣＳ−１５４（１６）  ２００９年３月３日
【００２５】
（Ｃ）上記（Ａ），（Ｂ）でそれぞれ評価値群ｖｉ（ｆ），ｖｉ（ｇ）が得られたため、探索装置は、総合評価値群ｖｉ（ｈ）＝｛ｈｉ（１），ｈｉ（２），…，ｈｉｊ（ｎ）｝を算出する。総合評価値群ｖｉ（ｈ）とは、評価値群ｖｉ（ｆ），ｖｉ（ｇ）をまとめた評価値群である。総合評価値群ｖｉ（ｈ）内の各評価値ｈｉは、たとえば、同一レイアウトに対する評価値ｆｉとｇｉｊとの和である。
【００２６】
図２は、本実施の形態での総合評価例を示す説明図である。図２において、（Ａ）は評価対象データＬｉ（１）〜Ｌｉ（ｎ）および対応する評価値ｆｉを示している。（Ｂ）は評価対象データＬｉ（１）〜Ｌｉ（ｎ）および対応する評価値ｇｉｊを示している。（Ｃ）は、評価値ｆｉと評価値ｇｉｊとをまとめる例として評価値ｆｉと評価値ｇｉｊとの和を示している。これにより、（Ｄ）に示したように、探索装置は、評価対象データごとに、総合評価値ｈｉを得ることができる。
【００２７】
図１に戻り、（Ｄ）〜（Ｇ）は、遺伝的アルゴリズムによる処理を示している。（Ｄ）は、総合評価値群ｖｉ（ｈ）のうち総合評価値が低いｎｂ個（＝ｎ−ｎａ）の評価値を淘汰する処理である。（Ｅ）は、総合評価値群ｖｉ（ｈ）の上位ｎｂ個を複製して、淘汰した個数分を補填する処理である。（Ｆ）は、（Ｄ）と（Ｅ）で選択、複製された評価対データを統合する処理である．（Ｇ）は（Ｆ）の評価対象データ群に対して交叉や突然変異をおこなう処理である。
【００２８】
交叉、突然変異の後に得られた評価対象データ群を次世代（ｉ＝ｉ＋１）の評価対象データ群Ｖｉとする。探索装置は、総合評価値群ｖｉ（ｈ）が収束するまで、この次世代の評価対象データ群Ｖｉが得られる都度、（Ａ）〜（Ｇ）を繰り返す。
【００２９】
これにより、探索装置は、確実情報で絞り込まれた解に対して不確実情報を適用する場合に生じる評価誤りや良解の見落としの低減化を図ることができる。これにより、確実情報のみで絞り込まれた解に比べて良解を得ることができる。また、探索装置は、確実情報での絞り込みをおこなっているため、探索時間の短縮化を図ることができる。
【００３０】
＜染色体データの一例＞
図３は、染色体データの一例を示す説明図である。（Ａ）は、机や棚などのオブジェクトが配置される領域Ｒの区分を示している。領域Ｒはレイアウト可能な領域であり、図３では例として９分割されている。（Ｂ）は、ある評価対象データとなる領域Ｒ内のレイアウトである。領域Ｒ内のＡ〜Ｊは、机や棚などのオブジェクトである。（Ｃ）は、（Ｂ）のレイアウトを示す染色体データである。染色体データにおける各遺伝子座は、オブジェクトの識別子（Ａ〜Ｌ）と領域Ｒの区分番号（１〜９）の組み合わせである。たとえば、左端の遺伝子座は、｛Ａ，４｝であり、（Ｂ）に示したオブジェクトＡが（Ａ）に示した区分４に配置されていることを示している。
【００３１】
図４は、図３に示した染色体データによる交叉例を示す説明図である。（Ａ）において、左端の遺伝子座Ａと左から３番目の遺伝子座Ｃの区分番号が入れ替わっている。したがって、交叉後のレイアウトは、（Ｂ）のようになる。（Ｂ）では、オブジェクトＡが区分番号２の領域内に配置され、オブジェクトＣが区分番号４の領域に配置されている。
【００３２】
図５は、図３に示した染色体データによる突然変異例を示す説明図である。（Ａ）において、左端の遺伝子座Ａで突然変異により、区分番号が４から５に変更されている。したがって、突然変異後のレイアウトは、（Ｂ）のようになる。（Ｂ）では、オブジェクトＡが区分番号５の領域内に配置されている。
【００３３】
＜探索装置のハードウェア構成例＞
図６は、実施の形態にかかる探索装置のハードウェア構成例を示すブロック図である。図６において、探索装置は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）６０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）６０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）６０３と、磁気ディスクドライブ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）６０４と、磁気ディスク６０５と、光ディスクドライブ６０６と、光ディスク６０７と、ディスプレイ６０８と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）６０９と、キーボード６１０と、マウス６１１と、スキャナ６１２と、プリンタ６１３と、を備えている。また、各構成部はバス６００によってそれぞれ接続されている。
【００３４】
ここで、ＣＰＵ６０１は、探索装置の全体の制御を司る。ＲＯＭ６０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ６０３は、ＣＰＵ６０１のワークエリアとして使用される。磁気ディスクドライブ６０４は、ＣＰＵ６０１の制御にしたがって磁気ディスク６０５に対するデータのリード／ライトを制御する。磁気ディスク６０５は、磁気ディスクドライブ６０４の制御で書き込まれたデータを記憶する。
【００３５】
光ディスクドライブ６０６は、ＣＰＵ６０１の制御にしたがって光ディスク６０７に対するデータのリード／ライトを制御する。光ディスク６０７は、光ディスクドライブ６０６の制御で書き込まれたデータを記憶したり、光ディスク６０７に記憶されたデータをコンピュータに読み取らせたりする。
【００３６】
ディスプレイ６０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ６０８は、たとえば、液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００３７】
インターフェース（以下、「Ｉ／Ｆ」と略する。）６０９は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク６１４に接続され、このネットワーク６１４を介して他の装置に接続される。そして、Ｉ／Ｆ６０９は、ネットワーク６１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ６０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００３８】
キーボード６１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス６１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００３９】
スキャナ６１２は、画像を光学的に読み取り、探索装置内に画像データを取り込む。なお、スキャナ６１２は、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を持たせてもよい。また、プリンタ６１３は、画像データや文書データを印刷する。プリンタ６１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。なお、光ディスクドライブ６０６、光ディスク６０７、ディスプレイ６０８、キーボード６１０、マウス６１１、スキャナ６１２、およびプリンタ６１３の少なくともいずれか１つは、なくてもよい。
【００４０】
＜データベース、テーブルの一例＞
図７は、関連度テーブルの記憶内容の一例を示す説明図である。関連度テーブル７００とは、２つのオブジェクトが隣接配置された場合の関連性の度合いを示す関連度を記憶するテーブルである。図７では、関連度の値が高いほど良い組み合わせであることを示している。探索装置は、各レイアウトについて、レイアウト内のオブジェクトごとに関連度を求める。関連度の総和が高いほど、そのレイアウトの評価値ｆｉが高くなる。
【００４１】
図８は、ペナルティテーブルの記憶内容の一例を示す説明図である。ペナルティテーブル８００とは、レイアウトにおいてオブジェクトが該当してはいけない配置条件を記憶するテーブルである。該当する場合には、評価値ｆｉが低下することになる。関連度テーブル７００およびペナルティテーブル８００は、上述した確実情報に相当する。
【００４２】
図９は、仮想顧客情報ＤＢ（Ｄａｔａ  Ｂａｓｅ）の記憶内容の一例を示す説明図である。仮想顧客情報ＤＢ９００は、仮想顧客情報を記憶するデータベースである。仮想顧客情報とは、想定される顧客の情報であり、図９では、例として、顧客ＩＤごとに、年代、性別、職業、移動速度、特性といった属性情報を有している。探索装置は、どれだけの人数のどの客層の顧客をレイアウトの店舗内に入店させるか、といった場合に、仮想顧客情報ＤＢ９００から該当する仮想顧客情報を抽出する。
【００４３】
そして、探索装置は、上述した参考文献１，２の技術に、抽出した顧客情報や探索時間を与えてシミュレーションをおこなうことで、レイアウトごとに、評価値ｇｉｊを得る。仮想顧客情報ＤＢ９００内の仮想顧客情報の選択方法および選択された仮想顧客情報は、上述した不確実情報に相当する。
【００４４】
＜探索装置の機能的構成例＞
図１０は、探索装置の機能的構成例を示すブロック図である。探索装置は、取得部１０００と、第１の算出部１００１と、第２の算出部１００２と、第３の算出部１００３と、判断部１００４と、生成部１００５と、決定部１００６と、検出部１００７と、出力部１００８と、を有する。取得部１０００〜出力部１００８は、具体的には、たとえば、図６に示したＲＯＭ６０２、ＲＡＭ６０３、磁気ディスク６０５、光ディスク６０７などの記憶装置に記憶されたプログラムをＣＰＵ６０１に実行させることにより、または、Ｉ／Ｆ６０９により、その機能を実現する。
【００４５】
取得部１０００は、評価対象データ群Ｖｉを取得する。具体的には、たとえば、第１世代の評価対象データ群Ｖ１を、入力装置から入力したり、記憶装置から読み出したり、外部装置から受信する。また、生成部１００５によって生成された次世代の評価対象データ群Ｖｉを取得する。
【００４６】
第１の算出部１００１は、評価対象データ群Ｖｉの各評価対象データについて、評価対象データ内の特徴に基づく評価対象データの評価値を算出する。評価対象データ内の特徴に基づく評価対象データの評価値とは、具体的には、たとえば、確実情報を用いて算出される評価値ｆｉである。ここで、図７の関連度テーブル７００および図８のペナルティテーブル８００を用いた第１の算出部１００１による算出例を説明する。評価値ｆｉは、下記式（１）により算出される。
【００４７】
ｆｉ＝関連度の総和／２−ペナルティ・・・（１）
【００４８】
第１の算出部１００１は、ある評価対象データであるレイアウト内のオブジェクト群について、オブジェクトごとに他のオブジェクトとの関連度を、関連度テーブル７００から抽出する。たとえば、窓口Ｂに着目すると、窓口Ｂが窓口Ａと隣接配置されている場合は、関連度「１．０」が抽出される。また、窓口Ｂが窓口Ｃと隣接配置されている場合は、関連度「０．４」が抽出される。
【００４９】
したがって、窓口Ｂの関連度は、１＋０．４＝１．４となる。このようにして、第１の算出部１００１は、評価対象データであるレイアウト内の各オブジェクトについて関連度を求め、求められた関連度の総和を求める。そして、第１の算出部１００１は、求められた関連度の総和を２で割り、最大値が１となるように正規化する。
【００５０】
また、第１の算出部１００１は、ペナルティテーブル８００の条件に該当する場合は、式（１）の右辺第２項のペナルティを、ペナルティ＝１に設定する。ｆｉの最大値は１であるため、ペナルティがあれば、ｆｉは最大でも０となり、遺伝的アルゴリズムにおいて淘汰されることになる。
【００５１】
第２の算出部１００２は、各評価対象データについて、評価対象データ外の特徴に基づく評価対象データの評価値を算出する。具体的には、たとえば、第２の算出部１００２は、各評価対象データについて、評価対象データには存在しない外的要因を与えたシミュレーションにより各評価対象データの評価値を算出する。評価対象データ外の特徴に基づく評価対象データの評価値とは、具体的には、たとえば、不確実情報を用いて算出される評価値ｇｉｊである。また、評価対象データには存在しない外的要因とは、具体的には、たとえば、仮想顧客情報である。
【００５２】
第２の算出部１００２は、不確実情報群Ｕから現世代で適用する不確実情報ｕｊを抽出する。具体的には、たとえば、第２の算出部１００２は、顧客数、客層をランダムに選択し、選択した顧客数分でかつ該当する客層の仮想顧客情報を仮想顧客情報ＤＢ９００から抽出する。そして、第２の算出部１００２は、抽出された仮想顧客情報を用いて、上記参考文献１，２の待ち行列シミュレーションやエージェントシミュレーションを実行することで、評価値ｇｉｊを得る。ここで、より詳細な例を示す。
【００５３】
図１１は、評価値ｇｉｊの算出例を示す説明図である。第２の算出部１００２は、仮想顧客情報ＤＢ９００から抽出した仮想顧客情報をレイアウトに与えて前記シミュレーションを実行する。前記シミュレーションでは、オブジェクトは、一定期間仮想顧客情報を収容すると解放し、次の仮想顧客を収容する。仮想顧客情報は、その特性により滞留するオブジェクトが決まる。
【００５４】
たとえば、特性が「預金引き出し」や「口座振込み」である場合、ＡＴＭに移動したときにＡＴＭのオブジェクト前で滞留する。特性に規定された行動が完了した仮想顧客情報は、レイアウトから退場する。第２の算出部１００２は、仮想顧客情報ごとにレイアウト内での滞留時間を計数する。これにより、評価値ｇｉｊは、下記式（２）により算出される。
【００５５】
ｇｉｊ＝Σ（抽出した仮想顧客情報の滞留時間）／抽出仮想顧客情報数・・・（２）
【００５６】
上記式（２）は、１を超えてしまうため、仮想顧客情報の滞留時間の最短滞留時間（目的のオブジェクトに行き、並ばずに処理を終え、店舗を出る時間）で「仮想顧客情報の滞留時間」を割った値の逆数をとったものを評価値ｇｉｊとする。すなわち、上記式（２）を下記式（３）で置き換えることにより、評価値ｇｉｊは正規化される。
【００５７】
ｇｉｊ＝１／｛Σ（仮想顧客情報の滞留時間／最短滞留時間）／仮想顧客総数｝・・・・
（３）
【００５８】
また、図１０に戻り、第３の算出部１００３は、各評価対象データについて、第１および第２の算出部１００２によって算出された評価値に基づく評価対象データの総合評価値を算出する。具体的には、たとえば、第３の算出部１００３は、第１の算出部１００１で算出された評価値ｆｉと第２の算出部１００２で算出された評価値ｇｉｊとを加算することにより、総合評価値ｈｉを算出する。具体的には、たとえば、下記式（４）のように総合評価値ｈｉは算出される。
【００５９】
ｈｉ＝ｆｉ＋ｇｉｊ・・・（４）
【００６０】
なお、上記式（４）に重みを採用してもよい。この場合、上記式（４）は下記式（５）に置き換えられる。
【００６１】
ｈｉ＝ｗ１×ｆｉ＋ｗ２×ｇｉｊ・・・（５）
ただし、ｗ１＋ｗ２＝１とする。また、重みｗ１，ｗ２は、解探索者が自由に設定することができる。
【００６２】
判断部１００４は、第３の算出部１００３によって算出された各評価対象データの総合評価値群が所定のしきい値以上の総合評価値群に収束したか否かを判断する。具体的には、たとえば、判断部１００４は、総合評価値群のいずれの総合評価値ｈｉも所定のしきい値以上であるか否かを判断する。これにより、総合評価値群が所定のしきい値以上であるということは、所定のしきい値以上の評価対象データに収束していることを意味する。これにより、確実情報および不確実情報の両方を加味した探索解を得ることができる。
【００６３】
また、判断部１００４は、総合評価値群のいずれの総合評価値ｈｉも所定のしきい値以上であるか否かを判断したが、総合評価値群の平均値が所定のしきい値以上であるか否かを判断してもよい。
【００６４】
生成部１００５は、判断部１００４によって収束していないと判断された場合、遺伝的アルゴリズムにより評価対象データ群から次世代の評価対象データ群を生成する。具体的には、たとえば、図１の（Ｄ）〜（Ｇ）に示したように、染色体データ群の淘汰、交叉、突然変異といった遺伝的アルゴリズムにより次世代の染色体データ群の生成処理を実行する。そして、生成部１００５は、次世代の染色体データ群が生成されると、図３や図４に示したように、当該染色体データ群に応じた次世代の評価対象データ群とする。
【００６５】
これにより、探索装置は、次世代として生成された評価対象データ群について、評価値ｆｉ，ｇｉｊを算出することになる。したがって、生成部１００５は、判断部１００４によって収束すると判断されるまで、次世代の評価対象データ群の生成を繰り返し実行することになる。
【００６６】
決定部１００６は、判断部１００４によって収束したと判断された場合、所定のしきい値以上の総合評価値群に対応する評価対象データ群を探索解に決定する。これにより、探索装置は、確実情報で絞り込まれた解に対して不確実情報を適用する場合に生じる評価誤りや良解の見落としの低減化を図ることができる。これにより、確実情報のみで絞り込まれた解に比べて良解を得ることができる。また、探索装置は、確実情報での絞り込みをおこなっているため、探索時間の短縮化を図ることができる。
【００６７】
検出部１００７は、所定の探索時間が経過したか否かを検出する。所定の探索時間は、探索装置に設定された時間である。実行開始から所定の探索時間が経過すると、決定部１００６は、判断部１００４により収束していなくても、現時点での評価対象データ群を探索解に決定する。この場合、収束していないことになるが、従来に比べて不確実情報を適用する場合に生じる評価誤りや良解の見落としの低減化を図ることができる。また、探索装置は、探索時間の短縮化を図ることができる。
【００６８】
出力部１００８は、決定部１００６によって決定された探索解を出力する。具体的には、たとえば、探索装置は、探索解をディスプレイに表示したり、プリンタに印刷出力したり、記憶装置に格納したり、外部の装置に送信したりする。
【００６９】
＜探索装置による探索処理手順例＞
図１２は、探索装置による探索処理手順例を示すフローチャートである。まず、探索装置は、取得部１０００により、初期集団生成処理を実行する（ステップＳ１２０１）。初期集団生成処理（ステップＳ１２０１）とは、第１世代の評価対象データ群Ｖ１を生成する処理である。初期集団生成処理（ステップＳ１２０１）の詳細については後述する。
【００７０】
つぎに、探索装置は、世代を示すインデックスｉをｉ＝１とし（ステップＳ１２０２）、第ｉ世代の染色体データ群を保存する（ステップＳ１２０３）。このあと、探索装置は、第１〜第３の算出部１００３により、総合評価値算出処理を実行する（ステップＳ１２０４）。総合評価値算出処理（ステップＳ１２０４）は、総合評価値ｈｉを算出する。総合評価値算出処理（ステップＳ１２０４）の詳細については後述する。
【００７１】
総合評価値が算出されると、探索装置は、判断部１００４により、収束したか否かを判断する（ステップＳ１２０５）。収束した場合（ステップＳ１２０５：Ｙｅｓ）、ステップＳ１２１１に移行する。一方、収束していない場合（ステップＳ１２０５：Ｎｏ）、まだ見つかっていない良い解があると推定されるため、探索装置は、検出部１００７により、探索時間が経過したか否かを判断する（ステップＳ１２０６）。探索時間が経過した場合（ステップＳ１２０６：Ｙｅｓ）、ステップＳ１２１１に移行する。
【００７２】
一方、探索時間が経過していない場合（ステップＳ１２０６：Ｎｏ）、探索装置は、図１の（Ｄ）に示したように、生成部１００５により、染色体データ群の一部を淘汰する（ステップＳ１２０７）。そして、探索装置は、図１の（Ｅ）に示したように、生成部１００５により、残存染色体データ群から、淘汰した個数分の染色体データを複製し、図１の（Ｆ）に示したように統合する（ステップＳ１２０８）。
【００７３】
このあと、探索装置は、図１の（Ｇ）に示したように、生成部１００５により、（Ｆ）の統合後の染色体データ群について交叉や突然変異をおこなって（ステップＳ１２０９）、ｉをインクリメントする（ステップＳ１２１０）。そして、探索装置は、ステップＳ１２０３に戻り、交叉・突然変異させた染色体データ群を、第ｉ世代の染色体データ群として保存する。これにより、次世代の染色体データ群についても、総合評価値の算出や収束判定をおこなうことができる。
【００７４】
また、ステップＳ１２１１では、探索装置は、現世代の染色体データ群を最適解とし（ステップＳ１２１１）、対応する評価対象データ群を生成して出力する（ステップＳ１２１２）。これにより、探索装置は、確実情報で絞り込まれた解に対して不確実情報を適用する場合に生じる評価誤りや良解の見落としの低減化を図ることができる。これにより、確実情報のみで絞り込まれた解に比べて良解を得ることができる。また、探索装置は、確実情報での絞り込みをおこなっているため、探索時間の短縮化を図ることができる。
【００７５】
図１３は、図１２に示した初期集団生成処理（ステップＳ１２０１）の詳細な処理手順例を示すフローチャートである。まず、探索装置は、取得部１０００により、評価対象データ群を取得する（ステップＳ１３０１）。つぎに、探索装置は、未選択の評価対象データがあるか否かを判断する（ステップＳ１３０２）。
【００７６】
未選択の評価対象データがある場合（ステップＳ１３０２：Ｙｅｓ）、探索装置は、未選択の評価対象データを１つ選択し（ステップＳ１３０３）、選択した評価対象データに応じた染色体データを生成する（ステップＳ１３０４）。そして、ステップＳ１３０２に戻る。未選択の評価対象データがない場合（ステップＳ１３０２：Ｎｏ）、初期集団生成処理（ステップＳ１２０１）を終了する。これにより、評価対象データごとに、染色体データを得ることができる。
【００７７】
図１４は、図１２に示した総合評価値算出処理（ステップＳ１２０４）の詳細な処理手順例を示すフローチャートである。まず、探索装置は、染色体データ数のインデックスｋをｋ＝１とし（ステップＳ１４０１）、染色体データｃｋを選択する（ステップＳ１４０２）。つぎに、探索装置は、選択した染色体データｃｋを用いて、染色体データｃｋに応じた評価対象データＬ（ｋ）を復元する（ステップＳ１４０３）。具体的には、たとえば、レイアウトの場合、染色体データｃｋの遺伝子座で特定されるオブジェクトを、当該遺伝子座で特定される位置に配置することになる。
【００７８】
そして、探索装置は、第１の算出部１００１により、復元した評価対象データＬ（ｋ）を用いて評価値ｆｉを算出する（ステップＳ１４０４）。つぎに、探索装置は、不確実情報ｕｊを選択し（ステップＳ１４０５）、第２の算出部１００２により、評価値ｇｉｊを算出する（ステップＳ１４０６）。そして、探索装置は、第３の算出部１００３により評価値ｆｉと評価値ｇｉｊを加算することにより総合評価値ｈｉを算出する（ステップＳ１４０７）。
【００７９】
このあと、探索装置は、ｋをインクリメントし（ステップＳ１４０８）、ｋ＞ｎであるか否かを判断する（ステップＳ１４０９）。ｋ＞ｎでない場合（ステップＳ１４０９：Ｎｏ）、ステップＳ１４０２に戻る。一方、ｉ＞ｎである場合（ステップＳ１４０９：Ｙｅｓ）、総合評価値算出処理（ステップＳ１２０４）を終了する。これにより、染色体データごとに総合評価値ｈｉを算出することができる。
【００８０】
このように、本実施の形態によれば、探索装置は、確実情報で絞り込まれた解に対して不確実情報を適用する場合に生じる評価誤りや良解の見落としの低減化を図ることができる。これにより、確実情報のみで絞り込まれた解に比べて良解を得ることができる。また、探索装置は、確実情報での絞り込みをおこなっているため、探索時間の短縮化を図ることができる。また、探索時間を決めておくことにより、それ以上の探索は行われなくなるため、探索時間の短縮化を図ることができる。
【００８１】
また、総合評価値群のいずれの総合評価値もしきい値以上であるということは、ある特定の１または複数の評価対象データに収束していることを意味する。したがって、ｎ個あった評価対象データがしきい値以上の総合評価値の評価対象データに絞り込まれるため、従来に比べて評価誤りや良解の見落としを低減することができる。したがって、本実施の形態によれば、解探索の効率化と高精度化を図ることができる。
【符号の説明】
【００８２】
１０００  取得部
１００１  第１の算出部
１００２  第２の算出部
１００３  第３の算出部
１００４  判断部
１００５  生成部
１００６  決定部
１００７  検出部
１００８  出力部
【図１】
0005927890.tif 000002
【図２】
0005927890.tif 000003
【図３】
0005927890.tif 000004
【図４】
0005927890.tif 000005
【図５】
0005927890.tif 000006
【図６】
0005927890.tif 000007
【図７】
0005927890.tif 000008
【図８】
0005927890.tif 000009
【図９】
0005927890.tif 000010
【図１０】
0005927890.tif 000011
【図１１】
0005927890.tif 000012
【図１２】
0005927890.tif 000013
【図１３】
0005927890.tif 000014
【図１４】
0005927890.tif 000015