(57)【要約】【課題】  近接性の要件を損なうことなく、より良好な解を探索することのできる最適化プログラムを提供する。【解決手段】  解探索方針最適化手段１は、与えられた最適化問題の解探索方針を示す染色体を有する個体３ａ，３ｂ，３ｃ，・・・を、遺伝的アルゴリズムを用いて生成する。順序検討手段１ａは、所定の空間内に固定されて存在する要素種の各要素を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、その経路上の第２の要素種の配列を要素種検討順序５として決定する。解探索手段２は、個々の解探索方針および要素種検討順序５に従って個々の解探索を行い、解候補を生成する。そして、解探索方針最適化手段１は、解探索によって得られた解候補４ａ，４ｂ，４ｃ，・・・の適応度関数値を計算し、次の世代の解候補を探索する必要がなければ、適応度関数値の最も良い解候補を最適化問題の解とする。【選択図】  図１
2005084848.tif 000002
【特許請求の範囲】
【請求項１】
最適化問題の解を求める最適化プログラムにおいて、
コンピュータを、
前記最適化問題の解を構成する要素を、空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、前記最適化問題の解探索方針を示す染色体に、前記第１の要素種の要素の検討順序を表す情報を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する解探索方針最適化手段、
前記第２の要素種の各要素を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った前記第２の要素種の配列を要素種検討順序として決定する順序検討手段、
個々の前記解探索方針および前記要素種検討順序に従って個々の解探索を行い、解候補を生成する解探索手段、
として機能させることを特徴とする最適化プログラム。
【請求項２】
最適化問題の解を求める最適化プログラムにおいて、
コンピュータを、
前記最適化問題の解を構成する要素を、空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、前記最適化問題の解探索方針を示す染色体に、前記第１の要素種の要素の検討順序および前記第２の要素種の要素の検討順序を表す情報を格納し、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する解探索方針最適化手段、
個々の前記解探索方針に従って個々の解探索を行い、解候補を生成する解探索手段、
として機能させることを特徴とする最適化プログラム。
【請求項３】
配送計画問題の解を求める配送計画プログラムにおいて、
コンピュータを、
前記配送計画問題の解探索方針を示す染色体に、配送車の順序列である配送車割当順序および配送先の順序列である配送先検討順序を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する配送車割当順序決定手段、
個々の前記解探索方針に従って個々の解探索を行い、解候補を生成する配送計画作成手段、
として機能させることを特徴とする配送計画プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は最適化プログラムおよび配送計画プログラムに関し、特に遺伝的アルゴリズムを用いて最適化問題の解を求める最適化プログラムおよび配送計画プログラムに関する。
【背景技術】
【０００２】
最適化問題とは、一般に、１ないし複数の変数とこれらの変数によって定義される目的関数（評価関数）とが与えられ、所定の制約条件の下でこの目的関数の値を最大あるいは最小とする変数の値の組（最適解）を求める問題である。
【０００３】
従来、広く用いられている最適化問題の解の探索手法の一つとして、山登り法と呼ばれる探索手法がある。山登り法は、可能解（制約条件の全てを満たした変数の値の組）の変数の値をすこしずつ変化させながら、目的関数の値を最適解に近づけるものである（但し、可能解の集合内に閉じた変化は、山登り法の一部においては必須ではない）。
【０００４】
ところが、問題によっては、山登り法のような手法では最適解（あるいは、必ずしも最適解ではないが、最適解との違い（目的関数値の差）がある程度の許容範囲内にある許容解）を得ることができない場合がある。即ち、周辺（一部または全ての変数の値を少しだけ変化させた場合）と比べれば一番良い値の可能解が得られても、周辺を越えたある程度以上離れた位置（変数の値をある程度以上変化させた場合）にはもっと良い値の可能解が存在することがある。従って、一般的な山登り法では、この様に離れた位置に最適解が存在していても、その解を導き出すことができない。
【０００５】
そこで、上記の問題を取り除くための一手法として、遺伝的アルゴリズム（ＧＡ）という解探索手法が用いられる。遺伝的アルゴリズムとは、生物の遺伝の機構を模倣して、それを工学的に応用した技術である。
【０００６】
生物進化の過程では、既存の個体（親）から新たな個体（子）が生まれる際に、個体の持つ染色体同士の交叉、染色体上の遺伝子の突然変異などが起こり、既存の個体とは異なる性質の個体が生まれる。そして、環境に適応した個体は、環境に適応しない個体よりも高い確率で新たな子孫を作ることができる。これにより、環境により適応した個体の集団が、世代を経て形成されていく。
【０００７】
このような生物進化の機構を工学的に実現したものが、遺伝的アルゴリズムによる解探索手法であり、それによって多くの最適化問題を解決することができる。遺伝的アルゴリズムでは、解候補を個体の持つ染色体に見立て、解候補に含まれる変数を、個体の持つ染色体上の遺伝子として取り扱う。そして、最適化問題の目的関数に対応して定義される適応度関数が適応対象の環境を表し、適応度関数の値が各個体の環境への適応度を表す。適応度関数は、目的関数を最適にする解ほど大きい値を取るような関数である。適応度関数の値（適応度関数値）を用いて各個体の環境への適応度を判断し、適応度関数値が大きい解候補ほど子孫を作ることができるように、即ち、高確率で親として選択されるように制御する。換言すると、後述する選択操作において、適応度関数値が大きい解候補ほど、より選択されるように制御する。
【０００８】
以上のような定義に基づき、個体の染色体に見立てた複数の解候補に対して、選択（Selection）（自己複製（Reproduction））、交叉（Crossover）、突然変異（Mutation）の操作を繰り返し行う。以下に、遺伝的アルゴリズムの最適解探索の手順を、簡単に説明する。
【０００９】
まず、例えばそれぞれがランダムな（変数）値の配列（遺伝子の配列）である染色体を持つ複数の個体を生成する。これらの個体の集団を第１世代と呼ぶ。そして、選択の操作を行う。選択では、第１世代の各個体の染色体の適応度関数値を（遺伝子の一次元配列に基づいて）求め、その中からより適応度の高い個体をより高い確率で選択する。選択は、結果が対をなすように、２個体ずつ行う。この個体対が、次世代の個体対（即ち子）の親になる。
【００１０】
次に、交叉の操作を行う。交叉では、個体対のそれぞれの個体の持つ染色体の部分同士を結合したような（即ち染色体の一部分は第１の親の染色体パターンを持ち、残りの部分は、第２の親の染色体パターンを持つような）染色体を持つ、新たな個体（即ち子）を生成する。このようにして生成された個体は、双方の親の性質をある程度ずつ引き継いでいる。
【００１１】
さらに、突然変異の操作を行う。突然変異では、交叉によって生成された個体の染色体の、ランダムに選ばれた一部の遺伝子を、ランダムに選ばれた別の値に置き換える。（他に、ランダムに選ばれた、同一染色体上の他の遺伝子と交換するという操作、あるいは他の操作を行う場合もある。）この突然変異によって、親の持っていない遺伝子を有する個体が生まれ得る。このようにして生成された複数の個体（集団）が第２世代の集団となる。
【００１２】
以後、選択、交叉、突然変異を繰り返し、世代を重ねていく。その結果、適応度の低い個体が淘汰されて、集団がより適応度の高い個体で形成されるようになっていく。また解空間の中を大域的に、且つ確率的に探索していくため、特に、多峰性解空間においては、山登り法のように適応度値の小さな局所解に陥ることがない（陥る可能性が低い）。
【００１３】
最適化問題の一つに、配送計画問題がある。配送計画問題は、与えられた複数の配送先に対して荷物を配送する際に、配送先毎の受付可能時間、配送車毎の許容積載量（重量、体積）など様々な制約条件のもとで、（例えば）配送コストを最小化するような、最適配送計画を求める問題である。配送計画問題では、上記のような遺伝的アルゴリズムを適用することが、良好な解を得るための有効な手段となり得る。しかし、現実に即した配送状況を考慮すると、非常に多くの制約条件が存在することとなり、解空間に多数の局所解が生じて解探索が困難になる（即ち解探索時間が増大する）ため、遺伝的アルゴリズムは実用に適さなくなってしまう場合が少なくない。
【００１４】
例えば、荷物の配送計画問題において、配送コスト低減、制約条件満足度等の観点から遺伝的アルゴリズムにより最適解を探索する場合を考える。この場合、配送センタの業務時間、配送先の受付可能時間、配送車の使用可能時間等、様々な制約条件がある。これらの全ての制約条件を考慮した場合、解空間に局所解が多数生じるが、そのような解空間を遺伝的アルゴリズム単独で探索した場合、現在の計算機では、実用可能な時間内で解を得ることは難しいことが多い。
【００１５】
現在、遺伝的アルゴリズムと他のアルゴリズムとを併用することで、遺伝的アルゴリズムの解探索を効率化し、大局的な解探索を行った上で最適解を高速に求めることを可能にした最適化装置が考案されている。また、このような最適化装置を用いて、配送コストを低減した配送計画を高速に探索する配送計画システムも考案されている。例えば、ある配送計画システムでは、遺伝的アルゴリズムにより、配送先検討開始配送先や配送先検討方向などを含む解探索方針が決定される。そして、解探索方針に従って解候補が探索される（例えば、特許文献１参照）。
【特許文献１】特開平１０−５５３４９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
ところで、上記の配送計画システムでは、一つの解候補を形成する過程で、まず配送車を選択し、起点である配送センタを中心として扇状に配送先を走査する。そして、検出された順に配送先を選択し、その配送先に対して、選択されている配送車で配送が可能か否かの検討を行う。
【００１７】
しかし、検討対象とする配送先を扇状に走査した場合、実際の空間上では、（相互間の移動に要する時間の観点で）近接していない配送先同士が配送先検討順序列上で隣接するということが起こり得る。そのため、現実に配送する際に要求される配送先間の近接性を考慮した解が、アルゴリズムによる（自動）検討上、俎上に載らない（解候補として登場しない）ということが起きてしまう可能性がある。
【００１８】
図３０は、従来の配送計画システムの走査状況を示す図である。二点鎖線（想像線）はそれぞれ、動径３１０の移動後の位置を表す。
配送センタ３００の周囲に位置する、（遠隔地に位置するものも含む）各配送先３０１，・・・，３０６の位置は、配送センタ３００を原点とし、原線３１１を角度の基準とした極座標によって認識される。動径３１０は、原点を軸に回転する半直線である。ここで、原線３１１と動径３１０との成す角をθとする（動径３１０が、原線３１１から反時計回りに回転した時に原線となす角を正とする）。
【００１９】
図３０の例では、θを０から増加させることで、動径３１０を反時計回りに回転させ、極座標上を走査する。これは、動径３１０の回転に伴い、動径３１０に接触する配送先（配送先の位置が動径３１０上にあること）の有無を検出する処理である。そして、動径３１０の走査によって検出された順番に配送先の検討を行う。このため、配送先の配置によっては以下のような問題が生じる。
【００２０】
例えば、山３２０の周囲に配された配送先３０１，３０２，３０３では、動径３１０と接触する配送先３０１、配送先３０３、配送先３０２の順に検討が行われる。即ち、まず配送先３０１が検討対象となる。次に、極座標（の角度）では近接していても、現実には配送先３０１から山３２０に沿って大きく迂回しないと到達できない配送先３０３が検討対象となる。荷物の積載制限など制約上の問題がなければ、これらの配送先３０１，３０３に、同一配送車で配送可能と判断されてしまい、配送計画の解として導出されるということが起こり得る。即ち、もしこの場合が、「配送先３０１と配送先３０３への荷物は、異なる配送車を割当てて配送したほうがよい場合」であったとしても、（その可能性は全く検討されないまま、）同一配送車を割当てて配送する計画が導出されてしまうということが起こり得る。
【００２１】
また、道３３０沿いに位置する配送先３０４，３０５，３０６に対しても同様に、動径３１０と接触する配送先３０４、配送先３０６、配送先３０５の順に検討が行われる。即ち、まず配送先３０４が検討対象となる。次に、道３３０に沿って迂回した場所に位置する配送先３０６が検討対象となる。その結果、上記と同様の問題が発生し得る。
【００２２】
これらはいずれも、配送先を極座標（の角度）で認識したときの近接性と、現実の配置における（相互間の移動に要する時間的）近接性との乖離のために生じる問題であり、極座標にて配送先を走査する限り、この問題を回避することはできない。
【００２３】
本発明はこのような点に鑑みてなされたものであり、より良好な解を求めることができる最適化プログラムおよび配送計画プログラムを提供することを目的とする。また、本発明の他の目的は、より良好な配送計画を求めることができる最適化プログラムおよび配送計画プログラムを提供することである。
【課題を解決するための手段】
【００２４】
本発明の第１の態様では、上記課題を解決するために、最適化問題の解を求める最適化プログラムにおいて、コンピュータを、図１に示すように、最適化問題の解を構成する要素を、空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、最適化問題の解探索方針を示す染色体に、第１の要素種の要素の検討順序を表す情報を格納して、染色体を有する個体３ａ，３ｂ，３ｃ，・・・を生成し、解探索方針を遺伝的アルゴリズムで最適化する解探索方針最適化手段１、第２の要素種の各要素を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った第２の要素種の配列を、要素種検討順序５として決定する順序検討手段１ａ、個々の解探索方針および要素種検討順序５に従って個々の解探索を行い、解候補４ａ，４ｂ，４ｃ，・・・を生成する解探索手段２、として機能させることを特徴とする最適化プログラムが提供される。
【００２５】
このような手段としてコンピュータを機能させることで、コンピュータは最適化装置として機能する。この最適化装置において、解探索方針最適化手段１は、与えられた最適化問題の解を構成する要素を空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、最適化問題の解探索方針を示す染色体に、第１の要素種の要素の検討順序を表す情報を格納して、染色体を有する個体３ａ，３ｂ，３ｃ，・・・を生成し、これらをまとめた個体群３を解探索手段２に渡す。また、順序検討手段１ａは、第２の要素種の各要素を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った第２の要素種の配列を要素種検討順序５として決定し、解探索手段２に渡す。解探索手段２は、個体群３を構成する個体３ａ，３ｂ，３ｃ，・・・の染色体に示された解探索方針と要素種検討順序５に従って個々の解探索を行い、個体３ａ，３ｂ，３ｃ，・・・に対応した解候補４ａ，４ｂ，４ｃ，・・・を生成し、これらをまとめた解候補群４を解探索方針最適化手段１に渡す。
【００２６】
また、本発明の第２の態様では、上記課題を解決するために、最適化問題の解を求める最適化プログラムにおいて、コンピュータを、図２１に示すように、最適化問題の解を構成する要素を、空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、最適化問題の解探索方針を示す染色体８１ａ，８２ａ，８３ａ，・・・に、第１の要素種の要素の検討順序および第２の要素種の要素の検討順序を表す情報８１ｂ，８２ｂ，８３ｂ，・・・を格納して、染色体８１ａ，８２ａ，８３ａ，・・・を有する個体８１，８２，８３，・・・を生成し、解探索方針を遺伝的アルゴリズムで最適化する解探索方針最適化手段７１、個々の解探索方針に従って個々の解探索を行い、解候補９０ａ，９０ｂ，９０ｃ，・・・を生成する解探索手段７２、として機能させることを特徴とする最適化プログラムが提供される。
【００２７】
このような手段としてコンピュータを機能させることで、コンピュータは最適化装置として機能する。この最適化装置において、解探索方針最適化手段７１は、与えられた最適化問題の解を構成する要素を空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、最適化問題の解探索方針を示す染色体８１ａ，８２ａ，８３ａ，・・・に、第１の要素種の要素の検討順序および第２の要素種の要素の検討順序を表す情報８１ｂ，８２ｂ，８３ｂ，・・・を格納して、染色体８１ａ，８２ａ，８３ａ，・・・を有する個体８１，８２，８３，・・・を生成し、これらをまとめた個体群８０を解探索手段７２に渡す。解探索手段７２は、個体群８０を構成する個体８１，８２，８３，・・・の持つ染色体８１ａ，８２ａ，８３ａ，・・・に示された解探索方針に従って個々の解探索を行い、個体８１，８２，８３，・・・に対応した解候補９０ａ，９０ｂ，９０ｃ，・・・を生成し、これらをまとめた解候補群９０を解探索方針最適化手段７１に渡す。
【発明の効果】
【００２８】
以上説明したように、本発明に係る最適化プログラムを実行するコンピュータは、所定の空間に固定された第２の要素種の各要素を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った第２の要素種の順序をもとにして、個体の染色体によって示される解探索方針に対応した解を探索することで、良好な解の探索を行うことができる。
【００２９】
また、本発明に係る別の最適化プログラムを実行するコンピュータは、所定の空間に固定された第２の要素種の要素の検討順序を表す情報を染色体に格納して、遺伝的アルゴリズムを通して最適化していくことで、多様的な解の探索を行うことができる。
【００３０】
また、本発明に係る配送計画プログラムを実行するコンピュータは、与えられた配送先の順序列である配送先検討順序を染色体に格納して、遺伝的アルゴリズムを通して最適化していくことで、多様な配送計画の探索を行うことができる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の実施の形態を図面を参照して説明する。
本発明の実施の形態は、大別して以下のような４つの発明を含んでいる。
第１の発明は、所定の空間内に固定されて存在する要素種の各要素を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、その経路に沿った上記要素種の配列を予め決定した上で、遺伝的アルゴリズムを用いて最適化問題の解を求める最適化装置であり、この装置の機能は、最適化プログラムがコンピュータ上で動作することによって実現される。第２の発明は、上記の最適化装置を適用して配送計画問題の解を求める配送計画装置であり、この装置の機能は、配送計画プログラムがコンピュータ上で動作することによって実現される。
【００３２】
第３の発明は、所定の空間内に固定されて存在する要素種の要素の検討順序を表す情報を染色体に格納して遺伝的アルゴリズムの過程で最適化していくことで、最適化問題の解を求める最適化装置であり、この装置の機能は、上記とは別の最適化プログラムがコンピュータ上で動作することによって実現される。第４の発明は、この最適化装置を適用して配送計画問題の解を求める配送計画装置であり、この装置の機能は、上記とは別の配送計画プログラムがコンピュータ上で動作することによって実現される。
【００３３】
これらのうち、第１および第２の発明については第１の実施の形態で説明を行い、第３および第４の発明については第２の実施の形態で説明を行う。
（第１の実施の形態）
図１は、第１の実施の形態の最適化装置の原理構成図である。
【００３４】
この最適化装置に最適化問題が入力されると、解探索方針最適化手段１は、与えられた最適化問題の解を構成する要素を、空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分ける。次に、解探索方針最適化手段１は、解探索方針を示す染色体を有する個体３ａ，３ｂ，３ｃ，・・・を生成する。個体３ａ，３ｂ，３ｃ，・・・には、染色体として第１の要素種の要素の検討順序が格納されている。そして、解探索方針最適化手段１は、これらの個体３ａ，３ｂ，３ｃ，・・・をまとめた個体群３を、解探索手段２に渡す。染色体が示す解探索方針は、解探索方針最適化手段１において、遺伝的アルゴリズムを通して最適化されていく。
【００３５】
順序検討手段１ａは、第２の要素種の各要素を空間上で結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った第２の要素種の配列を、要素種検討順序５として決定する。この所定のアルゴリズムで求めた経路は、探索した経路の中では最も距離が短い経路であるが、必ずしも（絶対的な）最短経路ではない。すなわち、所定のアルゴリズムで探索していない経路の中には、探索した中で最短であった経路よりも距離が短いものが存在する可能性もある。順序検討手段１ａは、決定した要素種検討順序５を解探索手段２に渡す。
【００３６】
解探索手段２は、個体群３内の各個体３ａ，３ｂ，３ｃ，・・・の染色体で示された解探索方針に従って最適化問題の解を探索する。この際、第２の要素種の要素の検討順序は、要素種検討順序５に示された順番に従う。このようにして、個体３ａ，３ｂ，３ｃ，・・・に対する解候補４ａ，４ｂ，４ｃ，・・・を生成する。このとき、解候補４ａは個体３ａに基づき、解候補４ｂは個体３ｂに基づき、解候補４ｃは個体３ｃに基づき、それぞれ独立に生成される。そして、解候補４ａ，４ｂ，４ｃ，・・・をまとめた解候補群４を、解探索方針最適化手段１に渡す。
【００３７】
解探索方針最適化手段１は、解候補群４の各解候補４ａ，４ｂ，４ｃ，・・・の適応度関数値を求める。そして、さらに次の世代の解候補を探索する必要があれば、適応度関数値を用いて個体３ａ，３ｂ，３ｃ，・・・から個体対を選択し、個体対のそれぞれが持つ染色体間で交叉を行い、交叉によって生成された個体の染色体に対して突然変異の処理を施す。そして、このように生成された複数の個体を、次の世代の個体群として解探索手段２に渡す。一方、次の世代の解候補を探索する必要がなければ、適応度関数値の最も良い解候補を、この最適化問題の解とする。なお、多くの場合、この解は厳密な意味の最適解ではなく、予め定められた許容範囲内にある許容解（最適解ではないが、採用できる解）である。
【００３８】
このように、最適化問題を解く遺伝的アルゴリズムとは別個に、第２の要素種の要素の検討順序を、例えば、これらを結ぶ経路が短くなるように、予め決定しておく。この順序を基に、個体３ａ，３ｂ，３ｃ，・・・の染色体によって示される解探索方針に対応した解を探索することで、上記第２の要素種の近接性の要件を極端に損なうことなく、より良好な解の探索を行うことができる。
【００３９】
次に、上記の最適化装置を適用した配送計画装置を用いて、配送計画問題の解を求める配送計画システムについて説明する。
図２は、配送計画システム全体の概略構成を示すブロック図である。この配送計画システムは、配送計画装置１００を中心に構成されている。この配送計画装置１００は、遺伝的アルゴリズムと逐次添加的および逐次改善的手法とを用いて配送計画の計算を行う。
【００４０】
配送計画の計算を行う際には、配送計画装置１００に対して、シミュレーション条件９１、地図情報９２、配送先／配送車情報９３、および出荷データ９４が入力される。シミュレーション条件９１は、制約条件、適応度関数、および遺伝的アルゴリズムを用いる際に第何世代まで計算するかなどの計算条件である。地図情報９２には、配送先の位置情報、配送先内所要時間情報、および道路情報などが含まれる。配送先／配送車情報９３には、配送先の店着指定時刻、納品時間、停車車種制限などが含まれる。出荷データ９４は、配送すべき荷物の出荷伝票のデータである。この出荷データ９４は、品物の在庫や、注文の受付などを管理している基幹システムから送られてくる。
【００４１】
必要な情報を受け取った配送計画装置１００は、配送計画を計算する。算出された配送計画は、ルート表示部９５とタイムチャート表示部９６に送られる。ルート表示部９５は、表示装置上に地図ウィンドウを開き、そのウィンドウの中に周辺の地図を表示し、さらに、その地図上に各配送ルートを表示する。
【００４２】
タイムチャート表示部９６は、地図ウィンドウとは別のタイムチャートウィンドウを開く。そのタイムチャートウィンドウには、各配送ルートにおける時間経過に伴う配送車両の状態の変化がタイムチャートで表示される。
【００４３】
図３は、配送計画装置のハードウェア構成例である。
配送計画装置１００は、ＣＰＵ（Central Processing Unit）１０１、ＲＯＭ（Read Only Memory）１０２、ＲＡＭ（Random Access Memory）１０３、ＨＤＤ（Hard Disk Drive）１０４、グラフィック処理部１０５、入力Ｉ／Ｆ（Interface）１０６および通信Ｉ／Ｆ（Interface）１０７などによって構成され、これらはバス１０８を介して相互に接続されている。
【００４４】
ここで、ＣＰＵ１０１は、ＨＤＤ１０４に格納されているプログラムに応じて装置の各部を制御する。ＲＯＭ１０２は、ＣＰＵ１０１が実行する基本的なプログラムやデータを格納している。ＲＡＭ１０３は、ＣＰＵ１０１が実行途中のプログラムや、演算途中のデータを一時的に格納する。ＨＤＤ１０４は、ＣＰＵ１０１が実行するＯＳ（Operating System）や、アプリケーションプログラムを格納する。
【００４５】
グラフィック処理部１０５には、ディスプレイなどの表示装置９７が接続されており、ＣＰＵ１０１からの描画命令に従って、表示装置９７の画面上に画像を表示させる。入力Ｉ／Ｆ１０６には、マウス１０６ａやキーボード１０６ｂが接続されており、これらにより入力された情報を受信し、バス１０８を介してＣＰＵ１０１に送信する。通信Ｉ／Ｆ１０７は、ネットワーク９８に接続され、データの送受信を行う。
【００４６】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。なお、最適化装置についても、同様のハードウェア構成によって、本実施の形態の処理機能を実現することができる。
【００４７】
図４は配送計画装置の内部構成を示すブロック図である。
配送計画装置１００内には、配送計画の作成に当って、配送が可能か不可能かの検討の対象となる要素（配送車や配送先）の選択方針を決定する検討要素選択方針決定手段１１０と、指定された解探索方針に従って逐次添加的および逐次改善的手法により配送計画案を作成する配送計画作成手段１２０とが設けられている。
【００４８】
検討要素選択方針決定手段１１０は、配送車割当順序決定手段１１１と配送先検討順序決定手段１１２とを有する。配送車割当順序決定手段１１１は、遺伝的アルゴリズムにより、検討すべき配送車の配送先への割当順序などの解探索方針を最適化する。配送先検討順序決定手段１１２は、検討対象とする配送先の選択順を決定する。より詳細には、以下の通りである。
【００４９】
配送車割当順序決定手段１１１は、遺伝的アルゴリズムによる処理機能を有しており、解探索方針を染色体で示す個体の群に対して、選択、交叉、および突然変異の操作を繰り返し行う。これにより、個体群の子孫が順次生成される。解探索方針としては、検討の対象とする配送車の配送先への割当検討順序、最初の配送車の検討を行う際に、初めに検討対象とすべき配送先の指定、および配送先の検討を順次行う際の配送先の選択方向指定がある。
【００５０】
配送先検討順序決定手段１１２は、全配送先を結ぶ経路のうち最も距離が短くなる経路を、所定のアルゴリズムによって求める。そして、配送先検討順序決定手段１１２は、求めた経路に沿った配送先の順序列を、配送先検討順序として決定する。このような経路は、例えば、巡回セールスマン問題の近似解法の一つであるＬｉｎ−Ｋｅｒｎｉｇｈａｎの方法によって求めることができる。
【００５１】
配送車割当順序決定手段１１１が選択を行う際には、その世代の個体群を配送計画作成手段１２０に渡し、各個体に対応して作成された配送計画案を配送計画作成手段１２０から受け取る。すると、配送車割当順序決定手段１１１は、受け取った配送計画案の各々から適応度関数値を計算し、適応度関数値に基づいて選択を行い、次世代を生成するための（次世代を生成するために本世代で交叉を行う対象である）個体対を作る。また、処理の終了条件を満たした場合には、その世代の中で適応度関数値の大きい配送計画案を解とする。
【００５２】
配送計画作成手段１２０は、各個体に対応した正式配送経路を作成する配送経路立案手段１２１と、上記正式配送経路を受け取って時間が最短となるような改善を加える配送経路改善手段１２２とを有している。
【００５３】
配送経路立案手段１２１は、まず配送先検討順序決定手段１１２から配送先検討順序を受け取る。以後、配送先検討順序は、各世代の個体群に対して共通に用いられる。そして、配送車割当順序決定手段１１１から送られたある世代の個体群を受け取ると、個体の染色体に示されている順番で検討対象の配送車を選択する。続いて、検討対象の配送車について、配送先検討順序に示された配送先の順番に従って、その配送先への荷物を積むかどうかの検討を行い、各配送車を配送先に割当てた正式配送経路を作成する。
【００５４】
配送経路改善手段１２２は、正式配送経路を受け取り、各配送車が配送すべき配送先の配送順の入替えを行い、時間が最短になるような配送順の発見を図る。改善が加えられた配送経路が、最終的に求める配送経路となる。同様にして、全ての配送車に対する最終的に求める配送経路を確定し、配送計画案が作成される。そして、各個体に対応して作成した配送計画案を配送車割当順序決定手段１１１に送る。
【００５５】
以上のような配送計画システムにより、遺伝的アルゴリズムと逐次添加的および逐次改善的手法とを組み合わせて、最適解を探索する。以下に配送計画問題の具体例を用いて、上記の配送計画システムの処理手順を説明する。
【００５６】
図５は、配送計画問題の配送センタ、配送先、および配送車を示す図である。
配送センタ３１の周囲に計１０ケ所の配送先３２ａ，・・・，３２ｊが存在しており、それぞれに対して１対１に番号が付与されている（図中の丸で囲まれた１，・・・，１０の数字）。これらを配送先番号とする（以下、図７、図１５、図１８、図２０においても、丸で囲まれた数字を配送先番号とする）。また、これらの配送先に対して荷物を配送する４台の配送車６１，・・・，６４があり、こちらもそれぞれに対して１対１に番号が付与されている（各配送車内部に記した１，・・・，４の数字）。これらを配送車番号とする。
【００５７】
上記のような配送計画問題の例において、ここでは、配送コストの低減を目的として最適化する。配送コストを左右する要素には、使用配送車数、配送時間（人件費に影響する）、配送車走行距離（燃料費に影響する）などがある。ここでは、特に使用配送車数の削減を主たる目的とし、合わせて配送車積載重量総和の削減も副次的目的として、最適化を行う。１台の配送車両の一年間の維持費は高額であり、配送センタに必要な配送車両の数を減らせれば、コストの削減の効果が非常に大きいためである。
【００５８】
このような目的に対して考慮すべき制約条件としては、「配送センタの業務時間制約」、「配送先の受付時間制約」、「配送先への進入制約（道路事情による進入が可能か不可能か）」、「配送先の受付配送車種類制約（配送先Ａ社には、Ａ社の社名入りの配送車しか使用することができない場合など）」、「配送車の容量制約」、「配送車の積載温度制約」、「配送車の稼働時間制約」、「配送車の走行距離制約」、「配送車台数制約」などがある。なお、「配送車の容量制約」には、「配送車積載重量制約」、「配送車積載体積制約」、「配送車積載寸法制約」が含まれる。
【００５９】
そこで、各個体の染色体が示す解探索方針で作成された配送計画案の適応度関数ｆを
ｆ＝１／（ａ×配送車数＋ｂ×配送車積載重量総和＋ｃ×配送車不足）
と定義する。ａ，ｂ，ｃは、予め設定された定数（正の実数）である。配送車不足は、配送車が不足する場合は「１」、そうでない場合は「０」である。この適応度関数を最大にする解を求めれば、必要な配送車数および配送車積載重量総和を（この関数で表現しているような意味で）最小にすることができる。なお、ｃの値は、ａやｂよりも十分大きな値とする。ｃの値を大きな値とすることにより、配送車が不足するような解が生成される個体は、淘汰される可能性が大きくなる。
【００６０】
また、ｋ番目（ｋは自然数）の個体の染色体が示す解探索方針で作成された配送計画案の適応度関数値をｆkとすると、この個体の選択確率は
選択確率＝ｆk n ／Σ（ｆk n ）
とする。なお、Σは和を示す記号であり、Σ（ｆk n ）は、ｆ1n，ｆ2n，・・・，ｆknの和を示している。適応度関数値ｆk をｎ乗（ｎは実数）したのは、このｎの値を変えることにより、個体の選択確率を容易に調整することができるようにするためである。即ち、ｎの値を大きくすれば、適応度関数値ｆk の大きな個体が選択される可能性が大きくなり、ｎの値を小さくすれば、適応度関数値ｆk の小さな個体であっても選択される可能性が大きくなる。
【００６１】
また、交叉には２点交叉（２点交叉の中でも、同一遺伝子の重複や、ある遺伝子の欠落が起こらないように修復を行うもの）を用い、突然変異は２遺伝子の交換とする。
以上のような情報が配送計画装置１００（図２および図４に示す）に入力された後、最適解の探索にあたって、配送先検討順序決定手段１１２は、与えられた配送先に対し配送先検討順序を算出する。
【００６２】
図６は、配送先検討順序の一例を示す図である。
配送先検討順序１５は、全ての配送先を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿って配送先を並べた配送先の順序列である。配送先検討順序１５は、図のように、配送先番号を左から右に並べた１次元配列として表される。
【００６３】
図７は、図６で示した配送先検討順序の内容を示す図である。配送先検討順序１５に示された配送先を順にたどると、図７のような配送先が矢印で結合された閉ループを成す経路となる。この経路は、全ての配送先を結ぶ最短経路（所定のアルゴリズムで探索した範囲内で最も距離の短い経路）であり、経路決定に当って、山３３や道３４の存在が（ある程度）考慮されていると見なせる。配送先への荷物を積むかどうかの検討は、このような経路に沿って行われる。
【００６４】
そして、配送車割当順序決定手段１１１の遺伝的アルゴリズム処理機能は、与えられた配送計画問題の解探索方針を示す染色体（を持つ個体）を生成する。
図８は、染色体の構成を示す図である。この染色体５０は、６個の遺伝子を有している。染色体５０は３つの部分染色体から構成されており、遺伝子５１、遺伝子５２、および遺伝子５３，・・・，５６がそれぞれ一つの部分染色体を形成している。なお、図中では染色体５０を構成する各遺伝子５１，・・・，５６の具体的な値を記しているが、実際には染色体５０は、このような値を持つ特定の染色体ではなく、この配送計画問題で生成される一般的な染色体を示すものとする。
【００６５】
配送先検討方向５０ａは、遺伝子５１からなる部分染色体であり、「＋」あるいは「−」のいずれかの値が設定される。遺伝子５１が「＋」のときは、配送先検討順序１５の左から右に向かって配送先の検討を行う（右端に到達したら、右端が左端につながっていると考え、左端より右に向かって引き続き配送先の検討を行う）。遺伝子５１が「−」のときは、配送先検討順序１５の右から左に向かって配送先の検討を行う（左端に到達したら、左端が右端に繋がっていると考え、右端より左に向かって引き続き配送先の検討を行う）。
【００６６】
検討開始配送先５０ｂは、遺伝子５２からなる部分染色体であり、配送先番号（１，・・・，１０のいずれか）が設定される。１番目に検討を行う配送車の積荷検討（配送先毎に、その配送先への荷物を積むべきか否かの検討）は、この遺伝子５２に設定された配送先番号の配送先に対するものから開始する。
【００６７】
配送車割当順序５０ｃは、遺伝子５３，・・・，５６からなる部分染色体であり、それぞれに対して配送車番号が設定される。ここでは、配送先への割当ての検討を行う配送車の順番を指定し、遺伝子５３→遺伝子５４→遺伝子５５→遺伝子５６の順で、その遺伝子の示す配送車の配送先への割当てを検討する。
【００６８】
このような染色体を有する個体が複数集まることで個体群が形成され、配送車割当順序決定手段１１１が中心となって配送計画の最適解の探索が開始される。
次に、配送計画装置１００が最適解を探索する処理手順について、フローチャートを用いて説明する。
【００６９】
図９は、検討要素選択方針決定手段の処理手順を示すフローチャートである。なお、このフローチャートの各ステップは、特に断らない限り、配送車割当順序決定手段１１１によって処理される。
【００７０】
［Ｓ１］配送先検討順序決定手段１１２が、配送先検討順序１５を決定する。
［Ｓ２］集団の初期化として、第１世代を構成する個体の集団（個体群）を生成する。この第１世代の各個体は、例えば、ランダムに遺伝子を組み合わせることによって生成する。この処理の詳細は、図１０において説明する。
【００７１】
［Ｓ３］生成された集団の各個体から、所定の判断基準に基づき個体対を選択する。この処理の詳細は、図１１において説明する。
［Ｓ４］ステップＳ３によって選択された個体対の各個体の染色体を２点交叉（２点交叉の中でも、同一遺伝子の重複や、ある遺伝子の欠落が起こらないように修復を行うもの）によって交叉させ、新たな染色体を生成する。
【００７２】
［Ｓ５］ステップＳ４で生成された各染色体の中の２つの遺伝子の値を互いに他方の値に変える（即ち交換する）ことにより、突然変異を行う。このステップで生成された染色体を有する個体が、次の世代の個体群となる。
【００７３】
［Ｓ６］処理が終了か否かを判断する。判断基準としては、例えば、「ある一定世代に達しているか否か」を用い、当該一定世代に到達していれば判断基準を満たしているとみなす。処理を終了するための基準を満たしていなければ、ステップＳ３に進み、次の世代の処理を行う（解の探索を継続する）。処理を終了すると判断した場合には、現在の世代で得られた配送計画案の中で、適応度関数値が最も良いものを解とする。
【００７４】
図１０は、集団の初期化の処理手順（図９のステップＳ２）を示すフローチャートである。この処理は全て、配送車割当順序決定手段１１１によって行われる。
［Ｓ１１］ｋの初期値として「１」を設定する。
【００７５】
［Ｓ１２］部分染色体である配送車割当順序５０ｃの初期値を発生させる。
［Ｓ１３］部分染色体である検討開始配送先５０ｂの初期値を発生させる。
［Ｓ１４］部分染色体である配送先検討方向５０ａの初期値を発生させる。
【００７６】
ステップＳ１２，・・・，Ｓ１４の各処理で生成された部分染色体によって、ｋ番目の染色体が構成される。
［Ｓ１５］予め設定されている「ｋｍａｘ」（集団内の個体の総数（この例の場合は、集団内の染色体の総数と等しい））とｋを比較し、等しければ処理を終了する。ｋｍａｘに達していなければ、次のステップＳ１６に進む。即ち、ｋｍａｘに達した時点で、全ての染色体について初期化がなされたことになる。
【００７７】
［Ｓ１６］ｋの値を１だけインクリメントしてステップＳ１２に進み、上記と同様の処理を行う。これにより、ｋの値がｋｍａｘに達するまで処理が繰り返される。
図１１は、選択処理手順（図９のステップＳ３）を示すフローチャートである。この処理は、全て配送車割当順序決定手段１１１によって行われる。
【００７８】
［Ｓ２１］個体の集団を配送計画作成手段１２０に渡し、配送計画作成手段１２０から、逐次添加的および逐次改善的手法により作成された個体毎の配送計画案を受け取る。
［Ｓ２２］受け取った配送計画案の適応度関数値を、個体毎に計算する。
【００７９】
［Ｓ２３］適応度関数値を判断基準として、個体対を選択する。
図１２は、図１１のステップＳ２１において配送車割当順序決定手段が配送計画作成手段に与える個体およびその染色体と、配送計画作成手段から受け取る配送計画案の組の例を示す図である。配送計画案４１，４２，４３は、配送計画作成手段１２０から送られてくる。配送計画案４１，４２，４３から適応度関数値を求めることにより、染色体５０−１，５０−２，５０−３を評価することができる。図１２の例では、染色体５０−１の適応度関数値が８３、染色体５０−２の適応度関数値が６５、染色体５０−３の適応度関数値が５８である。
【００８０】
以上が、検討要素選択方針決定手段１１０の処理手順である。次に、配送計画作成手段１２０の処理手順を説明する。
図１３は、配送計画作成手段の処理手順を示すフローチャートである。なお、以下のフローチャートの各ステップは、特に断らない限り、配送経路立案手段１２１によって処理される。
【００８１】
［Ｓ３１］ｉの初期値として「１」を設定する。ｉは、検討対象配送車を指定するための数値である。配送車割当順序５０ｃにおいて図８中の左からｉ番目の遺伝子で示された番号の配送車が、検討対象配送車となる。
【００８２】
［Ｓ３２］検討対象配送車として、配送車割当順序５０ｃ内のｉ番目の遺伝子を選択する。この場合のｉは、染色体５０の配送車割当順序５０ｃに内包される遺伝子を左側から数えた場合の順番に対応しており、遺伝子５３が１番目、以下、遺伝子５４、遺伝子５５、遺伝子５６が、それぞれ２番目、３番目、４番目に対応する。
【００８３】
［Ｓ３３］検討対象配送車の積荷（配送車に積む荷物）の検討を行う。この処理の詳細は、図１４において説明する。
［Ｓ３４］配送する荷物が尽きていれば（既に、ここまでの処理で全ての荷物が配送車に割当てられていれば）、処理を終了する。
【００８４】
［Ｓ３５］予め設定されている「ｉｍａｘ」（運行可能な配送車の数）とｉを比較し、等しければ処理を終了する。ｉｍａｘに達していなければ、次のステップＳ３６に進む。即ち、ｉｍａｘに達した時点で、全ての配送車について検討されたことになる。
【００８５】
［Ｓ３６］ｉの値を１だけインクリメントしてステップＳ３２に進み、上記と同様の処理を行う。これにより、ｉの値がｉｍａｘに達するまで処理が繰り返される。
図１４は、検討対象の配送車の積荷の検討処理（図１３のステップＳ３３）の詳細を示すフローチャートである。以下のフローチャートの各ステップは、特に示さない限り配送経路立案手段１２１によって処理される。
【００８６】
［Ｓ４１］初期化処理を行う。初期化処理では、まだいずれの配送車も割当てられていない配送先に対する未割当配送先検討順序を示す番号の設定、ｊの初期値設定、およびｊｍａｘの設定が行われる。ここで、未割当配送先検討順序とは、まだいずれの配送車も割当てられていない配送先を配送車割当ての検討対象として選択する順番である。ｊは検討対象の配送先を示す番号である。まだいずれの配送車も割当てられていない配送先のうち未割当配送先検討順序を示す番号がｊである配送先が、検討対象の配送先となる。ｊｍａｘは、図１４のフローチャート開始時点で、まだいずれの配送車も割当てられていない配送先の総数である。具体的には、以下の処理が行われる。
【００８７】
まず、まだいずれの配送車も割当てられていない配送先に対する未割当配送先検討順序を示す番号の設定処理について説明する。未割当配送先検討順序を示す番号の設定処理では、まだいずれの配送車も割当てられていない配送先に対して、配送先検討順序決定手段１１２で決定された配送先検討順序１５上での配送先間の先後関係を保ったまま、未割当配送先検討順序を示す番号を設定する。このとき、検討開始配送先５０ｂで示される配送先から配送先検討方向５０ａで示される方向に向かって、まだいずれの配送車も割当てられていない配送先の検索が行われる。
【００８８】
なお、未割当配送先検討順序を示す番号は、図１３のフローチャートにおけるｉ（検討対象配送車を示す番号）が異なる毎に、図１４のフローチャートに入った時点でステップＳ４１において振り直される。従って、各配送先に対して、未割当配送先検討順序を示す番号を振る処理は、以下のように、ｉが１（最初の検討対象配送車）のときと、ｉが２以上のときとで異なる内容とすることができる。
【００８９】
ｉが１のときは、検討開始配送先５０ｂで示される配送先に対して、未割当配送先検討順序を示す番号として１を設定する。以下、配送先検討順序１５を配送先検討方向５０ａに示す方向に検索し、検出された配送先の順に２，３，・・・と番号を振っていく。なお、検索対象が配送先検討順序１５の端の配送先に達した場合は反対側の端にとび、配送先検討方向５０ａに示す方向に検索して番号を振っていく。
【００９０】
ｉがｍ（ｍは２以上の自然数）のときは、未割当配送先検討順序を示す番号の設定において、配送車割当順序５０ｃ上での順番が１番から「ｍ−１」番までのいずれかの配送車を割当てた配送先は、検索の対象外とされる。その上で、検討開始配送先５０ｂの示す配送先（単なるスタート位置となる）から開始して、いずれの配送車も割当てられていない配送先を配送先検討方向５０ａに示す方向に検索する。そして、最初に検出された配送先に対して、未割当配送先検討順序を示す番号として１を設定する。その後、配送先検討方向５０ａに示す方向に検索を続け、検出される未割当配送先の順に２，３，・・・と番号を振っていく。なお、検索対象が配送先検討順序の端に達した場合は反対側の端にとび、配送先検討方向５０ａに示す方向に検索して番号を振っていく。
【００９１】
このように、以前に配送車の割当てを検討したものの配送車を割当てることができなかった配送先は、次の配送車を検討する際に、優先的に割当ての検討が行われる。
なお、上記の説明において、配送先に対して未割当配送先検討順序を示す番号を振る処理は、ｉが１のときと、ｉが２以上のときとで異なる内容になるものとして説明したが、ｉが２以上のときの処理内容をｉが１のときに適用しても、同一の結果を得ることができる。したがって、前述のｉが２以上のときの処理内容を、ｉの値に関係なく全ての場合に適用してもよい。
【００９２】
次に、ｊの初期値設定処理について説明する。ｊには初期値として「１」を設定する。ｊに「１」を設定することで、まだいずれの配送車も割り当てられていない配送先のうち、未割当配送先検討順序が「１」の配送先が検討対象となる。
【００９３】
次に、ｊｍａｘの設定処理について説明する。ｉが１のときは、ｊｍａｘの初期値は配送先の総数（この例では１０）である。このｊｍａｘの値は、図１４のフローチャートで示す処理が終了しても維持される。そして、ｉがｍ（ｍは２以上の自然数）のときは、ｉが「ｍ−１」のときのステップＳ４１の処理で設定されたｊｍａｘの値を更新する。
【００９４】
具体的には、検討対象配送車毎に、その検討対象配送車を割当てた配送先の総数を変数として保持する。この変数の値は、図１４のフローチャートで示す処理が終了しても保持し続ける。しかも、保持している変数の値を、次の検討対象配送車に関する処理のときに参照できるようにしておく。そして、ｉがｍのときは、このフローチャートが開始された時点で、１つ前の配送車への配送先割当検討時のｊｍａｘの値から上記の変数に保持された配送先の数を引いて、再びｊｍａｘに代入する。
【００９５】
このようにｊｍａｘを設定することにより、ｊがｊｍａｘに達したならば、このフローチャートの処理が開始された時点で、いずれの配送車も割当てられていなかった全ての配送先について検討されたことになる。
【００９６】
［Ｓ４２］検討対象配送先として、ｊ番目の配送先を選択する。ｊ番目の配送先とは、配送先検討順序１５上の、対応する（ステップＳ４１で設定した）未割当配送先検討順序を示す番号がｊである配送先である。
【００９７】
［Ｓ４３］検討対象配送先へ配送すべき荷物を、検討対象配送車に配送させることができるか否かを検討する。この処理の詳細は、図１６において説明する。
［Ｓ４４］検討対象配送車にまだ荷物を載せる余地があるか否かを判断する。さらに積載可能であれば次のステップＳ４５に進み、積載不可能であればステップＳ４７に進む。
【００９８】
［Ｓ４５］予め設定されている「ｊｍａｘ」（このフローチャートの処理が開始された時点で、いずれの配送車も割当てられていない配送先の総数）とｊを比較し、等しければステップＳ４７に進む。等しくなくて、ｊがｊｍａｘに達していなければ、次のステップＳ４６に進む。
【００９９】
［Ｓ４６］ｊの値を１だけインクリメントしてステップＳ４２に進み、上記と同様の処理を行う。これにより、ｊの値がｊｍａｘに達するか、あるいは当該配送車に更に荷物を積載することが不可能となるまで処理が繰り返される。
【０１００】
［Ｓ４７］配送経路改善手段１２２は、正式配送経路の改善を行い処理を終了する。ここで、正式配送経路とは、ステップＳ４３の処理によって決定された配送経路である。この正式配送経路に含まれる配送先の配送順を入れ換えることで、正式配送経路を改善する。改善された後の正式配送経路が、対応する染色体に基づいて決定される配送計画案である。この処理の詳細は、図１９において説明する。
【０１０１】
図１５は検討対象配送車の積荷の検討処理の進行状況を示す図である。この例では、配送経路立案手段１２１が、染色体５０−１（図１２参照）の最初の検討対象配送車に対して、配送先検討順序１５に従って各荷物を積むべきか否かの検討を行うものとして説明する（配送先検討順序１５上の配送先は、いずれもまだ配送車の割当がなされていないものとする）。また、この図に関する以下の説明において、特定の配送先を指示する際は、符号の後に配送先番号を「（配送先番号）」のように併記する。
【０１０２】
（Ａ）は最初の配送先の検討状況を示す図である。染色体５０−１の最初の検討対象配送車は配送車番号２を持つ配送車６２である。また、最初の検討対象配送車の配送先検討なので、染色体５０−１の検討開始配送先に設定された配送先３２ｆ（６）から検討が始まる。（この例では、配送車６２に配送先３２ｆ（６）の荷物を積むことができるとして、）配送計画システムは、配送先３２ｆ（６）の荷物を積むことができると判断し、配送センタ３１と配送先３２ｆ（６）との間を往復する順路を決定する（結果の順路は、（Ｂ）に示す）。
【０１０３】
（Ｂ）は２つめの配送先の検討状況を示す図である。染色体５０−１の配送先検討方向は「＋」の方向であり、配送先３２ｊ（１０）が（２つめの）検討対象配送先となる。（この例では、この段階で、配送車６２に配送先３２ｊ（１０）の荷物も積むことができるとして、）配送計画システムは、この配送先３２ｊ（１０）にも配送できると判断し、その経路を確定する。この際、配送先３２ｆ（６）に向かう途中で配送先３２ｊ（１０）に寄るべきか、配送先３２ｆ（６）からの帰り路に寄るべきかを判断し、最適な方を選ぶ。（この例では、配送上の制約条件を満たした上で、配送コストが最も安い方を選ぶものとする。）ここでは、最適な経路として配送先３２ｆ（６）からの帰り路で寄る方を選ぶ（結果の順路は、（Ｃ）に示す）。
【０１０４】
（Ｃ）は３つめの配送先の検討状況を示す図である。配送先検討順序１５の配送先３２ｊ（１０）の右隣にある配送先３２ａ（１）が（３つめの）検討対象配送先となる。（この例では、この段階で、配送車６２に配送先３２ａ（１）の荷物も積むことができるとして、）配送計画システムは、この配送先３２ａ（１）にも配送できると判断し、その経路を確定する。この際、配送先３２ａ（１）を、配送センタ３１と配送先３２ｆ（６）との間の区間、配送先３２ｆ（６）と配送先３２ｊ（１０）との間の区間、および配送先３２ｊ（１０）と配送センタ３１との間の区間のどこで、新たに加える配送先３２ａ（１）に寄るべきかを判断し、最適な区間を選んでそこに挿入し（そこで寄ることとし）、最良の経路を決定する（結果の順路は、（Ｄ）に示す）。
【０１０５】
（Ｄ）は３つの配送先への配送順序の検討結果を示す図である。この例では、配送先３２ｆ（６）、配送先３２ａ（１）、配送先３２ｊ（１０）の順序が、検討結果として得られている。（この経路を更に改善する処理が、他に用意されているが、それについては後述する。）。これ以降も同様に、配送先検討順序１５に示された配送先を右方向に一つずつ検討していく。
【０１０６】
以上の過程で、ある配送先への配送が（例えば、配送先の受付時間制約、配送車の容量制約、配送車の走行距離制約などが満たせないために、）不可能である場合には、その配送先への配送はできないと判断し、（検討対象配送先が尽きていない場合には、）次の配送先への配送可能性を検討する。
【０１０７】
図１６は検討対象配送先への配送に関する検討の処理（図１４のステップＳ４３）の詳細を示すフローチャートである。以下のフローチャートの各ステップは、全て配送経路立案手段１２１によって処理される。
【０１０８】
［Ｓ５１］重量制約（配送車積載重量制約）を満足しているか否かを判断する。配送車積載重量制約とは、積載する荷物の総重量が、検討対象配送車の積載重量の制限を超えてはならないという制約である。重量制約を満足していればステップＳ５２に進み、満足していなければ処理を終了する。
【０１０９】
［Ｓ５２］体積制約（配送車積載体積制約）を満足しているか否かを判断する。体積制約とは、積載する荷物の総体積が、検討対象配送車の荷台容量を超えてはならないという制約である。体積制約を満足していればステップＳ５３に進み、満足していなければ処理を終了する。
【０１１０】
［Ｓ５３］寸法制約（配送車積載寸法制約）を満足しているか否かを判断する。寸法制約とは、積載する荷物が、検討対象配送車の荷台から所定値以上はみ出してはならないという制約である。寸法制約を満足していればステップＳ５４に進み、満足していなければ処理を終了する。
【０１１１】
［Ｓ５４］進入制約を満足しているか否かを判断する。進入制約とは、道幅等の制限により検討対象配送車では進入できない経路が、配送先への進入経路上にあってはならないという制約である。進入制約（配送先への進入制約）を満足していなければステップＳ５５に進み、満足していなければ処理を終了する。
【０１１２】
［Ｓ５５］車種制約（配送先の受付配送車種類制約）を満足しているか否かを判断する。車種制約は、配送先が配送車の種類を指定していた場合、検討対象配送車が指定された車種でなければならないという制約である。車種制約を満足していればステップＳ５６に進み、満足していなければ処理を終了する。
【０１１３】
［Ｓ５６］最短時間の経路を探索する。結果として、仮配送経路が作成される。この処理の詳細は、図１７において説明する。
［Ｓ５７］時間制約（配送センタの業務時間制約、配送先の受付時間制約）を満足しているか否かを判断する。（時間制約を満たしているか否かの判断は、ステップＳ５６の過程で行っているが、結果として、仮配送経路として時間制約を満足しているものが得られたか否かの判断（確認）を、このステップで行う。）時間制約を満足していればステップＳ５７に進み、満足していなければ処理を終了する。
【０１１４】
［Ｓ５８］走行距離制約（配送車の走行距離制約）を満足しているか否かを判断する。（走行距離制約を満たしているか否かの判断は、ステップＳ５６の過程で行っているが、結果として仮配送経路として走行距離制約を満足しているものが得られたか否かの判断（確認）を、このステップで行う。）走行距離制約を満足していればステップＳ５９に進み、満足していなければ処理を終了する。
【０１１５】
［Ｓ５９］ステップＳ５６で作成された仮配送経路を、正式な配送経路として、処理を終了する。
図１７は最短経路探索の処理（図１６のステップＳ５６）の詳細を示すフローチャートである。以下のフローチャートの各ステップは、全て配送経路立案手段１２１によって処理される。
【０１１６】
［Ｓ６１］このフローチャートの処理が開始された時点で確定している配送経路上に検討対象配送先を挿入し、挿入箇所の異なる配送経路の各々を配送経路候補として、配送経路候補毎の配送コストを計算する。ここで配送コストとは、配送時間や走行距離を考慮に入れた関数値である。
【０１１７】
［Ｓ６２］新たに割当てられる検討対象配送先を、ステップＳ６１で計算した配送コストが最小になる位置に挿入し、最善の仮配送経路を生成する。
図１８は、最短経路探索の処理内容を説明する図である。例として、図１５の（Ｃ）に示すような配送経路「配送センタ３１→配送先３２ｆ→配送先３２ｊ→配送センタ３１」が確定している状態で、さらに配送先３２ａを追加する場合を考える。
【０１１８】
この場合、配送先３２ａを、どこに挿入すれば配送コストが安くなるかを計算する。この例では、３通りの計算が必要である。そして、配送コストが最も安い位置に配送先３２ａを挿入し、配送先３２ａを加えた仮配送経路を生成する。
【０１１９】
ここで、図１４のステップＳ４７における処理（正式配送経路の改善）について説明する。そもそも、仮配送経路作成においては、例えば最初の段階と最後の段階で比較すると、検討対象配送先を挿入する位置の選択肢の多さに不平等が生じているため、結果として得られる正式配送経路よりも、さらに配送コストの安い配送経路が存在する可能性がある。しかし、上記の不平等を解消すべく予め配送先の順番を決めておくような処理を行うと、様々な制約条件（特に時間的な制約）を満たす配送経路を得ることが困難になるため、図１６に示されるフローチャートの処理のように、一つ一つの配送先を逐次的に決定していくことが要求される。
【０１２０】
そこで、正式配送経路を逐次添加的な処理で決定した上で、更に一つ一つの配送先の位置を変えて配送コストを検討する処理を行う。これにより、正式配送経路の解が少なくとも一つあることは保障される、しかも、配送先が全て確定しているので、どの配送先についても配送順（挿入位置）の選択肢を平等として検討することができる。
【０１２１】
図１９は、図１４のステップＳ４７における処理内容を説明する図である。ここでは、例として図１５の（Ｄ）に示すような配送経路「配送センタ３１→配送先３２ｆ→配送先３２ａ→配送先３２ｊ→配送センタ３１」が正式配送経路として得られているものとして、この正式配送経路に対して正式配送経路の改善の処理を施すこととする。
【０１２２】
図において、各配送先の上の数字は、配送順を示している。この状態から、まず、配送先３２ｆを他の位置に移動した場合に、制約条件を守る範囲で、配送コストが向上するか否かを判断する。そして、配送コストが最も向上する位置に、配送先３２ｆを移動する。
【０１２３】
もし、配送先３２ｆが他の場所、例えば、配送先３２ａと配送先３２ｊとの間に移動すると、配送先３２ａが前（図中、左側）にずれる。このように、検討した配送先３２ｆが移動した場合には、もう一度、配送順が「１」である配送先（配送先３２ａが該当する）を他の場所に移動して、配送コストの向上が図れるか否かを判断する。
【０１２４】
検討した配送先３２ｆが移動しなかった場合には、次の配送順の配送先３２ａについて検討する。このようにして、３番目の配送先まで検討する。これにより、最善の正式配送経路を選択することかできる。以上のような移動による改善を更に何回か行う。（予め与えられた回数に到達した時点、または全く改善がなされなかった時点で終了する。）
この段階で、上記の移動によって配送時間にゆとりが生じ、しかも元々積載容量にゆとりがある場合は、更に配送先を追加するという考え方を導入することも可能である。
【０１２５】
図２０は、配送計画案の一例を示す図である。この例では、図６に示すような配送先検討順序１５が決定されているものとする。また、これは染色体５０−１（図１２参照）の示す探索条件に従って作成された配送計画案である。このように、各配送車６１，・・・，６４がどの配送先をどのような順番で巡回するのかを示す情報が含まれている。
【０１２６】
具体的には、配送車６１は「配送センタ３１→配送先３２ｈ→配送先３２ｃ→配送先３２ｇ→配送センタ３１」のように巡回し、配送車６２は「配送センタ３１→配送先３２ｆ→配送先３２ａ→配送先３２ｊ→配送センタ３１」のように巡回し、配送車６３は「配送センタ３１→配送先３２ｂ→配送先３２ｄ→配送センタ３１」のように巡回し、配送車６４は「配送センタ３１→配送先３２ｉ→配送先３２ｅ→配送センタ３１」のように巡回する。
【０１２７】
上記のような配送計画案において、例えば、配送車６３の巡回ルートを見ると、配送先３２ｂの次は配送先３２ｄに向かうルートになっていて、配送先３２ｂから山３３の反対側に位置する配送先３２ｉに向かうようなルートは作成されていない。これは、配送先３２ｂの次の検討対象配送先が、配送センタ３１を原点とした極座標上で近接する配送先３２ｉではなく、配送先検討順序１５で示される経路上の配送先３２ｄであることから得られた結果である。
【０１２８】
また、配送車６１の巡回ルートでは、配送先３２ｃの次に配送先３２ｇに向かうルートになっていて、配送先３２ｃから道３４に沿って迂回した場所に位置する配送先３２ｊに向かうようなルートは作成されていない。これも上記と同様に、配送先３２ｃの次の検討対象配送先が、極座標上で近接する配送先３２ｊではなく、配送先検討順序１５で示される経路上の配送先３２ｇであることから得られた結果である。
【０１２９】
このように、予め配送先検討順序１５によって全配送先を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、その経路に沿って配送先への荷物を検討対象配送車に積むべきか否かの検討を行っていくことで、現実的な近接性を考慮した配送計画を導出することが可能になる。
【０１３０】
（第２の実施の形態）
次に、第２の実施の形態について説明する。
図２１は、第２の実施の形態の最適化装置の原理構成図である。
【０１３１】
この最適化装置に最適化問題が入力されると、解探索方針最適化手段７１は、与えられた最適化問題の解を構成する要素を、空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、解探索方針を示す染色体８１ａ，８２ａ，８３ａ，・・・に、上記第１の要素種の要素の検討順序および第２の要素種の要素の検討順序を表す情報８１ｂ，８２ｂ，８３ｂ，・・・を格納して、染色体８１ａ，８２ａ，８３ａ，・・・を有する個体８１，８２，８３，・・・を生成する。そして、これらをまとめた個体群８０を、解探索手段７２に渡す。染色体８１ａ，８２ａ，８３ａ，・・・が示す解探索方針は、解探索方針最適化手段７１において、遺伝的アルゴリズムを通して最適化されていく。
【０１３２】
解探索手段７２は、個体群８０内の各個体８１，８２，８３，・・・の染色体８１ａ，８２ａ，８３ａ，・・・で示された解探索方針に従って最適化問題の解を探索する。このようにして、個体８１，８２，８３，・・・に対する解候補９０ａ，９０ｂ，９０ｃ，・・・を生成する。このとき、解候補９０ａは個体８１に基づき、解候補９０ｂは個体８２に基づき、解候補９０ｃは個体８３に基づき、それぞれ独立に生成される。そして、解候補９０ａ，９０ｂ，９０ｃ，・・・をまとめた解候補群９０を解探索方針最適化手段７１に渡す。
【０１３３】
解探索方針最適化手段７１は、解候補群９０の各解候補９０ａ，９０ｂ，９０ｃ，・・・の適応度関数値を求める。そして、さらに次の世代の解候補を探索する必要があれば、適応度関数値を用いて個体８１，８２，８３，・・・から個体対を選択し、個体対のそれぞれが持つ染色体間で交叉を行い、交叉によって生成された個体の染色体に対して突然変異の処理を施す。このように生成された複数の個体を、次の世代の個体群として解探索手段７２に渡す。一方、次の世代の解候補を探索する必要がなければ、適応度関数値の最も良い解候補を、この最適化問題の解とする。なお、多くの場合、この解は厳密な意味の最適解ではなく、予め定められた許容範囲内にある許容解（最適解ではないが、採用できる解）である。
【０１３４】
このように、解探索方針を示す染色体８１ａ，８２ａ，８３ａ，・・・に、第１の要素種の要素の検討順序および第２の要素種の要素の検討順序を表す情報８１ｂ，８２ｂ，８３ｂ，・・・を格納して、遺伝的アルゴリズムを用いて解探索方針の最適化を行うことで、広範囲の解探索空間から良好な解の探索を行うことができる。
【０１３５】
次に、上記の最適化装置を適用した配送計画装置を用いて、配送計画問題の解を求める配送計画システムについて説明する。
図２２は、配送計画システム全体の概略構成を示すブロック図である。第１の実施の形態での配送計画システムと同じものには同じ番号を付し、説明を省略する。
【０１３６】
この配送計画システムは、配送計画装置２００を中心に構成されている。この配送計画装置２００は、遺伝的アルゴリズムと逐次添加的および逐次改善的手法とを用いて配送計画の計算を行う。配送計画の計算を行う際には、配送計画装置２００に対して、シミュレーション条件９１、地図情報９２、配送先／配送車情報９３、および出荷データ９４を入力する。配送計画の計算結果は、ルート表示部９５とタイムチャート表示部９６に送られる。
【０１３７】
第２の実施の形態の最適化装置および配送計画装置２００も、第１の実施の形態と同様に、図３に示すようなハードウェア構成で実現することができる。
図２３は配送計画装置の内部構成を示すブロック図である。
【０１３８】
配送計画装置２００内には、遺伝的アルゴリズムにより、配送先へ割当てる検討対象配送車の順序等の解探索方針を最適化する検討要素選択方針決定手段２１０と、指定された解探索方針に従って逐次添加的および逐次改善的手法により配送計画案を作成する配送計画作成手段２２０とが設けられている。
【０１３９】
検討要素選択方針決定手段２１０は、配送車割当順序および配送先検討順序決定手段２１１を有している。配送車割当順序および配送先検討順序決定手段２１１は、遺伝的アルゴリズムによる処理機能を有しており、解探索方針を染色体で示す個体の群に対して、選択、交叉、および突然変異の操作を繰り返し行う。これにより、個体群の子孫を順次生成する。解探索方針としては、配送先に割当てる検討対象配送車の順序、最初の配送車の検討を行う際に、初めに検討対象とすべき配送先の指定、配送先の検討を順次行う際の配送先の選択方向指定、および第２の実施の形態で新たに加わる配送先の検討順序列である。
【０１４０】
配送車割当順序および配送先検討順序決定手段２１１が選択を行う際には、その世代の個体群を配送計画作成手段２２０に渡し、各個体に対応して作成された配送計画案を配送計画作成手段２２０から受け取る。この配送計画案の各々から適応度関数値を計算し、適応度関数値に基づいて選択を行い、次世代を生成するための（次世代を生成するために本世代で交叉を行う対象である）個体対を作る。また、処理の終了条件を満たした場合には、その世代の中で適応度関数値の大きい配送計画案を解とする。
【０１４１】
配送計画作成手段２２０は、各個体に対応した仮配送経路を作成する配送経路立案手段２２１と、上記仮配送経路を受け取って時間が最短となるような改善を加える配送経路改善手段２２２とを有している。
【０１４２】
配送経路立案手段２２１は、配送車割当順序および配送先検討順序決定手段２１１から送られたある世代の個体群を受け取ると、個体の部分染色体に示されている順番で検討対象の配送車を選択する。続いて、検討対象の配送車について、個体の部分染色体に示された配送先の順番に従って荷物を載せるかどうか検討を行い、検討対象配送車を配送先に割当てた正式配送経路を作成する。
【０１４３】
配送経路改善手段２２２は、正式配送経路を受け取り、各配送車が配送すべき配送先の配送順の入替えを行い、時間が最短になるような配送順の発見を図る。改善が加えられた配送経路が、最終的に求める配送経路となる。同様にして、全ての配送車に対する最終的に求める配送経路を確定し、配送計画案が作成される。そして、各個体に対応して作成した配送計画案を検討要素選択方針決定手段２１０に送る。
【０１４４】
以上のような配送計画システムにより、遺伝的アルゴリズムと逐次添加的および逐次改善的手法とを組み合わせて、最適解を探索する。以下に配送計画問題の具体例を用いて、上記の配送計画システムの処理手順を説明する。
【０１４５】
説明に用いる配送計画問題の例は、第１の実施の形態で説明した図５と同様にし、このような配送計画問題の例に対する制約条件、適応度関数ｆおよび選択確率も第１の実施の形態と同様とする。また、遺伝子の操作についても、第１の実施の形態と同様に、交叉には２点交叉を用い、突然変異は２遺伝子の交換とする。
【０１４６】
以上のような情報が配送計画装置２００に入力された後、配送計画の最適解の探索が開始される。最適解の探索に先立ち、配送車割当順序および配送先検討順序決定手段２１１の遺伝的アルゴリズム処理機能は、与えられた配送計画問題に対応した個体群を生成する。
【０１４７】
ここで、上記の個体群を構成する個体が有する染色体について説明する。
図２４は、染色体の構成を示す図である。この染色体１５０は、１６個の遺伝子を有している。染色体１５０は４つの部分染色体から構成されており、遺伝子１５１、遺伝子１５２、遺伝子１５３，・・・，１５６、および遺伝子１５７，・・・，１６６がそれぞれ一つの部分染色体を形成している。なお、図中では染色体１５０を構成する各遺伝子１５１，・・・，１６６の具体的な値を記しているが、実際には染色体１５０は、このような値を持つ特定の染色体ではなく、この配送計画問題で生成される一般的な染色体を示すものとする。
【０１４８】
配送先検討方向１５０ａは、遺伝子１５１からなる部分染色体であり、「＋」あるいは「−」のいずれかの値が設定される。第１の実施の形態の配送先検討方向５０ａでは、遺伝的アルゴリズムとは別個に算出した配送先検討順序１５に対する操作を意味したが、第２の実施の形態の配送先検討方向１５０ａでは、染色体１５０の部分染色体である配送先検討順序１５０ｄに対する操作を意味する。即ち、遺伝子１５１が「＋」のときは、配送先検討順序１５０ｄの左から右に向かって配送先の検討を行い（右端に到達したら、右端が左端につながっていると考え、左端より右に向かって引き続き配送先の検討を行う）、遺伝子１５１が「−」のときは、配送先検討順序１５０ｄの右から左に向かって配送先の検討を行う（左端に到達したら、左端が右端に繋がっていると考え、右端より左に向かって引き続き配送先の検討を行う）。
【０１４９】
検討開始配送先１５０ｂは、遺伝子１５２からなる部分染色体であり、配送先番号（１，・・・，１０のいずれか）が設定される。１番目に検討を行う配送車に乗せる荷物の検討は、配送先検討順序１５０ｄにおいて、この遺伝子１５２に設定された配送先番号の配送先に対して配送する荷物から開始する。
【０１５０】
配送車割当順序１５０ｃは、遺伝子１５３，・・・，１５６からなる部分染色体であり、内容は第１の実施の形態の配送車割当順序５０ｃと同様のため、説明を省略する。
配送先検討順序１５０ｄは、遺伝子１５７，・・・，１６６からなる部分染色体であり、それぞれの遺伝子には配送先番号が設定され、与えられた配送先の順序列を示す。第１の実施の形態の配送先検討順序１５は、染色体５０とは別個に存在し、一度算出された後は変わることがなかったが、第２の実施の形態の配送先検討順序１５０ｄは、染色体１５０の部分染色体であり、遺伝的アルゴリズムの過程で最適化されていく。
【０１５１】
次に、配送計画装置２００が最適解を探索する処理手順について、フローチャートを用いて説明する。
図２５は、配送車割当順序および配送先検討順序決定手段の処理手順を示すフローチャートである。
【０１５２】
ここでは、第１の実施の形態における配送先検討順序１５を決定する処理（図９のフローチャートのステップＳ１）が不要になる。ステップＳ１０１，・・・，Ｓ１０５の各処理は、それぞれ図９のフローチャートに示したステップＳ２，・・・，Ｓ６の処理と同様であるため、説明を省略する。
【０１５３】
図２６は、集団の初期化の処理手順（図２５のステップＳ１０１）を示すフローチャートである。このフローチャートは、第１の実施の形態の図１０のフローチャートに対応する。両フローチャートを比較すると、以下のような相違点がある。
【０１５４】
第１に、初期化の対象が、配送車割当順序５０ｃから配送車割当順序１５０ｃに、検討開始配送先５０ｂが検討開始配送先１５０ｂに、また配送先検討方向５０ａが配送先検討方向１５０ａにそれぞれ変更されることである。
【０１５５】
第２に、図２６のフローチャートでは、ステップＳ１１５が追加されることである。ステップＳ１１５では、配送先検討順序１５０ｄの初期化が行われる。ここでは、第１の実施の形態と同様に、例えばＬｉｎ−Ｋｅｒｎｉｇｈａｎの方法によって求められた全配送先を結ぶ最短経路（所定のアルゴリズムで検討した経路のなかで最も距離の短い経路）を初期値とする。
【０１５６】
他の処理は、図１０のフローチャートに示した処理と同様である。具体的には、ステップＳ１１１，・・・，Ｓ１１４の各処理は、それぞれ図１０のステップＳ１１，・・・，Ｓ１４の処理と同じであり、ステップＳ１１６，Ｓ１１７の各処理は、それぞれ図１０のステップＳ１５，Ｓ１６の処理と同じである。これらの図１０のフローチャートに示した処理と同様の処理については説明を省略する。
【０１５７】
なお、配送先検討順序１５０ｄの初期値は、上記のような最短経路をある程度変更（例えばランダムに変更）したものに設定することもできる。また、完全にランダムな値とすることもできる。さらに、染色体１５０毎に、これらの初期値のいずれかを用いることにより、複数タイプの初期値で染色体集団を構成することもできる。
【０１５８】
選択処理（図２５のステップＳ１０２）の詳細は、配送車割当順序および配送先検討順序決定手段２１１によって行われることと、配送計画作成手段１２０が配送計画作成手段２２０に変更になること以外は、第１の実施の形態における図１１のフローチャートに示した処理と同様のため、図２５のステップＳ１０２の説明およびフローチャートの図示は省略する。
【０１５９】
図２７は、配送車割当て順序および配送車検討順序決定手段が配送計画作成手段に与える個体およびその染色体と、配送計画作成手段から受け取る配送計画案の組の例を示す図である。配送計画案１４１，１４２，１４３は、配送計画作成手段２２０から送られてくる。配送計画案１４１，１４２，１４３から適応度関数値を求めることにより、染色体１５０−１，１５０−２，１５０−３を評価することができる。
【０１６０】
以上が、検討要素選択方針決定手段２１０の処理手順である。次に、配送計画作成手段２２０の処理手順を説明する。
図２８は、配送計画作成手段の処理手順を示すフローチャートである。このフローチャートは、第１の実施の形態の図１３のフローチャートに対応する。また、このフローチャートの各ステップは、特に断らない限り、配送経路立案手段２２１によって処理される。
【０１６１】
［Ｓ１３１］ｉの初期値として、「１」を設定する。ｉは、検討対象配送車を指定するための数値である。配送車割当順序１５０ｃにおいて、図２４中の左からｉ番目の遺伝子で示された番号の配送車が、検討対象配送車となる。
【０１６２】
［Ｓ１３２］配送車割当順序１５０ｃにおいて、配送車割当順序１５０ｃ内のｉ番目の遺伝子を選択する。この場合ｉは、染色体１５０の配送車割当順序１５０ｃに内包される遺伝子を左側から数えた場合の順序に対応しており、遺伝子１５３が１番目、以下、遺伝子１５４、遺伝子１５５、遺伝子１５６が、それぞれ２番目、３番目、４番目に対応する。
【０１６３】
他のステップＳ１３３，・・・，Ｓ１３６の処理については、それぞれ図１３のフローチャートに示したステップＳ３３，・・・，Ｓ３６の処理と同様であるため、説明を省略する。
【０１６４】
図２９は、検討対象の配送車の積荷の検討処理（図２８のステップＳ１３３）の詳細を示すフローチャートである。このフローチャートは、第１の実施の形態の図１４のフローチャートに対応する。
【０１６５】
［Ｓ１４１］初期化処理を行う。初期化処理では、まだいずれの配送車も割当てられていない配送先に対する未割当配送先検討順序を示す番号の設定、ｊの初期値設定、およびｊｍａｘの設定が行われる。未割当配送先検討順序、ｊ、およびｊｍａｘの意味については、第１の実施の形態と同様である。
【０１６６】
未割当配送先検討順序を示す番号の設定処理については、第２の実施の形態では、部分染色体である配送先検討順序１５０ｄを対象として処理が行われる。さらに、いずれの配送車も割当てられていない配送先の検索の際、検索方向は配送先検討方向１５０ａに従い、検索のスタート位置（ｉが１のときは、未割当配送先検討順序を示す番号として１を設定される配送先）は検討開始配送先１５０ｂに従う。
【０１６７】
他の処理（ｊの初期値設定およびｊｍａｘの設定）については、第１の実施の形態の図１４に示したフローチャートのステップＳ４１の内容と同様のため、説明を省略する。また、このフローチャートのステップＳ１４２，・・・，Ｓ１４７の処理については、第１の実施の形態の図１４に示したフローチャートに示したステップＳ４２，・・・，Ｓ４７の処理と同様であるため、説明を省略する。
【０１６８】
検討対象配送先への配送に関する検討の処理（図２９のステップＳ１４３）の詳細は、第１の実施の形態の図１６のフローチャートに示した処理と同様であるため、説明を省略する。
【０１６９】
最短経路探索の処理の詳細については、第１の実施の形態の図１７のフローチャートに示した処理と同様であるため、説明を省略する（第１の実施の形態では、具体的な例を挙げて説明しているが、処理の内容自体は第２の実施の形態でも同様である）。
【０１７０】
正式配送経路の改善（図２９のステップＳ１４７）の詳細については、第１の実施の形態と同様であるため、説明を省略する（第１の実施の形態では、具体的な例を挙げて説明しているが、処理の内容自体は第２の実施の形態でも同様である）。
【０１７１】
このように、配送先の順序列である配送先検討順序を染色体に格納して、遺伝的アルゴリズムを通して最適化していくことで、現実的な近接性を考慮した配送計画を導出することが可能になり、しかも、第１の実施の形態と比較して、より多様な解探索を行うことが可能となる。
【０１７２】
なお、上記の説明では、染色体１５０の部分染色体である検討開始配送先１５０ｂには配送先番号が設定されるとして説明したが、次のように設定することもできる。即ち、配送先検討順序１５０ｄの左端または右端に位置する遺伝子を先頭として位置番号「１」とし、その隣の遺伝子が「２」、次の遺伝子が「３」というように、それぞれの遺伝子に対して先頭から順に数えた位置番号を振っていくことで、検討開始配送先１５０ｂの設定値を、所望の配送先番号が設定された遺伝子の位置番号で表すこともできる（例えば図２４において、配送先検討順序１５０ｄの左端を先頭とすると、遺伝子１５８を示す検討開始配送先１５０ｂには、配送先番号「７」の代わりに遺伝子１５８の位置番号「２」が設定される）。また、他の方法として、最初の検討対象配送車での検討を配送先検討順序１５０ｄの右端か左端のいずれかから検討を開始するとして、検討開始配送先１５０ｂを不要とすることもできる。
【０１７３】
また、上記の説明では、配送先検討順序１５０ｄは、全ての配送先の順序列からなるとして説明したが、明らかに順序を決定できるような部分が存在する場合は、その部分を構成する配送先の順序を固定しておき、残りの配送先について決定した順序列を配送先検討順序１５０ｄとしてもよい。また、遺伝的アルゴリズムによる最適化の過程で、配送先検討順序１５０ｄを構成する遺伝子に変化のないような箇所が現れた場合は、その箇所を遺伝的アルゴリズムの途中で固定し、残りの部分について最適化を行っていくこともできる。
【０１７４】
また、上記の説明では、個体の有する染色体は一つであり、複数の部分染色体から構成されるとして説明したが、部分染色体をそれぞれ独立した染色体として扱うことで、個体が複数の染色体を有するものとして構成することも可能である。
【０１７５】
また、上記の説明では、配送コストの低減を目的として適応度関数を定義したが、例えば、配送の負荷バランスの観点から適応度関数を定義することもできる。また、各々の場合に、配送車台数制約以外の制約条件も合わせて考えた制約条件満足度の観点から、適応度関数を定義することもできる。制約条件満足度には、例えば、配送指定時間の遵守がある。なお、配送コストの低減と制約条件満足度とを組み合わせて、双方を適度に満足するような適応度関数を定義してもよい。
【０１７６】
また、上記の説明では、まだいずれの配送車も割当てられていない各配送先に対して、配送先検討順序を示す番号を設定する処理（図１４のステップＳ４１）において、ｉがｍ（ｍは２以上の自然数）の場合、検討開始配送先５０ｂの示す配送先（単なるスタート位置となる）から開始して配送先検討順序を配送先検討方向５０ａに示す方向に検索するものとしているが、検索のスタート位置となる配送先を任意に設定することもできる。例えば、直前の検討対象配送車において最後に検討された配送先を検索のスタート位置としてもよい。
【０１７７】
また、上記第１の実施の形態の最適化装置と配送計画装置１００、および上記第２の実施の形態の最適化装置と配送計画装置２００の処理機能は、コンピュータによって実現することができる。その場合、配送計画システムが有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disc）などがある。
【０１７８】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１７９】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１８０】
（付記１）  最適化問題の解を求める最適化プログラムにおいて、
コンピュータを、
前記最適化問題の解を構成する要素を、空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、前記最適化問題の解探索方針を示す染色体に、前記第１の要素種の要素の検討順序を表す情報を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する解探索方針最適化手段、
前記第２の要素種の各要素を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った前記第２の要素種の配列を要素種検討順序として決定する順序検討手段、
個々の前記解探索方針および前記要素種検討順序に従って個々の解探索を行い、解候補を生成する解探索手段、
として機能させることを特徴とする最適化プログラム。
【０１８１】
（付記２）  最適化問題の解を求める最適化プログラムにおいて、
コンピュータを、
前記最適化問題の解を構成する要素を、空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、前記最適化問題の解探索方針を示す染色体に、前記第１の要素種の要素の検討順序および前記第２の要素種の要素の検討順序を表す情報を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する解探索方針最適化手段、
個々の前記解探索方針に従って個々の解探索を行い、解候補を生成する解探索手段、
として機能させることを特徴とする最適化プログラム。
【０１８２】
（付記３）  最適化問題の解を求める最適化装置において、
前記最適化問題の解を構成する要素を、空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、前記最適化問題の解探索方針を示す染色体に、前記第１の要素種の要素の検討順序を表す情報を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する解探索方針最適化手段と、
前記第２の要素種の各要素を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った前記第２の要素種の配列を要素種検討順序として決定する順序検討手段、
個々の前記解探索方針および前記要素種検討順序に従って個々の解探索を行い、解候補を生成する解探索手段と、
を有することを特徴とする最適化装置。
【０１８３】
（付記４）  最適化問題の解を求める最適化装置において、
前記最適化問題の解を構成する要素を空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、前記最適化問題の解探索方針を示す染色体に、前記第１の要素種の要素の検討順序および前記第２の要素種の要素の検討順序を表す情報を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する解探索方針最適化手段と、
個々の前記解探索方針に従って個々の解探索を行い、解候補を生成する解探索手段と、
を有することを特徴とする最適化装置。
【０１８４】
（付記５）  配送計画問題の解を求める配送計画プログラムにおいて、
コンピュータを、
前記配送計画問題の解探索方針を示す染色体に、配送車の順序列である配送車割当順序を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する配送車割当順序決定手段、
配送先を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った前記配送先の配列を配送先検討順序として決定する配送先検討順序決定手段、
個々の前記解探索方針および前記配送先検討順序に従って個々の解探索を行い、解候補を生成する配送計画作成手段、
として機能させることを特徴とする配送計画プログラム。
【０１８５】
（付記６）  前記配送車割当順序決定手段は、前記解探索方針として、配送先検討方向、検討開始配送先、および配送車割当順序を指定することを特徴とする付記５記載の配送計画プログラム。
【０１８６】
（付記７）  前記配送計画作成手段は、複数の前記個体および前記配送先検討順序に従って正式配送経路を作成する配送経路立案手段と、前記正式配送経路に改善を加えて配送計画案を作成する配送経路改善手段とからなることを特徴とする付記５記載の配送計画プログラム。
【０１８７】
（付記８）  配送計画問題の解を求める配送計画プログラムにおいて、
コンピュータを、
前記配送計画問題の解探索方針を示す染色体に、配送車の順序列である配送車割当順序および配送先の順序列である配送先検討順序を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する配送車割当順序決定手段、
個々の前記解探索方針に従って個々の解探索を行い、解候補を生成する配送計画作成手段、
として機能させることを特徴とする配送計画プログラム。
【０１８８】
（付記９）  前記配送車割当順序決定手段は、前記解探索方針として、配送先検討方向、検討開始配送先、配送車割当順序、および前記配送先検討順序を指定することを特徴とする付記８記載の配送計画プログラム。
【０１８９】
（付記１０）  前記配送先検討順序は、配送先を結ぶ略最短経路、配送先のランダムな順序列、前記略最短経路の一部を変更した順序列のいずれかであることを特徴とする付記８記載の配送計画プログラム。
【０１９０】
（付記１１）  配送計画問題の解を求める配送計画装置において、
前記配送計画問題の解探索方針を示す染色体に、配送車の順序列である配送車割当順序を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する配送車割当順序決定手段と、
配送先を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った前記配送先の配列を配送先検討順序として決定する配送先検討順序決定手段と、
個々の前記解探索方針および前記配送先検討順序に従って個々の解探索を行い、解候補を生成する配送計画作成手段と、
を有することを特徴とする配送計画装置。
【０１９１】
（付記１２）  配送計画問題の解を求める配送計画装置において、
前記配送計画問題の解探索方針を示す染色体に、配送車の順序列である配送車割当順序および配送先の順序列である配送先検討順序を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する配送車割当順序決定手段と、
個々の前記解探索方針に従って個々の解探索を行い、解候補を生成する配送計画作成手段と、
を有することを特徴とする配送計画装置。
【０１９２】
（付記１３）  最適化問題の解を求める処理をコンピュータに機能させるプログラムを格納したコンピュータ読取り可能な記録媒体において、
コンピュータを、
前記最適化問題の解を構成する要素を空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、前記最適化問題の解探索方針を示す染色体に、前記第１の要素種の要素の検討順序を表す情報を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する解探索方針最適化手段、
前記第２の要素種の各要素を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った前記第２の要素種の配列を要素種検討順序として決定する順序検討手段、
個々の前記解探索方針および前記要素種検討順序に従って個々の解探索を行い、解候補を生成する解探索手段、
として機能させるプログラムを記録したコンピュータ読取り可能な記録媒体。
【０１９３】
（付記１４）  最適化問題の解を求める処理をコンピュータに機能させるプログラムを格納したコンピュータ読取り可能な記録媒体において、
コンピュータを、
前記最適化問題の解を構成する要素を空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、前記最適化問題の解探索方針を示す染色体に、前記第１の要素種の要素の検討順序および前記第２の要素種の要素の検討順序を表す情報を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する解探索方針最適化手段、
個々の前記解探索方針に従って個々の解探索を行い、解候補を生成する解探索手段、
として機能させるプログラムを記録したコンピュータ読取り可能な記録媒体。
【０１９４】
（付記１５）  配送計画問題の解を求める処理をコンピュータに記録させるプログラムを格納したコンピュータ読取り可能な記録媒体において、
コンピュータを、
前記配送計画問題の解探索方針を示す染色体に、配送車の順序列である配送車割当順序を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する配送車割当順序決定手段、
配送先を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った前記配送先の配列を配送先検討順序として決定する配送先検討順序決定手段、
個々の前記解探索方針および前記配送先検討順序に従って個々の解探索を行い、解候補を生成する配送計画作成手段、
として機能させるプログラムを記録したコンピュータ読取り可能な記録媒体。
【０１９５】
（付記１６）  配送計画問題の解を求める処理をコンピュータに記録させるプログラムを格納したコンピュータ読取り可能な記録媒体において、
コンピュータを、
前記配送計画問題の解探索方針を示す染色体に、配送車の順序列である配送車割当順序および配送先の順序列である配送先検討順序を格納して、前記染色体を有する個体を生成し、前記解探索方針を遺伝的アルゴリズムで最適化する配送車割当順序決定手段、
個々の前記解探索方針に従って個々の解探索を行い、解候補を生成する配送計画作成手段、
として機能させるプログラムを記録したコンピュータ読取り可能な記録媒体。
【０１９６】
（付記１７）  最適化問題の解を求める最適化方法において、
前記最適化問題の解を構成する要素を空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、
前記最適化問題の解探索方針を示す染色体に、前記第１の要素種の要素の検討順序を表す情報を格納して、前記染色体を有する個体を生成し、
配送先を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った前記配送先の配列を、配送先検討順序として決定し、
個々の前記解探索方針および前記要素種検討順序に従って個々の解探索を行い、前記個体に対応した解候補を生成し、
予め定義された適応度関数で前記解候補の適応度を判断し、前記解探索方針を遺伝的アルゴリズムで最適化する
ことを特徴とする最適化方法。
【０１９７】
（付記１８）  最適化問題の解を求める最適化方法において、
前記最適化問題の解を構成する要素を空間内に固定されていない第１の要素種と、所定の空間内に固定されて存在する第２の要素種とに分け、
前記最適化問題の解探索方針を示す染色体に、前記第１の要素種の要素の検討順序および前記第２の要素種の要素の検討順序を表す情報を格納して、
前記染色体を有する個体を生成し、
個々の前記解探索方針に従って個々の解探索を行い、前記個体に対応した解候補を生成し、
予め定義された適応度関数で前記解候補の適応度を判断し、前記解探索方針を遺伝的アルゴリズムで最適化する
ことを特徴とする最適化方法。
【０１９８】
（付記１９）  配送計画問題の解を求める配送計画方法において、
前記配送計画問題の解探索方針を示す染色体に、配送車の順序列である配送車割当順序を格納して、前記染色体を有する個体を生成し、
配送先を結ぶ経路のうち距離が最も短くなる経路を所定のアルゴリズムで求め、求めた経路に沿った前記配送先の配列を、配送先検討順序として決定し、
個々の前記解探索方針および前記配送先検討順序に従って個々の解探索を行い、前記個体に対応した解候補を生成し、
予め定義された適応度関数で前記解候補の適応度を判断し、前記解探索方針を遺伝的アルゴリズムで最適化する
ことを特徴とする配送計画方法。
【０１９９】
（付記２０）  配送計画問題の解を求める配送計画方法において、
前記配送計画問題の解探索方針を示す染色体に、配送車の順序列である配送車割当順序および配送先の順序列である配送先検討順序を格納して、
前記染色体を有する個体を生成し、
個々の前記解探索方針に従って個々の解探索を行い、前記個体に対応した解候補を生成し、
予め定義された適応度関数で前記解候補の適応度を判断し、前記解探索方針を遺伝的アルゴリズムで最適化する
ことを特徴とする配送計画方法。
【図面の簡単な説明】
【０２００】
【図１】第１の実施の形態の最適化装置の原理構成図である。
【図２】配送計画システム全体の概略構成を示すブロック図である。
【図３】配送計画装置のハードウェア構成例である。
【図４】配送計画装置の内部構成を示すブロック図である。
【図５】配送計画問題の配送センタ、配送先、および配送車を示す図である。
【図６】配送先検討順序の一例を示す図である。
【図７】図６で示した配送先検討順序の内容を示す図である。
【図８】染色体の構成を示す図である。
【図９】検討要素選択方針決定手段の処理手順を示すフローチャートである。
【図１０】集団の初期化の処理手順（図９のステップＳ２）を示すフローチャートである。
【図１１】選択処理手順（図９のステップＳ３）を示すフローチャートである。
【図１２】図１１のステップＳ２１において、配送車割当順序決定手段が配送計画作成手段に与える個体およびその染色体と、配送計画作成手段から受け取る配送計画案の組の例を示す図である。
【図１３】配送計画作成手段の処理手順を示すフローチャートである。
【図１４】検討対象の配送車の積荷の検討処理（図１３のステップＳ３３）の詳細を示すフローチャートである。
【図１５】検討対象配送車の積荷の検討処理の進行状況を示す図である。
【図１６】検討対象配送先への配送に関する検討の処理（図１４のステップＳ４３）の詳細を示すフローチャートである。
【図１７】最短経路探索の処理（図１６のステップＳ５６）の詳細を示すフローチャートである。
【図１８】最短経路探索の処理内容を説明する図である。
【図１９】図１４のステップＳ４７における処理内容を説明する図である。
【図２０】配送計画案の一例を示す図である。
【図２１】第２の実施の形態の最適化装置の原理構成図である。
【図２２】配送計画システム全体の概略構成を示すブロック図である。
【図２３】配送計画装置の内部構成を示すブロック図である。
【図２４】染色体の構成を示す図である。
【図２５】配送車割当順序および配送先検討順序決定手段の処理手順を示すフローチャートである。
【図２６】集団の初期化の処理手順（図２５のステップＳ１０１）を示すフローチャートである。
【図２７】配送車割当て順序および配送車検討順序決定手段が配送計画作成手段に与える個体およびその染色体と、配送計画作成手段から受け取る配送計画案の組の例を示す図である。
【図２８】配送計画作成手段の処理手順を示すフローチャートである。
【図２９】検討対象の配送車の積荷の検討処理（図２８のステップＳ１３３）の詳細を示すフローチャートである。
【図３０】従来の配送計画システムの走査状況を示す図である。
【符号の説明】
【０２０１】
１  解探索方針最適化手段
１ａ  順序検討手段
２  解探索手段
３  個体群
３ａ，３ｂ，３ｃ，・・・  個体
４  解候補群
４ａ，４ｂ，４ｃ，・・・  解候補
５  要素種検討順序
１５  配送先検討順序
３１  配送センタ
３２ａ，・・・，３２ｊ  配送先
５０  染色体
７１  解探索方針最適化手段
７２  解探索手段
８０  個体群
８１，８２，８３，・・・  個体
８１ａ，８２ａ，８３ａ，・・・  染色体
８１ｂ，８２ｂ，８３ｂ，・・・  第２の要素種の要素の検討順序を表す情報
９０  解候補群
９０ａ，９０ｂ，９０ｃ，・・・  解候補
１００  配送計画装置
１１０  検討要素選択方針決定手段
１１１  配送車割当順序決定手段
１１２  配送先検討順序決定手段
１５０  染色体
１５０ｄ  配送先検討順序
２００  配送計画装置
２１０  検討要素選択方針決定手段
２１１  配送車割当順序および配送先検討順序決定手段
２２０  配送計画作成手段
【図１】
2005084848.tif 000003
【図２】
2005084848.tif 000004
【図３】
2005084848.tif 000005
【図４】
2005084848.tif 000006
【図５】
2005084848.tif 000007
【図６】
2005084848.tif 000008
【図７】
2005084848.tif 000009
【図８】
2005084848.tif 000010
【図９】
2005084848.tif 000011
【図１０】
2005084848.tif 000012
【図１１】
2005084848.tif 000013
【図１２】
2005084848.tif 000014
【図１３】
2005084848.tif 000015
【図１４】
2005084848.tif 000016
【図１５】
2005084848.tif 000017
【図１６】
2005084848.tif 000018
【図１７】
2005084848.tif 000019
【図１８】
2005084848.tif 000020
【図１９】
2005084848.tif 000021
【図２０】
2005084848.tif 000022
【図２１】
2005084848.tif 000023
【図２２】
2005084848.tif 000024
【図２３】
2005084848.tif 000025
【図２４】
2005084848.tif 000026
【図２５】
2005084848.tif 000027
【図２６】
2005084848.tif 000028
【図２７】
2005084848.tif 000029
【図２８】
2005084848.tif 000030
【図２９】
2005084848.tif 000031
【図３０】
2005084848.tif 000032