(57)【要約】【課題】配送順決定の処理を簡単化して通常のパーソナルコンピュータ等を用いて短時間で計算可能にすること。また、データ入力を減らし、運用工数を従来に比べて少なくすること。【解決手段】ＣＰＵ２１が、配送先情報と車両情報とに基いて配送先をグループ分けし、該グループ分けされた配送先を配送起点より最も遠い配送先を最初の順序決定地点とし、前記最初の順序決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点とし、以下順次前記直前の順位決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点として順序決定し、該決定した各順序決定地点の順序を荷積順とし、前記順序の逆順を配送順とする構成を特徴とする。【選択図】図１
2007008670.tif 000002
【特許請求の範囲】
【請求項１】
配送当日の配送先を特定する配送先情報を記憶する配送先記憶手段と、
前記配送当日の各配送先間の直線距離を記憶する配送先間距離記憶手段と、
前記配送先に配送する配送品を特定する配送品情報を記憶する配送品記憶手段と、
配送当日の稼動可能車両の台数を含む稼動台数情報を記録する車両情報記憶手段と、
前記配送先情報と前記車両情報とに基いて前記配送先をグループ分けする配送先分割手段と、
前記グループ分けされた配送先を配送起点より最も遠い配送先を最初の順序決定地点とし、前記最初の順序決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点とし、以下順次前記直前の順位決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点とする順序決定手段とを備え、
前記順序決定手段が決定した各順序決定地点の順序を荷積順とし、前記順序の逆順を配送順とすることを特徴とする配送順決定装置。
【請求項２】
前記車両情報記憶手段は、配送当日の稼動可能車両の台数を含む稼動台数情報と各稼動車両の積載重量及び積載容積を含む車両情報とを記録するものであり、
前記順序決定手段は、前記各稼動車両の積載重量及び積載容積を上回らない範囲で配送順を決定するものであり、
前記配送先分割手段は、前記各稼動車両の積載重量及び積載容積を上回る配送品に基いて新たな配送先グループを設定することを特徴とする請求項１記載の配送順決定装置。
【請求項３】
前記配送先分割手段は、前記配送先に対して複数通りのグループ分けを行うものであり、
前記順序決定手段は、前記複数通りのグループ分け夫々に応じた配送順を決定するものであり、
前記複数通りのグループ分けに応じた各配送順に基いて、前記各稼動車両の前記配送先間の直線距離の総和を夫々算出し、該各総和が最少となるグループ分けに対応する配送順を選択する選択手段を更に備えることを特徴とする請求項１乃至請求項３記載の配送順決定装置。
【請求項４】
配送当日の配送先を特定する配送先情報を記憶する配送先記憶手段と、前記配送当日の各配送先間の直線距離を記憶する配送先間距離記憶手段と、前記配送先に配送する配送品を特定する配送品情報を記憶する配送品記憶手段と、配送当日の稼動可能車両の台数を含む稼動台数情報を記録する車両情報記憶手段とを有する配送順決定装置における配送順決定方法であって、
前記配送先情報と前記車両情報とに基いて前記配送先をグループ分けする配送先分割ステップと、
前記グループ分けされた配送先を配送起点より最も遠い配送先を最初の順序決定地点とし、前記最初の順序決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点とし、以下順次前記直前の順位決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点とする順序決定ステップと、
前記順序決定ステップで決定した各順序決定地点の順序を荷積順とし、前記順序の逆順を配送順とすることを特徴とする配送順決定方法。
【請求項５】
請求項４に記載された配送順決定方法をコンピュータに実行させるためのプログラム。
【請求項６】
請求項４に記載された配送順決定方法をコンピュータに実行させるためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、配送品を複数の配送先に配送する際の配送順を決定する配送順決定装置および配送順決定方法およびプログラムおよび記録媒体に関する。
【背景技術】
【０００２】
特開平０６−２７３１８１号公報（特許文献１）では、道路の交差点や曲点について、座標変換し、位置、接続、方向を含む経路デ−タでなる道路地図を作成し、配送情報や渋滞状況なども加味して最適経路を決定する経路決定方法が開示されている。
【０００３】
また、特開平０７−２３４９９７号公報（特許文献２）では、配送、実績、統計データに基づき、道路事情の変動の考慮、急なオーダーの変更や取消しに対応した遺伝的ニューロ処理を行い最適の配車計画案を選出する配車計画立案方法が開示されている。
【０００４】
さらに、特開平０８−１１５４９５号公報（特許文献３）では、所定の条件により車両数に対応してエリア全体を動的に複数の塊（分割エリア）に分け、更に各塊内での最短時間の配送ルートを作成する自動配車装置が開示されている。
【０００５】
また、特開２００２−３０８４３９号公報（特許文献４）では、積載許容スペース又は積載許容重量に空きがある車両を適宜組み合わせて配車し、又定期便と非定期便等複数車両の組合せで配車計画を立案する荷物配送システムが開示されている。
【特許文献１】特開平０６−２７３１８１号公報
【特許文献２】特開平０７−２３４９９７号公報
【特許文献３】特開平０８−１１５４９５号公報
【特許文献４】特開２００２−３０８４３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述したように従来の技術では、配送時間を考慮しつつ、道路の交差点や一方通行や右折禁止等の交通規制等を考慮して最適な経路を算出している
そのため、従来の技術では、具体的経路まで算出するために計算時間が長くなってしまう。また、実用的な計算時間を実現しようとすれば、それなりのスペックを備えたハードウェアが必要となり、ハードウェアコストが高くなってしまう。さらに、プログラムが複雑になりソフトウェアのコストも高くなってしまう。
【０００７】
また、従来の技術では、交通規制や混雑状況を基礎データとして与える必要があるため、運用コストが高くなってしまう。
【０００８】
そして、いかに細かいデータを入力して精密な予想をしたとしても、突発的な渋滞（故障車、事故、緊急工事、イベントの催行）等で、計算した配送時間と実際の配送時間は一致しなくなってしまう場合も多いのが現実である。
【０００９】
また、従来の技術では、配送先毎に細かく時間指定をしているため、ドライバにストレスを与え、焦りを生じさせ、交通事故の誘因にもなりかねない。さらに、算定された経路を固守しようとすれば、かえって当日の道路状況に基づく柔軟かつ最適な配送経路選択ができなくなってしまうという多々の問題点があった。
【００１０】
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、配送先情報と車両情報とに基いて配送先をグループ分けし、該グループ分けされた配送先を配送起点より最も遠い配送先を最初の順序決定地点とし、前記最初の順序決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点とし、以下順次前記直前の順位決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点として順序決定し、該決定した各順序決定地点の順序を荷積順とし、前記順序の逆順を配送順とすることにより、配送先のグループ分けと車両割当、配送順を決定する処理を行うだけなので、処理が簡単であるため通常のパーソナルコンピュータ等を用いて短時間で計算可能であり、ハードウェア及びソフトウェア共にコストを安く提供することができ、また、経路情報、交通規制、混雑状況等の細かいデータを入力する必要がなく、データ入力を少なくして運用工数を従来に比べて少なくすることができ、さらに、遠い配送先から優先して配送順を決めて行くので、時間的誤差が生じた場合でも、他の車両によるカバーを容易にすることができる配送順決定装置および配送順決定方法およびプログラムおよび記録媒体を提供することである。
【課題を解決するための手段】
【００１１】
本発明は、配送当日の配送先を特定する配送先情報を記憶する配送先記憶手段と、前記配送当日の各配送先間の直線距離を記憶する配送先間距離記憶手段と、前記配送先に配送する配送品を特定する配送品情報を記憶する配送品記憶手段と、配送当日の稼動可能車両の台数を含む稼動台数情報を記録する車両情報記憶手段と、前記配送先情報と前記車両情報とに基いて前記配送先をグループ分けする配送先分割手段と、前記グループ分けされた配送先を配送起点より最も遠い配送先を最初の順序決定地点とし、前記最初の順序決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点とし、以下順次前記直前の順位決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点とする順序決定手段とを備え、前記順序決定手段が決定した各順序決定地点の順序を荷積順とし、前記順序の逆順を配送順とすることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、配送先情報と車両情報とに基いて配送先をグループ分けし、該グループ分けされた配送先を配送起点より最も遠い配送先を最初の順序決定地点とし、前記最初の順序決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点とし、以下順次前記直前の順位決定地点から最短距離である順序未決定地点か又は前記配送起点から最遠の順序未決定地点を次の順序決定地点として順序決定し、該決定した各順序決定地点の順序を荷積順とし、前記順序の逆順を配送順とするので、配送先のグループ分けと車両割当、配送順を決定する処理を行うだけなので、処理が簡単であるため通常のパーソナルコンピュータ等を用いて短時間で計算可能であり、ハードウェア及びソフトウェア共にコストを安く提供することができる。
【００１３】
また、経路情報、交通規制、混雑状況等の細かいデータを入力する必要がなく、運用工数を従来に比べて少なくすることができる。
【００１４】
さらに、遠い配送先から優先して配送順を決めて行くので、時間的誤差が生じた場合でも、他の車両によるカバーが容易になる。
【００１５】
また、エリア分けと車両割当、配送順を決めるだけなので、当日の道路状況に応じて、ドライバの判断で、柔軟かつ最適な配送経路を選ぶことができる。
【００１６】
さらに、上述したように遠い配送先から優先して決めていくので、未割当てとなる配送先は、物流拠点（倉庫や店舗等）に近いものだけとなり、早く遠方の配送を終えた車両が速やかに荷積みして配送することができる。
【００１７】
また、時間指定がシビアな配送案件は、特定の車両に担当させれば足りる。
【００１８】
さらに、全稼動車両でも、１度では運べない場合、エリア分けを稼動車両＋１車両にすることにより、あふれた荷物について配送起点の最寄エリアを残すことにより決定して、早く遠方の配送を終えた車両が速やかに荷積みして配送することができる等の効果を奏する。
【発明を実施するための最良の形態】
【００１９】
〔第１実施形態〕
図１は、本発明の第１実施形態を示す配送順決定装置を提供可能な情報処理装置のハードウェア構成を示すブロック図である。
【００２０】
本発明の配送順決定装置はを適用可能な情報処理装置はパーソナルコンピュータ等である。この情報処理装置は、図１に示すように、例えば、ＣＰＵ２１と、ＲＡＭ２２と、ＲＯＭ２３と、ＬＡＮアダプタ２４と、ビデオアダプタ２５と、キーボード２６と、マウス２７等のポインティングデバイスと、ハードディスク２８と、ＣＤ−ＲＯＭドライブ２９，ＤＶＤ−ＲＯＭドライブ等の記録媒体ドライブ（記録媒体ドライブ）とを備え、これらがシステムバス２０を介して互いに接続されている。
【００２１】
ＣＰＵ２１は、ＲＯＭ２３、ハードディスク２８、又はＣＤ−ＲＯＭドライブ２９に記憶保存されたプログラムを読み出してＲＡＭ２２上で実行することにより、装置全体を統括制御する。
【００２２】
ＲＡＭ２２は、ＣＰＵ２１の作業領域として使用される。ＬＡＮアダプタ２４は、ネットワークに接続するための通信インターフェースである。ハードディスク２８は、後述する図２，図３に示す各種マスタ及びテーブルやトランザクションデータ（以下トランと略記）及び不図示の商品マスタ（一意の商品コード、商品名称、商品種別（ビール、ウィスキー、ワイン、清酒、焼酎、発泡酒等）、仕入原価、仕入先法人コード）等を記憶管理する。ビデオアダプタ２５には、ＬＣＤ，ＣＲＴ等のモニタ３０が接続されており、モニタ３０への表示を制御している。
【００２３】
以下、本実施形態では、酒問屋から酒屋への配送経路を決定する場合を例にして説明するが、本発明の配送順決定装置はこの例に限られるものではなく、あらゆる配送経路の決定に適用可能である。
【００２４】
以下、図２，図３を参照して、本発明の配送順決定装置において用いる各種テーブル情報について説明する。
【００２５】
図２，図３は、本発明の配送順決定装置において用いる各種テーブルの情報を示す図である。
【００２６】
図２Ａにおいて、６０１はカテゴリマスタであり、配送分を分類化するための情報を格納する。このカテゴリマスタ６０１は、分類１ＣＤ（コード），分類１名称，分類２ＣＤ，分類２名称，分類３ＣＤ，分類３名称等のカラムで構成される。例えば、分類１は、配送元を基準にして長・中・短距離に配送先を分類する。また、分類２は、配送元を基準に方位ブロックを設定して配送先を分対する。さらに、分類３は、店舗の大きさで配送先を分類する等である。
【００２７】
６０２は店舗マスタであり、配送元・各配送先情報を格納する。この店舗マスタ６０２は、分類１ＣＤ，分類２ＣＤ，分類３ＣＤ，店舗ＣＤ，店舗名，住所，電話番号，配送区分，起点間距離，地理情報等のカラムで構成される。分類１ＣＤは例えば配送元から見た店舗の方位・方角であり，分類２ＣＤは例えば店舗間の関係（他店に比べて早い時間に配送が必要等）を意味し，分類３ＣＤは例えば店舗の個別事情（配送量が常に多いので該店舗用の専用車が必要）を意味する。
【００２８】
図２Ｂにおいて、６０３は距離マスタであり、配送元・各配送先間の距離を格納するためのものである。距離マスタ６０３は、基準店舗ＣＤ，店舗ＣＤ，直線距離，論理距離，時間指定距離１，時間指定距離２，時間指定距離３，時間指定距離４，時間指定距離５等のカラムで構成される。距離テーブルの重複を避けるため、店舗ＣＤは基準店舗ＣＤよりも大きな値を取る。
【００２９】
６０４は車両マスタであり、配送媒体情報を登録するためのものである。この車両マスタ６０４は、車両ＣＤ，車両ナンバ、最大積載量，安全積載量，自動／傭車区分，稼動可能状況ＦＬＧ（フラグ），最終点検日等のカラムで構成される。
【００３０】
６０５は荷物マスタであり、配送すべき荷物（商品）の単品情報を登録するためのものである。この荷物マスタ６０５は、荷物ＣＤ，荷物名称，単位重量，単位容積量等のカラムで構成される。
【００３１】
図３Ａにおいて、７０１は稼動配車トラン（トランザクションデータの意味。以下同じ）であり、ある一時点で稼動可能な配送車両をエントリーするためのものである。この稼動配車トラン７０１は、配送日，配送順位，稼動開始時刻，稼動終了時刻，車両ＣＤ等のカラムで構成される。
【００３２】
７０２は配送店舗トランであり、ある一時点で配送すべき店舗をエントリーするためのものである。この配送店舗トラン７０２は、配送日，配送受付開始時刻，配送受付終了時刻，受注ＣＤ，店舗ＣＤ，車両ＣＤ，重量合計，容積量合計等のカラムで構成される。なお、重量合計には、配送品の重量合計と引取品の重量合計が記憶される。また、容積量合計には、配送品の容積合計と引取品の容積合計が記憶される。
【００３３】
７０３は配送明細トランであり、ある一時点で配送すべき店舗単位の荷物情報をエントリーするためのものである。この配送明細トラン７０３は、配送日，配送受付開始時刻，配送受付終了時刻，受注ＣＤ，店舗ＣＤ，車両ＣＤ，単位重量，単位容積量，数量，重量，容積量等のカラムで構成される。なお、この配送明細トラン７０３には、配送品の情報のみならず、引取品の情報も記憶される。なお、配送品，引取品の区別は、受注番号等により区別可能とする。
【００３４】
図３Ｂにおいて、７０４は運送日報トランであり、一日の稼動情報を車両単位で集計・格納するためのものである。この運送日報トラン７０４は、配送日，稼動開始時刻，稼動終了時刻，車両ＣＤ，総走行距離，実走行距離，総空車距離，実空車距離，最大積載量，最大容積量等のカラムで構成される。
【００３５】
７０５は運送ルートトランであり、一日の稼動実績情報を車両単位で明細格納するためのものである。この運送ルートトラン７０５は、配送日，出発時刻，到着時刻，車両ＣＤ，配送順，出発店舗ＣＤ，到着店舗ＣＤ，直線距離，実装距離，積載重量，容積量等のカラムで構成される。
【００３６】
７０６はコントロールであり、シミュレートを実行する条件設定を格納するためのものである。このコントロール７０６は、配送日，稼動開始時刻，稼動終了時刻，配送積載量総計，車両積載量総計，配送容積量総計，車両容積量総計，カテゴリ優先度１，カテゴリ優先度２，カテゴリ優先度３等のカラムで構成される。
【００３７】
以下、図４〜図１１を参照して、本発明の配送順決定装置の第１実施形態における配送順決定処理について説明する。
【００３８】
図４は、本発明の配送順決定装置における第１の制御処理手順の一例を示すフローチャートであり、配送順決定処理に対応する。なお、このフローチャートの処理は、図１に示した配送順決定装置のＣＰＵ２１がＲＯＭ２３、ハードディスク２８、又はＣＤ−ＲＯＭドライブ２９に記憶保存されたプログラムを読み出してＲＡＭ２２上で実行することにより、実現される。また、図中、Ｓ３０１〜Ｓ３１７は各ステップを示す。
【００３９】
なお、本フローチャートに示す処理を開始する前に、図２に示した距離マスタ６０３内に各配送先とその他の配送先間の直線距離、店舗マスタ６０２内に配送元から各配送先への直線距離（起点間距離）を含め、図２に示した各テーブル及び不図示の商品マスタ（一意の商品コード、商品名称、商品種別（ビール、ウィスキー、ワイン、清酒、焼酎、発泡酒等）、仕入原価、仕入先法人コード）にデータがそれぞれ登録されてハードディスク２８に記憶されているものとする。
【００４０】
まず、ステップＳ３０１において、ＣＰＵ２１は、受注情報入力処理を実行する。詳細には、ＣＰＵ２１は、図６に示す受注入力画面をモニタ３０上に表示するように制御し、配送対象の店舗，荷物情報等の受注入力を受け付ける。
【００４１】
図６は、本発明の配送順決定装置における受注入力画面の一例を示す図である。
【００４２】
図６に示すように、配送先名８０１，配達指定日８０２，商品種別８０３，品名１（８０４），数量１（８０５），品名２（８０６），数量２（８０７），品名３（８０８），数量３（８０９）をキーボード２５，マウス２７等から入力することができる。なお、受注入力画面の各入力項目は、ＣＰＵ２１が、図２に示した荷物マスタ６０５，カテゴリマスタ６０１，店舗マスタ６０２等から取得する。そして、登録ボタン８１０がキーボード２５，マウス２７等から指示されると、ＣＰＵ２１は、受注入力画面での入力情報を図３に示した配送明細トラン７０３，配送店舗トラン７０４等に格納し、ステップＳ３０２に処理を遷移させる。
【００４３】
次に、ステップＳ３０２において、ＣＰＵ２１は、稼動車両入力処理を実行する。詳細には、ＣＰＵ２１は、図示しない稼動車両入力画面をモニタ３０上に表示するように制御し、整備情報や運転手の勤怠情報に基いた稼動車両の優先順位等の入力を受け付ける。なお、稼動車両入力画面の各入力項目は、ＣＰＵ２１が、図２に示した車両マスタ６０４等から取得する。そして、登録ボタンがキーボード２５，マウス２７等から指示されると、ＣＰＵ２１は、稼動車両入力画面での入力情報に基づく値を図３に示した稼動配車トラン７０１等に格納し、ステップＳ３０３に処理を遷移させる。
【００４４】
次に、ステップＳ３０３において、ＣＰＵ２１は、シミュレート条件入力処理を実行する。詳細には、ＣＰＵ２１は、図７に示すシミュレーション条件入力画面をモニタ３０上に表示するように制御し、シミュレート条件の選択・入力を受け付ける。
【００４５】
図７は、本発明の配送順決定装置におけるシミュレーション条件入力画面の一例を示す図である。
【００４６】
図７に示すように、店舗分類指定９０１，配達日９０２，雇車有無９０３，ピストン有無９０４，積載制限有無９０５，仮選択数指定９０６をキーボード２５，マウス２７等から入力することができる。なお、店舗分類指定９０１は、配送先となる店舗をどの分類で分類するかを指定する。雇車有無９０３は、配送に車両が足りない場合に雇車するか否かを指定する。ピストン有無９０４は、配送に車両が足りない場合にピストン配送するか否かを指定する。積載制限有無９０５は、積載制限を「重量及び容積」、「重量」、又は「容積」のいずれにするかを指定する。仮選択数指定９０６は、後述する仮選択数を指定する。
【００４７】
そして、店舗分類優先指定ボタン９１０がキーボード２５，マウス２７等から指示されると、ＣＰＵ２１は、シミュレーション条件入力画面での入力情報をＲＡＭ２２に格納し、ステップＳ３０４に処理を遷移させる。
【００４８】
次に、ステップＳ３０４において、ＣＰＵ２１は、店舗分類の優先順位入力処理を実行する。店舗分類はその日に配送すべき店舗をグループ分けしたものであり、詳細には、ＣＰＵ２１は、図示しない優先順位入力画面をモニタ３０上に表示するように制御し、稼動車両台数等に応じてシミュレート実行時の店舗分類数および該分類数で分類された分類の優先順を指定する入力を受け付ける。なお、分類数は、稼働車輌の数に関係無く自由に設定できる。計算結果により未割当店舗が発生する場合は、庸車台数を加味して何度でもシミュレートを可能にする。そして、キーボード２５，マウス２７等から分類数が優先順位付きで入力されると、ＣＰＵ２１は、指定された分類数で店舗を分類し、該各分類に対して指定された店舗分類の優先順位に従い、ステップＳ３０２で入力された優先順の車両を割り付ける。そして、店舗の分類情報と車両の割り付け情報がハードディスク２８内に格納される。例えば、ユーザから店舗分類数として、東西南北４分類が指定され、東→西→南→北の順に優先順が指定されると、東→西→南→北の順に優先順位の高い稼動車両から割り付けられる。また、ＣＰＵ２１は、当日受注商品の総重量（配送積載量総計），配送容積量総計を算出し、また、ＣＰＵ２１は、ステップＳ３０２で入力された優先順で車両台数を充当した必要数の理論値（車両積載量総計，車両容積量総計）を算出する。この台数が配車可能な最小台数（あくまで理論値）となる。なお、ＣＰＵ２１は、この際算出処理に必要な情報を図２に示したカテゴリマスタ６０１，車両マスタ６０４，図３に示した稼動配車トラン７０１，配送店舗トラン７０２等から取得する。さらに、ＣＰＵ２１は、上記入力された分類の優先順位と、算出された各配送積載量総計，配送容積量総計、車両積載量総計，車両容積量総計等をコントロール７０６に格納し、ステップＳ３０５に処理を遷移させる。なお、ＣＰＵ２１は、前記ステップＳ３０２で入力された優先順に稼動車両の積載重量及び積載容積を上回る配送品に基いて、新たな店舗分類を設定するように構成してもよい。
【００４９】
次にステップＳ３０５において、ＣＰＵ２１は、最長距離店舗割付処理を実行する。この処理は、ステップＳ３０４で入力した優先順位に従い、ステップＳ３０２でエントリーした車両にステップＳ３０１でエントリーした店舗の分類単位で発送起点から最も距離の遠い店舗から順次最も近い店舗へと店舗を割り付けて、店舗の順序を決定する処理である。詳細は、後述する図１０に示す。
【００５０】
次に、ステップＳ３０６において、ＣＰＵ２１は、分類別配送店舗割付処理を実行する。この処理は、ステップＳ３０５で決定した店舗分類単位の順序に従い、店舗別の荷物を割当て車両の最大積載量または最大積載重量になるまで割り当てる。即ち、ステップＳ３０５で割り付けた１店舗を基準にステップＳ３０１でエントリーした同一分類内の店舗を順次最も近い順に車両を割り付けていく処理である。この場合、発注商品の重量，容積量を車両単位でサマリし車両の最大積載量又は最大容積量の最大値で割付を終了する。詳細は、後述する図１１に示す。なお、ステップＳ３０５の最長距離店舗割付処理，ステップＳ３０６の分類別配送店舗割付処理において優先順位入力で優先順位を付けた分類順で順次配車を実行することになる。
【００５１】
次に、ステップＳ３０７において、ＣＰＵ２１は、未割付店舗があるか否かを判定し、未割付店舗があると判定した場合には、ステップＳ３０８に処理を遷移させる。
【００５２】
ステップＳ３０８において、ＣＰＵ２１は、未割付稼動車両があるか否かを判定し、未割付稼動車両があると判定した場合には、ステップＳ３０９に処理を遷移させる。
【００５３】
そして、ステップＳ３０９において、ＣＰＵ２１は、優先順位次候補の分類で再割付を行う。即ち、次の優先順位の店舗分類をセットして、ステップＳ３０５に処理を戻す。
【００５４】
一方、ステップＳ３０８で、ＣＰＵ２１が、未割付稼動車両がないと判定した場合には、ステップＳ３１０に処理を遷移させる。そして、ステップＳ３１０において、ＣＰＵ２１は、車両台数不足と判断して、ステップＳ３１１において、
再シミュレート告知アラート処理を行う。詳細には、ＣＰＵ２１は、未割付店舗、重量、容積量、配車情報をモニタ３０上にアラーと表示するように制御し、庸車のために必要な情報を提供して、再シミュレートを促す。
【００５５】
そして、ステップＳ３１２において、ＣＰＵ２１は、再シミュレートが指示されたか否かを判定し、再シミュレートが指示されたと判定した場合には、ステップＳ３０２に処理を戻し、再シミュレートする。
【００５６】
一方、ステップＳ３１２で、ＣＰＵ２１が、再シミュレートが指示されなかったと判定した場合には、そのまま処理を終了する。
【００５７】
一方、ステップＳ３０７で、ＣＰＵ２１が、未割付店舗がないと判定した場合には、ステップＳ３１３において、ＣＰＵ２１は、配車完了と判断し、ステップＳ３１４に処理を遷移させる。
【００５８】
次に、ステップＳ３１４において、ＣＰＵ２１は、配送ルート決定処理を行う。詳細には、ステップＳ３０５，Ｓ３０６での配車結果より問屋から距離の近い順に配送ルートを決定し（即ち、Ｓ３０５で決定した順序の逆順を配送順と決定し）、決定した情報を図３に示した運送日報トラン７０４，運送ルートトラン７０５に格納し、図８に示す配送順表示画面をモニタ３０上に表示するように制御する。
【００５９】
図８は、本発明の配送順決定装置における配送順表示画面の一例を示す図である。
【００６０】
図８に示すように、配送順表示蘭９０５に決定した配送ルートがＣＰＵ２１により表示制御される。なお、この配送順表示蘭９０５に表示される各店舗名部分がキーボード２５，又はマウス２７等から指示されると、ＣＰＵ２１は、店舗マスタ６０２から該店舗の情報を取得して表示するように制御する。
【００６１】
また、再シミュレートボタン９０７がキーボード２５，マウス２７等から指示されると、ＣＰＵ２１は、処理をステップＳ３０２に戻し、再シミュレートするように制御する。さらに、次分類表示９０８がマウス２７等から指示されると、ＣＰＵ２１は、配送順表示蘭９０５に次優先順位の分類の配送ルートを表示するように制御する。
【００６２】
また、次車両表示９０９がマウス２７等から指示されると、ＣＰＵ２１は、配送順表示蘭９０５に次優先順位の車両に割り付けられた配送ルートを表示するように制御する。そして、指示書印刷ボタン９１０がキーボード２５，マウス２７等から指示されると、ＣＰＵ２１は、図９に示す配達指示書を図示しない印刷装置により印刷するように制御する。
【００６３】
図９は、本発明の配送順決定装置において決定された配送ルートを印刷した配達指示書の一例を示す模式図である。
【００６４】
そして、図８の配送順表示画面で終了ボタン９０６がキーボード２５，マウス２７等から指示されると、ＣＰＵ２１は、ステップＳ３１５に処理を遷移させ、シミュレートを終了する。
【００６５】
なお、この後、ユーザは、図９に示した配達指示書に基づいて配達を開始する。そして、実際の配達の際に、実車距離計測を行う。そして、配送を終了すると、ユーザは、配送順決定装置においてキーボード２５，マウス２７等から実車距離入力機能の実行を指示する。
【００６６】
すると、ステップＳ３１６において、ＣＰＵ２１は、図示しない実車距離入力画面をモニタ３０上に表示するように制御し、実車距離の入力を受け付ける。
【００６７】
そして、ユーザが車両の積算計に基き車両毎の配送距離（実車距離）を入力すると、ＣＰＵ２１は、該入力情報を運送日報トラン７０４に格納し、ステップＳ３１７に処理を遷移させる。
【００６８】
次に、ステップＳ３１７において、ＣＰＵ２１は、運送日報を図示しない印刷装置により印刷するように制御し、処理を終了する。
【００６９】
図１０は、本発明の配送順決定装置における第２の制御処理手順の一例を示すフローチャートであり、図４のステップＳ３０５に示した最長距離店舗割付処理
に対応する。なお、このフローチャートの処理は、図１に示したＣＰＵ２１がＲＯＭ２３、ハードディスク２８、又はＣＤ−ＲＯＭドライブ２９に記憶保存されたプログラムを読み出してＲＡＭ２２上で実行することにより、実現される。また、図中、Ｓ４０１〜Ｓ４１５は各ステップを示す。
【００７０】
まず、ステップＳ４０１において、ＣＰＵ２１は、ステップＳ３０２で指定された稼動車両の優先順位及びステップＳ３０４で指定された店舗分類数に従い、受注情報を店舗分類及び配送起点からの距離の降順でソートする。
【００７１】
次に、ステップＳ４０２において、ＣＰＵ２１は、ステップＳ４０１でソートした受注情報の１分類分をＲＡＭ２２上の配列Ｃに記憶する。配列Ｃは、受注情報内の配送先の情報に対応する店舗分類番号と店舗コードと選択フラグを１配送先分として複数行（配送先数分）記憶される。選択フラグは、当初全て未選択（選択フラグ＝０）になっている。仮選択されると選択フラグ＝１となり、選択されると選択フラグ＝２となる。
【００７２】
次に、ステップＳ４０３において、ＣＰＵ２１は、配送起点からの距離が最遠の配送先を選択する。
【００７３】
次に、ステップＳ４０４において、ＣＰＵ２１は、現在の店舗分類中の全配送先の割付処理を完了したか否かを判定し、現在の店舗分類中の全配送先の割付処理を完了したと判定した場合には、そのまま処理を終了し、図４のフローチャート（ステップＳ３０６）に処理を戻す。
【００７４】
一方、ステップＳ４０４で、ＣＰＵ２１が、現在の店舗分類中の全配送先の割付処理をまだ完了していないと判定した場合には、ステップＳ４０５に処理を遷移させる。
【００７５】
ステップＳ４０５において、ＣＰＵ２１は、直前に選択した配送先から最短距離にある未選択の配送先を選択する。なお、直前に選択した配送先とは、例えば最遠から３つ目までの配送先が既に選択されている場合は、その最後に選択された３つ目の配送先を示す。
【００７６】
次に、ステップＳ４０６において、ＣＰＵ２１は、ステップＳ４０５で選択した未選択の配送先が、配送起点から当該未選択の配送先との距離と、配送起点と他の未選択の配送先との距離とを比較した場合に、最遠であるか否かを判定し、最遠であると判定した場合には、ステップＳ４０７に処理を遷移させる。
【００７７】
ステップＳ４０７において、ＣＰＵ２１は、ステップＳ４０５で選択した未選択の配送先の選択フラグを「０」から「２」に更新し、配送先の情報をＲＡＭ２２上の配列Ｄに記憶し、処理をステップＳ４０４に戻す。この場合ステップＳ４０５で選択した未選択の配送先は選択されたことになる。なお、配列Ｄは、配送先の情報として店舗分類番号と店舗コードを記憶するものである。
【００７８】
一方、ステップＳ４０６で、ＣＰＵ２１が、ステップＳ４０５で選択した未選択の配送先が最遠でないと判定した場合には、ステップＳ４０８に処理を遷移させる。
【００７９】
そして、ステップＳ４０８において、ＣＰＵ２１は、ステップＳ４０５で選択した未選択の配送先の選択フラグを「０」から「１」に更新し、処理をステップＳ４０９に遷移させる。これでステップＳ４０５で選択した未選択の配送先は仮選択されたことになる。説明の便宜のために、この仮選択された配送先を仮選択（１）と呼ぶ。
【００８０】
次に、ステップＳ４０９において、ＣＰＵ２１は、ステップＳ４０８で仮選択（１）とされた配送先から最短距離にある未選択の配送先を２つ仮選択する。つまり、この２つの配送先の選択フラグを「０」から「１」（即ち「仮選択」）に更新し、処理をステップＳ４１０に進める。なお、この２つの仮選択された配送先を仮選択（２）及び仮選択（３）と呼ぶ。
【００８１】
そして、ステップＳ４１０において、ＣＰＵ２１は、ステップＳ４０９で仮選択した仮選択（２）及び仮選択（３）のうち１つが、配送起点から当該仮選択の配送先との距離と、配送起点と他の未選択の配送先との距離とを比較した場合に、最遠であるか否かを判定する。
【００８２】
ステップＳ４１０で、ＣＰＵ２１は、ステップＳ４０９で仮選択した仮選択（２）及び仮選択（３）のうち１つが最遠であると判定した場合には、ステップＳ４１１に処理を遷移させる。
【００８３】
そして、ステップＳ４１１において、ＣＰＵ２１は、ステップＳ４０８及びステップＳ４１１で選択した仮選択（１）及び仮選択（２）及び仮選択（３）の選択フラグを「１」から「２」（即ち「選択」）に更新し、ＲＡＭ２２上の配列Ｄに仮選択（１），（２），（３）の順序で記憶し、処理をステップＳ４０４に戻す。この場合ステップＳ４０８及びステップＳ４１１で仮選択した３つの配送先が「選択」状態に更新されたことになる。
【００８４】
一方、ステップＳ４１０で、ＣＰＵ２１が、ステップＳ４０９で仮選択した仮選択（２）及び仮選択（３）のどちらも最遠でないと判定した場合には、ステップＳ４１２に処理を遷移させる。
【００８５】
そして、ステップＳ４１２において、ＣＰＵ２１は、仮選択（１）乃至（３）を除いて、未選択の配送先のうちで、配送起点からの距離が最遠の配送先を仮選択し、該配送先の選択フラグを「０」から「１」（即ち、「仮選択」）に更新し、処理をステップＳ４１３に遷移させる。この仮選択された配送先を仮選択（４）と呼ぶ。
【００８６】
そして、ステップＳ４１３において、ＣＰＵ２１は、ステップＳ４１２で仮選択（４）とされた配送先から最短距離にある未選択の配送先を２つ仮選択する。つまり、この２つの配送先の選択フラグを「０」から「１」に更新し、処理をステップＳ４１４に進める。この２つの仮選択された配送先を仮選択（５）及び仮選択（６）と呼ぶ。
【００８７】
次に、ステップＳ４１４において、ＣＰＵ２１は、仮選択（１）乃至（６）の仮選択された６つの配送先を総当りで配送順を組み合わせて、直線距離の総和が最短になる配送順を決める。
【００８８】
そして、ステップＳ４１５において、ＣＰＵ２１は、仮選択（１）乃至（６）をステップ４１４の配送順に並べ替えた上で、６つの配送先の選択フラグを「１」から「２」（即ち、「選択」）に更新し、ＲＡＭ２２上の配列Ｄに前記並べ替えた順に記憶し、処理をステップＳ４０４に戻す。
【００８９】
以上の処理を、未選択の配送先がなくなるまで（即ち、ステップＳ４０４で現在の店舗分類中の全配送先の割付処理を完了したと判定されるまで）行うことにより、ＲＡＭ２２上の配列Ｄに最長距離順に配送先が格納されることとなる。
【００９０】
なお、本フローチャートの説明では図７に示したシミュレーション条件入力画面で仮選択数指定＝「６」が指定されたことを想定しているため、仮選択を６とした処理について示したが、これに限らず仮選択数は「４」でも「８」でも良く、最大で分類先１つの配送先の半数程度に指定すると良い。
【００９１】
図１１は、本発明の配送順決定装置における第３の制御処理手順の一例を示すフローチャートであり、図４のステップＳ３０６に示した分類別配送店舗割付処理に対応する。なお、このフローチャートの処理は、図１に示したＣＰＵ２１がＲＯＭ２３、ハードディスク２８、又はＣＤ−ＲＯＭドライブ２９に記憶保存されたプログラムを読み出してＲＡＭ２２上で実行することにより、実現される。また、図中、Ｓ５０１〜Ｓ５１１は各ステップを示す。
【００９２】
なお、ＲＡＭ２２上の配列Ｄには、図１０に示したフローチャートの処理で算出された店舗分類番号と店舗コードが分類毎に、最長距離順に記憶されている。
【００９３】
また、本フローチャートの処理により、ＲＡＭ２２上に確保される配列Ｅは、１分類用のワーク配列で店舗分類番号と店舗コードを記憶される。さらに、ＲＡＭ２２上に確保される配列Ｆには、決定版の分類別の配送順（荷積順）の店舗分類番号と店舗コードが記憶される。また、ＲＡＭ２２上に確保される配列Ｇには、積み残し分の店舗分類番号と店舗コードが記憶される。
【００９４】
まず、ステップＳ５０１において、ＣＰＵ２１は、配列Ｄの１店舗分類分の店舗コードをＲＡＭ２２上の配列Ｅにコピーする。
【００９５】
次に、ステップＳ５０２において、ＣＰＵ２１は、当該車両（優先順位で割り付けられた車両）の積載済累計重量を記録する変数（ＷＴＴＬ）と積載済累計容積を記録する変数（ＣＴＴＬ）の値をゼロに初期化する。なお、変数ＷＴＴＬ，変数ＣＴＴＬは、ＲＡＭ２２上に保持される。
【００９６】
次に、ステップＳ５０３において、ＣＰＵ２２は、当該店舗分類に割り当てられた車両の最大積載重量と最大積載容量をＲＡＭ２２上に保持される最大積載重量を示す変数ＷＭＡＸと最大積載容量を示す変数ＣＭＡＸにそれぞれ記憶する。
【００９７】
次に、ステップＳ５０４において、ＣＰＵ２１は、当該店舗分類中の全配送先を処理済みか否を判定し、処理済みであると判定した場合には、ステップＳ５１０に処理を進める。
【００９８】
一方、ステップＳ５０４で、ＣＰＵ２１が、当該店舗分類中にまだ処理済みでない配送先があると判定した場合には、ステップＳ５０５に処理を遷移させる。
【００９９】
そして、ステップＳ５０５において、ＣＰＵ２１は、配列Ｅの要素（店舗分類番号と店舗コード）を１つ読み出し、店舗コードとシミュレーションを行う日（配達日）をキーにして受注情報（配送店舗トラン７０２，配送明細トラン７０３等）から当該配送先への配送品の重量及び容積と引取品の重量及び容積を読み出し、差分の重量と容積を積載済累計重量（変数ＷＴＴＬ）及び積載済累計容積（変数ＣＴＴＬ）に加算する。
【０１００】
次に、ステップＳ５０６において、ＣＰＵ２１は、（１）積載済累計重量が最大積載重量を超えていないか、（２）積載済累計容積が最大積載容量を超えていないかを判定する。この判定は、ＲＡＭ２２に保持される図７に示したシミュレーション条件入力画面で入力された積載制限指定の情報に基づいて行われる。図７の積載制限指定が「重量及び容積」であれば、前述の（１）又は（２）のいずれか１つが超えている場合は制限オーバーと判定する。また、図７の積載制限指定が「重量」であれば、前述の（１）が超えている場合は制限オーバーと判定する。また、図７なお積載制限指定が「容量」であれば、前述の（２）が超えている場合は制限オーバーとして判定するものとする。
【０１０１】
ステップＳ５０６で、ＣＰＵ２１が、（１）積載済累計重量が最大積載重量を超えていない、且つ、（２）積載済累計容積が最大積載容量を超えていないと判定した場合には、ステップＳ５０７に処理を遷移させる。
【０１０２】
ステップＳ５０７において、ＣＰＵ２１は、配列Ｅの当該要素（店舗分類番号と配達先コード）を配列Ｆにコピーし、ステップＳ５０４に処理を戻す。
【０１０３】
一方、ステップＳ５０６で、ＣＰＵ２１が、（１）積載済累計重量が最大積載重量を超えている、又は、（２）積載済累計容積が最大積載容量を超えていると判定した場合には、ステップＳ５０８に処理を進める。
【０１０４】
そして、ステップＳ５０８において、ＣＰＵ２１は、当該店舗分類の荷物割付可能な他の車両があるか否かを判定し、荷物割付可能な他の車両があると判定した場合には、ＣＰＵ２１は、処理をステップＳ５０２に戻す。
【０１０５】
一方、ステップＳ５０８で、ＣＰＵ２１が、当該店舗分類の荷物割付可能な他の車両がないと判定した場合には、ＣＰＵ２１は、処理をステップＳ５０９に進める。そして、ステップＳ５０９において、ＣＰＵ２１は、配列Ｅの未処理の要素（店舗分類番号と店舗コード）を全てＲＡＭ２２上の未割当用配列Ｇに移動する。
【０１０６】
そして、ステップＳ５１０において、ＣＰＵ２１は、未割当用配列Ｇが空であるか否かを判定し、未割当用配列Ｇが空であると判定した場合には、そのまま処理を終了し、図４のフローチャートに処理を戻す。
【０１０７】
一方、ステップＳ５１０で、ＣＰＵ２１が、未割当用配列Ｇが空でないと判定した場合には、ステップＳ５１１に処理を進める。
【０１０８】
そして、ステップＳ５１１において、ＣＰＵ２１は、未割当用配列Ｇの全要素を配列Ｃに加える。この配列Ｃに加えられた未割当分は、２回目以降の処理では処理対象の店舗分類でないため、ＣＰＵ２１は、今回のシミュレーションでは割り当てず、全店舗分類の処理後にまとめて未割当分として、ハードディスク２８に未割当分であることを意味する文字と日付を付したファイル名で保存するように制御する。
【０１０９】
そして、ステップＳ５１１の処理を終えると、ＣＰＵ２１は、処理を終了し、図４のフローチャートに処理を戻す。
【０１１０】
以上示したように、本実施形態では、エリア分けと車両割当、配送順を決めるだけなので、通常のパーソナルコンピュータ等を用いて短時間で計算可能であり、ハードウェア及びソフトウェア共にコストを安く提供することができる。
【０１１１】
また、経路情報、交通規制、混雑状況等の細かいデータを入力する必要がなく、運用工数を従来に比べて少なくすることができる。
【０１１２】
さらに、遠い配送先から優先して配送順を決めて行くので、時間的誤差が生じた場合でも、他の車両によるカバーが容易になる。
【０１１３】
また、エリア分けと車両割当、配送順を決めるだけなので、当日の道路状況に応じて、ドライバの判断で、柔軟かつ最適な配送経路を選ぶことができる。
【０１１４】
さらに、上述したように遠い配送先から優先して決めていくので、未割当てとなる配送先は、物流拠点（倉庫や店舗等）に近いものだけとなり、早く遠方の配送を終えた車両が速やかに荷積みして配送することができる。
【０１１５】
また、時間指定がシビアな配送案件は、特定の車両に担当させれば足りる。
【０１１６】
さらに、全稼動車両でも、１度では運べない場合、エリア分けを稼動車両＋１車両にすることにより、あふれた荷物について配送起点の最寄エリアを残すことにより決定して、早く遠方の配送を終えた車両が速やかに荷積みして配送することができる等の効果を奏する。
【０１１７】
〔第２実施形態〕
上記第１実施形態では、図４のステップＳ３０２において、ユーザが店舗分類数を優先順位付で入力して店舗分類する構成について説明したが、店舗を地図表示して該地図上でユーザが店舗部類指定するように構成してもよい。以下、その実施形態について説明する。
【０１１８】
以下、図１２〜図１５を参照して、本発明の配送順決定装置の第２実施形態における配送順決定処理について説明する。
【０１１９】
図１２は、本発明の配送順決定装置における第４の制御処理手順の一例を示すフローチャートであり、本発明の第２実施形態における配送順決定処理に対応する。なお、このフローチャートの処理は、図１に示したＣＰＵ２１がＲＯＭ２３、ハードディスク２８、又はＣＤ−ＲＯＭドライブ２９に記憶保存されたプログラムを読み出してＲＡＭ２２上で実行することにより、実現される。また、図中、Ｓ１２０１〜Ｓ１２１１は各ステップを示す。
【０１２０】
まず、ステップＳ１２０１において、ＣＰＵ２１は、受注情報入力処理を実行する。この処理は、図４のステップＳ３０１と同一であるので説明は省略する。
【０１２１】
次に、ステップＳ１２０２において、ＣＰＵ２１は、稼動車両入力処理を実行する。この処理は、図４のステップＳ３０２と同一であるので説明は省略する。
【０１２２】
次に、ステップＳ１２０３において、ＣＰＵ２１は、シミュレート条件入力処理を実行する。この処理は、図４のステップＳ３０３と同一であるので説明は省略する。
【０１２３】
次に、ステップＳ１２０４において、ＣＰＵ２１は、図１３に示す店舗分類指定画面（地図情報を含む）をモニタ３０上に表示するように制御し、ステップＳ１２０５において、キーボード２５，マウス２７等による入力を待機する。
【０１２４】
図１３は、本発明の配送順決定装置における店舗分類指定画面の一例を示す図である。
【０１２５】
図１３Ａにおいて、１５０１は店舗分類指範囲指定エリアであり、店舗位置を含む地図情報を表示する。なお、ここで表示される地図情報を、図１３Ｂに拡大して示している。図１３Ｂに示す地図情報には、配送拠点１５０２、ステップＳ１２０３で配達日９０２（図７）に入力した配達日に配達予定の全ての配送先（店舗）が１５０３に示すように表示されている。なお、店舗分類指範囲指定エリア１５０１では、閉曲線（完全に閉じていなくても良い）１５０４により店舗の分類の指定を入力可能である。つまり例えば図１３の画面がタッチパネルに表示されている場合には、店舗分類範囲を指でなぞることで閉曲線１５０４を描くことにより指定する。また、図１３の画面が通常のＬＣＤに表示されている場合には、店舗分類範囲をマウスカーソルで閉曲線１５０４を描くことにより指定する。なお、指定された店舗分類は指定順に優先順位が付加されるものとする。１５１０は配送順シミュレートボタンであり、シミュレート開始を指示するためのものである。
【０１２６】
以下、図１２のフローチャートの説明に戻る。
【０１２７】
ステップＳ１２０６において、ＣＰＵ２１は、図１３の店舗分類指範囲指定エリア１５０１で店舗分類指範囲指定がなされ、配送順シミュレートボタン１５１０が指示されたと判定した場合には、ＣＰＵ２１は、ステップＳ１２０７に処理を遷移させる。
【０１２８】
ステップＳ１２０７において、ＣＰＵ２１は、ステップＳ１２０４での店舗分類指範囲指定に基づいて閉曲線の認識処理を行い、ステップＳ１２０８において、店舗を分類する。
【０１２９】
そして、ステップＳ１２０９において、ＣＰＵ２１は、最長距離店舗割付処理を実行する。この処理は、ステップＳ１２０８で分類した各店舗分類に対して、ステップＳ３０２でエントリーした車両に、店舗の分類単位で発送起点から最も距離の遠い店舗から順次最も近い店舗へと店舗を割り付けて、店舗の順序を決定する処理である。詳細は、後述する図１４に示す。
【０１３０】
次に、ステップＳ１２１０において、ＣＰＵ２１は、分類別に車両荷物割付処理を実行する。この処理は、ステップＳ１２０９で決定した店舗分類単位の順序に従い、店舗別の荷物を割当て車両の最大積載量または最大積載重量になるまで割り当てる。詳細は、後述する図１５に示す。
【０１３１】
次に、ステップＳ１２１１において、ＣＰＵ２１は、車両別荷積・配送順決定処理を行う。詳細には、ステップＳ１２０９，Ｓ１２１０での配車結果より問屋から距離の近い順に配送順を決定し（即ち、Ｓ１２０９で決定した順序の逆順を配送順と決定し）、決定した情報を図３に示した運送日報トラン７０４，運送ルートトラン７０５に格納し、図８に示した配送順表示画面をモニタ３０上に表示するように制御する。そして、図８の指示書印刷ボタン９１０がキーボード２５，マウス２７等から指示されると、ステップＳ１２１２において、ＣＰＵ２１は、図９に示した配達指示書を図示しない印刷装置により印刷するように制御する。
【０１３２】
そして、図８の配送順表示画面で終了ボタン９０６がキーボード２５，マウス２７等から指示されると、ＣＰＵ２１は、ステップＳ３１５に処理を遷移させ、シミュレートを終了する。
【０１３３】
図１４は、本発明の配送順決定装置における第５の制御処理手順の一例を示すフローチャートであり、図１２のステップＳ１２０９に示した最長距離店舗割付処理に対応する。なお、図１４中、Ｓ１３０１〜Ｓ１３１６は各ステップを示す。
【０１３４】
図１５は、本発明の配送順決定装置における第６の制御処理手順の一例を示すフローチャートであり、図１２のステップＳ１２１０に示した分類別に車両荷物割付処理に対応する。なお、図１５中、Ｓ１４０１〜Ｓ１４１３は各ステップを示す。
【０１３５】
また、これらのフローチャートの処理は、図１に示したＣＰＵ２１がＲＯＭ２３、ハードディスク２８、又はＣＤ−ＲＯＭドライブ２９に記憶保存されたプログラムを読み出してＲＡＭ２２上で実行することにより実現される。
【０１３６】
まず、ステップＳ１３０１において、ＣＰＵ２１は、ステップＳ１２０２で指定された稼動車両の優先順位及びステップＳ１２０８で分割された店舗分類に従い、受注情報を店舗分類及び配送起点からの距離の降順でソートする。
【０１３７】
次に、ステップＳ１３０２において、ＣＰＵ２１は、全分類を処理済みか否かを判定し、全分類を処理済みであると判定した場合には、図１５のステップＳ１５０１に処理を遷移させる。
【０１３８】
一方、ステップＳ１３０２で、ＣＰＵ２１が、まだ処理済みでない分類があると判定した場合には、処理をステップＳ１３０３に遷移させる。
【０１３９】
そして、ステップＳ１３０３において、ＣＰＵ２１は、ステップＳ１３０１でソートした受注情報の１分類分をＲＡＭ２２上の配列Ｃに記憶する。配列Ｃは、店舗分類番号と店舗コードと選択フラグを１配送先分として複数行（配送先数分）記憶される。選択フラグは、当初全て未選択（選択フラグ＝０）になっている。仮選択されると選択フラグ＝１となり、選択されると選択フラグ＝２となる。
【０１４０】
次に、ステップＳ１３０４において、ＣＰＵ２１は、配送起点からの距離が最遠の配送先を選択する。
【０１４１】
次に、ステップＳ１３０５において、ＣＰＵ２１は、現在の店舗分類中の全配送先の割付処理を完了したか否かを判定し、現在の店舗分類中の全配送先の割付処理を完了したと判定した場合には、ステップＳ１３１２に処理を戻す。
【０１４２】
一方、ステップＳ１３０５で、ＣＰＵ２１が、現在の店舗分類中の全配送先の割付処理をまだ完了していないと判定した場合には、ステップＳ１３０６に処理を遷移させる。
【０１４３】
ステップＳ１３０６において、ＣＰＵ２１は、直前に選択した配送先から最短距離にある未選択の配送先を選択する。なお、直前に選択した配送先とは、例えば最遠から３つ目までの配送先が既に選択されている場合は、その最後に選択された３つ目の配送先を示す。
【０１４４】
次に、ステップＳ１３０７において、ＣＰＵ２１は、ステップＳ１３０６で選択した未選択の配送先が、配送起点から当該未選択の配送先との距離と、配送起点と他の未選択の配送先との距離とを比較した場合に、最遠であるか否かを判定し、最遠であると判定した場合には、ステップＳ１３０８に処理を遷移させる。
【０１４５】
ステップＳ１３０８において、ＣＰＵ２１は、ステップＳ１３０６で選択した未選択の配送先の選択フラグを「０」から「２」に更新し、ＲＡＭ２２上の分類別の配列Ｄに記憶し、処理をステップＳ１３０５に戻す。この場合ステップＳ１３０６で選択した未選択の配送先は選択されたことになる。なお、分類別の配列Ｄは、店舗分類番号と店舗コードを記憶するものである。
【０１４６】
一方、ステップＳ１３０７で、ＣＰＵ２１が、ステップＳ１３０６で選択した未選択の配送先が最遠でないと判定した場合には、ステップＳ１３０９に処理を遷移させる。
【０１４７】
そして、ステップＳ１３０９において、ＣＰＵ２１は、ステップＳ１３０６で選択した未選択の配送先の選択フラグを「０」から「１」に更新し、処理をステップＳ１３１０に遷移させる。これでステップＳ１３０６で選択した未選択の配送先は仮選択されたことになる。説明の便宜のために、この仮選択された配送先を仮選択（１）と呼ぶ。
【０１４８】
次に、ステップＳ１３１０において、ＣＰＵ２１は、ステップＳ１３０９で仮選択（１）とされた配送先から最短距離にある未選択の配送先を２つ仮選択する。つまり、この２つの配送先の選択フラグを「０」から「１」（即ち「仮選択」）に更新し、処理をステップＳ１３１１に進める。なお、この２つの仮選択された配送先を仮選択（２）及び仮選択（３）と呼ぶ。
【０１４９】
そして、ステップＳ１３１１において、ＣＰＵ２１は、ステップＳ１３１０で仮選択した仮選択（２）及び仮選択（３）のうち１つが、配送起点から当該仮選択の配送先との距離と、配送起点と他の未選択の配送先との距離とを比較した場合に、最遠であるか否かを判定する。
【０１５０】
ステップＳ１３１１で、ＣＰＵ２１は、ステップＳ１３１０で仮選択した仮選択（２）及び仮選択（３）のうち１つが最遠であると判定した場合には、ステップＳ１３１２に処理を遷移させる。
【０１５１】
そして、ステップＳ１３１２において、ＣＰＵ２１は、ステップＳ１３０９及びステップＳ１３１２で選択した仮選択（１）及び仮選択（２）及び仮選択（３）の選択フラグを「１」から「２」（即ち「選択」）に更新し、ＲＡＭ２２上の分類別の配列Ｄに仮選択（１），（２），（３）の順序で記憶し、処理をステップＳ１３０５に戻す。この場合ステップＳ１３０９及びステップＳ１３１２で仮選択した３つの配送先が「選択」状態に更新されたことになる。
【０１５２】
一方、ステップＳ１３１１で、ＣＰＵ２１が、ステップＳ１３１０で仮選択した仮選択（２）及び仮選択（３）のどちらも最遠でないと判定した場合には、ステップＳ１３１３に処理を遷移させる。
【０１５３】
そして、ステップＳ１３１３において、ＣＰＵ２１は、仮選択（１）乃至（３）を除いて、未選択の配送先のうちで、配送起点からの距離が最遠の配送先を仮選択し、該配送先の選択フラグを「０」から「１」（即ち、「仮選択」）に更新し、処理をステップＳ１３１４に遷移させる。この仮選択された配送先を仮選択（４）と呼ぶ。
【０１５４】
そして、ステップＳ１３１４において、ＣＰＵ２１は、ステップＳ１３１３で仮選択（４）とされた配送先から最短距離にある未選択の配送先を２つ仮選択する。つまり、この２つの配送先の選択フラグを「０」から「１」に更新し、処理をステップＳ１３１５に進める。この２つの仮選択された配送先を仮選択（５）及び仮選択（６）と呼ぶ。
【０１５５】
次に、ステップＳ１３１５において、ＣＰＵ２１は、仮選択（１）乃至（６）の仮選択された６つの配送先を総当りで配送順を組み合わせて、直線距離の総和が最短になる配送順を決める。
【０１５６】
そして、ステップＳ１３１６において、ＣＰＵ２１は、仮選択（１）乃至（６）をステップ１３１５の配送順に並べ替えた上で、６つの配送先の選択フラグを「１」から「２」（即ち、「選択」）に更新し、ＲＡＭ２２上の分類別の配列Ｄに前記並べ替えた順に記憶し、処理をステップＳ１３１５に戻す。
【０１５７】
以上の処理を、未選択の配送先がなくなるまで（即ち、ステップＳ１３０５で現在の店舗分類中の全配送先の割付処理を完了したと判定されるまで）行うことにより、ＲＡＭ２２上の分類別の配列Ｄに当該分類における最長距離順に配送先が格納されることとなる。そして、さらにこの処理を全分類に対して行うことにより全分類において最長距離順に配送先が格納されることとなる。
【０１５８】
なお、本フローチャートの説明では図７に示したシミュレーション条件入力画面で仮選択数指定＝「６」が指定されたことを想定しているため、仮選択を６とした処理について示したが、これに限らず仮選択数は「４」でも「８」でも良く、最大で分類先１つの配送先の半数程度に指定すると良い。
【０１５９】
以下、図１５のステップＳ１４０１〜Ｓ１４１２について説明する。
【０１６０】
なお、ＲＡＭ２２上の分類別の配列Ｄには、図１０に示したフローチャートの処理で算出された店舗分類番号と店舗コードが分類毎に、最長距離順に記憶されている。
【０１６１】
また、本フローチャートの処理により、ＲＡＭ２２上に確保される配列Ｅは、１分類用のワーク配列で店舗分類番号と店舗コードを記憶される。さらに、ＲＡＭ２２上に確保される分類別の配列Ｆには、決定版の分類別の配送順（荷積順）の店舗分類番号と店舗コードが記憶される。また、ＲＡＭ２２上に確保される配列Ｇには、積み残し分の店舗分類番号と店舗コードが記憶される。さらに、ＲＡＭ２２上に確保される分類別の配列Ｈには、分類別の配列Ｆを逆順にしたものが記憶される。
【０１６２】
まず、ステップＳ１４０１において、ＣＰＵ２１は、分類別の配列Ｄの１店舗分類分の店舗コードをＲＡＭ２２上の配列Ｅにコピーする。
【０１６３】
次に、ステップＳ１４０２で、ＣＰＵ２１が、まだ処理済みでない分類があると判定した場合には、処理をステップＳ１４０３に遷移させる。
【０１６４】
次に、ステップＳ１４０３において、ＣＰＵ２２は、当該店舗分類に割り当てられた車両の最大積載重量と最大積載容量をＲＡＭ２２上に保持される最大積載重量を示す変数ＷＭＡＸと最大積載容量を示す変数ＣＭＡＸにそれぞれ記憶する。
【０１６５】
次に、ステップＳ１４０４において、ＣＰＵ２１は、当該車両（優先順位で割り付けられた車両）の積載済累計重量を記録する変数（ＷＴＴＬ）と積載済累計容積を記録する変数（ＣＴＴＬ）の値をゼロに初期化する。なお、変数ＷＴＴＬ，変数ＣＴＴＬは、ＲＡＭ２２上に保持される。
【０１６６】
次に、ステップＳ１４０５において、ＣＰＵ２１は、当該店舗分類中の全配送先を処理済みか否を判定し、処理済みであると判定した場合には、ステップＳ１４０１に処理を戻す。
【０１６７】
一方、ステップＳ１４０５で、ＣＰＵ２１が、当該店舗分類中にまだ処理済みでない配送先があると判定した場合には、ステップＳ１４０６に処理を遷移させる。
【０１６８】
そして、ステップＳ１４０６において、ＣＰＵ２１は、配列Ｅの要素（店舗分類番号と店舗コード）を１つ読み出し、店舗コードとシミュレーションを行う日（配達日）をキーにして受注情報（配送店舗トラン７０２，配送明細トラン７０３等）から当該配送先への配送品の重量及び容積と引取品の重量及び容積を読み出し、差分の重量と容積を積載済累計重量（変数ＷＴＴＬ）及び積載済累計容積（変数ＣＴＴＬ）に加算する。
【０１６９】
次に、ステップＳ１４０７において、ＣＰＵ２１は、（１）積載済累計重量が最大積載重量を超えていないか、（２）積載済累計容積が最大積載容量を超えていないかを判定する。この判定は、ＲＡＭ２２に保持される図７に示したシミュレーション条件入力画面で入力された積載制限指定の情報に基づいて行われる。図７の積載制限指定が「重量及び容積」であれば、前述の（１）又は（２）のいずれか１つが超えている場合は制限オーバーと判定する。また、図７の積載制限指定が「重量」であれば、前述の（１）が超えている場合は制限オーバーと判定する。また、図７なお積載制限指定が「容量」であれば、前述の（２）が超えている場合は制限オーバーとして判定するものとする。
【０１７０】
ステップＳ１４０７で、ＣＰＵ２１が、（１）積載済累計重量が最大積載重量を超えていない、且つ、（２）積載済累計容積が最大積載容量を超えていないと判定した場合には、ステップＳ１４０８に処理を遷移させる。
【０１７１】
ステップＳ１４０８において、ＣＰＵ２１は、配列Ｅの当該要素（店舗分類番号と配達先コード）を分類別の配列Ｆにコピーし、ステップＳ１４０５に処理を戻す。
【０１７２】
一方、ステップＳ１４０７で、ＣＰＵ２１が、（１）積載済累計重量が最大積載重量を超えている、又は、（２）積載済累計容積が最大積載容量を超えていると判定した場合には、ステップＳ１４０９に処理を進める。
【０１７３】
そして、ステップＳ１４０９において、ＣＰＵ２１は、配列Ｅの未処理の要素（店舗分類番号と店舗コード）を全てＲＡＭ２２上の未割当用配列Ｇに移動し、ステップＳ１４０１に処理を戻す。
【０１７４】
また、ステップＳ１４０２において、ＣＰＵ２１は、全分類を処理済みか否かを判定し、全分類を処理済みであると判定した場合には、ステップＳ１４１０に処理を遷移させる。
【０１７５】
ステップＳ１４１０において、ＣＰＵ２１は、未割当用配列Ｇが空であるか否かを判定し、未割当用配列Ｇが空でないと判定した場合には、ステップＳ１４１２に処理を進める。
【０１７６】
そして、ステップＳ１４１２において、ＣＰＵ２１は、未割当用配列Ｇの全要素を配列Ｃに加える。この配列Ｃに加えられた未割当分は、２回目以降の処理では処理対象の店舗分類でないため、ＣＰＵ２１は、今回のシミュレーションでは割り当てず、全店舗分類の処理後にまとめて未割当分として、ハードディスク２８に未割当分であることを意味する文字と日付を付したファイル名で保存するように制御する。そして、ステップＳ１４１２の処理が終了すると、図１４に示したステップＳ１３０５に処理を遷移させる。
【０１７７】
一方、ステップＳ５１０で、ＣＰＵ２１が、未割当用配列Ｇが空であると判定した場合には、各分類別の配列Ｆの逆順を各分類別の配列Ｈに格納し、そのまま処理を終了し、図１２のフローチャートに処理を戻す。
【０１７８】
以上示したように、本実施形態では、エリア分けを地図を見ながらドライバ等が経験に基づいて直感的に行うことができるので、ドライバの経験等に即した実用的なエリア分けで、より実用的な配送順を決定することができる。
【０１７９】
〔第３実施形態〕
本実施形態では、上記第２実施形態で行った処理を、異なる分類範囲指定で複数行って、それぞれ決定される配送ルートから合計の配送距離の少ない方を配送ルートと決定するように構成する。以下、その実施形態について説明する。
【０１８０】
以下、図１６を参照して、本発明の配送順決定装置の第３実施形態における配送順決定処理について説明する。
【０１８１】
図１６は、本発明の配送順決定装置における第７の制御処理手順の一例を示すフローチャートであり、本発明の第３実施形態における配送順決定処理に対応する。なお、このフローチャートの処理は、図１に示したＣＰＵ２１がＲＯＭ２３、ハードディスク２８、又はＣＤ−ＲＯＭドライブ２９に記憶保存されたプログラムを読み出してＲＡＭ２２上で実行することにより、実現される。また、図中、Ｓ１６０１〜Ｓ１６０６は各ステップを示す。
【０１８２】
まず、ステップＳ１６０１において、ＣＰＵ２１は、まず第１の分類で経路決定を行う処理を実行する。即ち、図１２に示した処理（１回目）を実行する。
【０１８３】
次に、ステップＳ１６０２において、ＣＰＵ２１は、第２の分類で経路決定を行う処理を実行する。即ち、図１２に示した処理（２回目）を実行する。なお、１回目と２回目とで、分類範囲を変更するように指定するものとする。
【０１８４】
次に、ステップＳ１６０３において、ＣＰＵ２１は、ステップＳ１６０１で決定した配送経路の距離の総計（第１分類距離）とステップＳ１６０２で決定した配送経路の距離の総計（第２分類距離）とをそれぞれ算出して比較する。そして、ＣＰＵ２１が、第１分類距離が第２分類距離より大きいと判定した場合には、ステップＳ１６０５に処理を遷移させて、ステップＳ１６０１で決定した第１分類の経路を配送経路として選択するように制御して、処理を終了する。
【０１８５】
一方、ステップＳ１６０４で、ＣＰＵ２１が、第１分類距離が第２分類距離以下であると判定した場合には、ステップＳ１６０６に処理を遷移させて、第２分類の経路を配送経路として選択するように制御して、処理を終了する。
【０１８６】
なお、比較する経路は２つでなくても３つ以上であってもよいことはいうまでもない。
【０１８７】
以上の処理により、複数のエリア分けで経路を決定し、そのなかで最短の経路を配送経路として選択するので、簡単な構成でも、より最適なエリア分けでの最適な配送経路を決定することができる。
【０１８８】
なお、上記各実施形態では、本発明をパーソナルコンピュータ等の情報処理装置に適用する場合について説明したが、本発明の配送順決定装置は複合機に適用するようにしてもよい。その場合、上述した各画面は複合機のタッチパネル付の表示部に表示し、タッチネルから各入力を行うように構成する。
【０１８９】
本発明の配送順決定装置は、エリア分けと車両割当、配送順を決めるだけなので、複合機のような構成の装置であっても、短時間で経路計算が可能となる。そして、複合機を用いることにより、パーソナルコンピュータ等の使用に不慣れなユーザであっても、親しみやすい複合機のタッチパネルを用いて、簡単に操作することができる。
【０１９０】
図２，図３に示した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０１９１】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１９２】
以下、図１７に示すメモリマップを参照して本発明に係る配送順決定装置（コンピュータ，複合機等）で読み取り可能なデータ処理プログラムの構成について説明する。
【０１９３】
図１７は、本発明に係る配送順決定装置（コンピュータ，複合機等）で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【０１９４】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１９５】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１９６】
本実施形態における図４，図５，図１０，図１１，図１２，図１４，図１５,
図１６に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１９７】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１９８】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【０１９９】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＤＶＤ−ＲＯＭ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ，シリコンディスク等を用いることができる。
【０２００】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２０１】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２０２】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０２０３】
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ，データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０２０４】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図面の簡単な説明】
【０２０５】
【図１】本発明の第１実施形態を示す配送順決定装置を提供可能な情報処理装置のハードウェア構成を示すブロック図である。
【図２Ａ】本発明の配送順決定装置において用いる各種テーブルの情報を示す図である。
【図２Ｂ】本発明の配送順決定装置において用いる各種テーブルの情報を示す図である。
【図３Ａ】本発明の配送順決定装置において用いる各種テーブルの情報を示す図である。
【図３Ｂ】本発明の配送順決定装置において用いる各種テーブルの情報を示す図である。
【図４】本発明の配送順決定装置における第１の制御処理手順の一例を示すフローチャートである。
【図５】本発明の配送順決定装置における第１の制御処理手順の一例を示すフローチャートである。
【図６】本発明の配送順決定装置における受注入力画面の一例を示す図である。
【図７】本発明の配送順決定装置におけるシミュレーション条件入力画面の一例を示す図である。
【図８】本発明の配送順決定装置における配送順表示画面の一例を示す図である。
【図９】本発明の配送順決定装置において決定された配送ルートを印刷した配達指示書の一例を示す模式図である。
【図１０】本発明の配送順決定装置における第２の制御処理手順の一例を示すフローチャートである。
【図１１】本発明の配送順決定装置における第３の制御処理手順の一例を示すフローチャートである。
【図１２】本発明の配送順決定装置における第４の制御処理手順の一例を示すフローチャートである。
【図１３Ａ】本発明の配送順決定装置における店舗分類指定画面の一例を示す図である。
【図１３Ｂ】本発明の配送順決定装置における店舗分類指定画面の一例を示す図である。
【図１４】本発明の配送順決定装置における第５の制御処理手順の一例を示すフローチャートである。
【図１５】本発明の配送順決定装置における第６の制御処理手順の一例を示すフローチャートである。
【図１６】本発明の配送順決定装置における第７の制御処理手順の一例を示すフローチャートである。
【図１７】本発明に係る配送順決定装置（コンピュータ，複合機等）で読み取り可能な各種データ処理プログラムを格納する記録媒体（記憶媒体）のメモリマップを説明する図である。
【符号の説明】
【０２０６】
２１    ＣＰＵ
２２    ＲＡＭ
２３    ＲＯＭ
２６    キーボード
２７    マウス
２８    ハードディスク
【図１】
2007008670.tif 000003
【図２Ａ】
2007008670.tif 000004
【図２Ｂ】
2007008670.tif 000005
【図３Ａ】
2007008670.tif 000006
【図３Ｂ】
2007008670.tif 000007
【図４】
2007008670.tif 000008
【図５】
2007008670.tif 000009
【図６】
2007008670.tif 000010
【図７】
2007008670.tif 000011
【図８】
2007008670.tif 000012
【図９】
2007008670.tif 000013
【図１０】
2007008670.tif 000014
【図１１】
2007008670.tif 000015
【図１２】
2007008670.tif 000016
【図１３Ａ】
2007008670.tif 000017
【図１３Ｂ】
2007008670.tif 000018
【図１４】
2007008670.tif 000019
【図１５】
2007008670.tif 000020
【図１６】
2007008670.tif 000021
【図１７】
2007008670.tif 000022