以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
本実施の形態において、発注元会社の装置からの指示に基づいて、荷物の運搬の発注の支援を行う情報処理装置を具備する情報システムについて説明する。
また、本実施の形態において、発注元会社の装置からの指示に基づいて、会社のマスタDBを用いて発注書の作成支援を行う情報処理装置を具備する情報システムについて説明する。
また、本実施の形態において、発注元会社の装置から発注情報を受信した場合に、発注先会社に関する1以上の属性値を取得し、当該1以上の属性値を含む通知情報を発注元会社に送信する情報処理装置を具備する情報システムについて説明する。なお、1以上の属性値は、M&A、倒産等に関する不利益情報でも良い。
また、本実施の形態において、発注先会社の通知情報を提供した発注元会社の許可を得た後に、発注を確定させる処理を行う情報処理装置を具備する情報システムについて説明する。
また、本実施の形態において、荷物の運搬に関する発注情報を受信し、蓄積し、利用する情報処理装置を具備する情報システムについて説明する。
また、本実施の形態において、蓄積された2以上の発注情報を分析し、分析結果を出力する情報処理装置を具備する情報システムについて説明する。なお、分析結果は、例えば、発注先会社のスコア、受発注ネットワーク、多重下請け構造である。
なお、本実施の形態において、情報Xが情報Yに対応付いていることは、情報Xから情報Yを取得できること、または情報Yから情報Xを取得できることであり、その対応付けの方法は問わない。情報Xと情報Yとがリンク付いていても良いし、同じバッファに存在していても良いし、情報Xが情報Yに含まれていても良いし、情報Yが情報Xに含まれている等でも良い。
図1は、本実施の形態における情報システムAの概念図である。情報システムAは、情報処理装置1、および1または2以上の会社装置2を備える。
情報処理装置1は、通常、サーバであり、例えば、クラウドサーバ、ASPサーバであるが、その種類は問わない。
会社装置2は、発注元の会社の装置である。会社装置2は、発注情報を送信する装置である。会社装置2は、端末でも良いし、サーバでも良い。会社装置2は、例えば、いわゆるパソコン、スマードフォン、タブレット端末、クラウドサーバ、ASPサーバであるが、その種類は問わない。
情報処理装置1と1以上の各会社装置2とは、インターネットやLAN等のネットワークにより、通信可能である。
図2は、本実施の形態における情報システムAのブロック図である。
情報システムAを構成する情報処理装置1は、格納部11、受信部12、処理部13、および出力部14を備える。格納部11は、会社情報格納部111、および発注情報格納部112を備える。受信部12は、支援指示受信部121、発注情報受信部122、および確定指示受信部123を備える。処理部13は、支援部131、発注情報蓄積部132、および分析部133を備える。支援部131は、発注支援情報送信手段1311、確定処理手段1314、提案手段1313、および通知手段1312を備える。出力部14は、分析結果出力部141を備える。
会社装置2は、会社格納部21、会社受付部22、会社処理部23、会社送信部24、会社受信部25、および会社出力部26を備える。
情報処理装置1を構成する格納部11には、各種の情報が格納される。各種の情報は、例えば、後述する会社情報、後述する発注情報である。
会社情報格納部111には、2以上の会社情報が格納される。2以上の会社情報は、いわゆる会社のマスタDBを構成する情報である。会社情報は、会社に関する情報である。会社情報は、会社に関する基本的な情報であり、通常、すべての会社が有している情報である。会社情報は、会社識別子と1以上の会社属性値とを含む。会社識別子は、会社を識別する情報である。会社識別子は、例えば、ID、会社名である。会社属性値は、例えば、会社名、住所、電話番号、FAX番号、URLである。会社識別子は、会社属性値である、と考えても良い。
なお、会社は、例えば、株式会社、有限会社等であり、その種類は問わない。会社は、個人事業主、個人を含んでも良い。また、ここで、会社は、荷物の運搬に関する業務を発注する先である発注先会社となり得る会社、または荷物の運搬に関する業務を発注する元である発注元会社となり得る会社である。
会社情報が有する1以上の会社属性値は、会社に関して変化があったことに関する情報を含むことは好適である。会社属性値は、例えば、変化情報、不利益情報である。
変化情報は、会社の変化に関する情報である。変化情報は、例えば、変更された住所(最新の住所)、変更された会社名(最新の会社名)、変更された代表取締役名(最新の代表取締役名)、会社属性値に変更があった旨の情報である。1以上の会社属性値は、変化前の会社属性値を含むことは好適である。変化前の会社属性値と変化後の社属性値とは、会社属性値の履歴であるとも言える。変化前の会社属性値は、例えば、古い会社名、古い住所、古い株主、古い代表取締役名である。
不利益情報は、会社にとってネガティブな情報である。不利益情報は、例えば、他社に吸収合併される旨の情報、他社に吸収合併された旨の情報、倒産した旨の情報、不渡りを出した旨の情報、決算の結果が赤字であった旨の情報である。
会社属性値は、例えば、情報の更新日または情報の更新日時に対応付いていることは好適である。また、1以上のうちの会社属性値の一部または全部は、例えば、フラグに対応付いている。フラグは、会社属性値を後述する通知情報に含めることを示す情報である。
発注情報格納部112には、1または2以上の発注情報が格納される。発注情報は、荷物の運搬に関する業務の発注の情報である。発注情報は、発注先会社識別子を有する。発注情報は、発注元会社識別子に対応付く情報である。発注先会社識別子は、荷物の運搬に関する業務を発注する先の会社の会社識別子である。発注元会社識別子は、荷物の運搬に関する業務を発注する側の会社の会社識別子である。発注先会社識別子と発注元会社識別子は、会社識別子である。発注情報は、例えば、発注内容、発注日、発日時、発地、着日時、着地のうちの1以上の情報を有する。
なお、発注情報格納部112の発注情報は、発注情報受信部122が受信した発注情報と全く同じ情報でも良いが、異なる構造を有している、または異なる情報を含む等の情報でも良い。
受信部12は、各種の指示や情報を会社装置2から受信する。各種の指示や情報とは、例えば、後述する支援指示、発注情報、後述する確定指示、会社情報、1以上の会社属性値である。
支援指示受信部121は、支援指示を会社装置2から受信する。支援指示は、荷物の運搬に関する業務の発注の支援を行うことの指示である。支援指示は、通常、発注先会社名を有する。支援指示は、発注情報を含んでも良い。
発注情報受信部122は、発注元会社識別子に対応付く発注情報を、2以上の各会社装置2から受信する。ここでの会社装置2は、発注元会社の装置である。発注情報は、発注先会社名を有する。
確定指示受信部123は、確定指示を会社装置2から受信する。確定指示受信部123は、通知手段1312が通知情報を発注元会社に送信した後に、確定指示を会社装置2から受信することは好適である。確定指示は、発注情報を確定させる指示である。確定指示は、発注情報を含んでも良い。
処理部13は、各種の処理を行う。各種の処理は、例えば、支援部131、発注情報蓄積部132、分析部133が行う処理である。
処理部13は、発注のための処理を行っても良い。発注のための処理は、例えば、発注情報が受け付けられた旨を、発注先の会社に通知する処理、発注情報に対応する決済処理である。なお、発注のための処理は、発注に関する処理であれば良く、その内容は問わない。また、決済処理は、公知の処理であり、発注情報に対応する課金料を引き落とすための処理等であるが、その処理内容は問わない。
処理部13は、受信部12が受信した会社情報を会社情報格納部111に追記する。処理部13は、受信部12が受信した1以上の会社属性値であり、会社識別子に対応する1以上の会社属性値を、当該会社識別子に対応付けて、会社情報格納部111に蓄積する。
支援部131は、支援処理を行う。支援処理は、発注の支援の処理である。支援処理は、例えば、後述する発注支援情報送信処理、後述する通知処理、後述する確定処理、後述する提案処理である。
支援処理は、支援指示が有する発注先会社名に対応する会社名を含む1以上の会社属性値を会社情報格納部111から取得し、当該1以上の会社属性値を用いて行う処理であり、荷物の運搬の発注の支援の処理である。なお、支援指示が有する発注先会社名に対応する会社名とは、支援指示が有する発注先会社名が特定する会社と同じ会社の名称であり、会社格納部21に格納されている会社名である。支援指示が有する発注先会社名に対応する会社名は、支援指示が有する発注先会社名と同じ情報でも良い。
発注支援情報送信手段1311は、発注支援情報送信処理を行う。具体的には、発注支援情報送信手段1311は、1以上の会社属性値を含む情報であり、発注情報の少なくとも一部を含む情報である発注支援情報を構成し、発注支援情報を会社装置2に送信する。なお、発注支援情報は、発注書を構成する情報である。
発注支援情報送信手段1311は、支援指示が有する発注先会社名に対応し、発注先会社名とは異なる会社名を含む1以上の会社属性値を、会社情報格納部111から取得し、当該1以上の会社属性値を用いて、発注の支援である支援処理を行う。
発注支援情報送信手段1311は、予め決められた条件を満たす1以上の会社属性値を含む発注支援情報を会社装置2に送信することは好適である。なお、予め決められた条件は、例えば、対応する更新日が閾値以内または閾値未満の日付の会社属性値、支援指示に含まれる情報と異なる会社属性値である。対応する更新日が閾値以内または閾値未満の日付の会社属性値を送信することは、最近に変更があった会社属性値を知らせることである。支援指示に含まれる情報と異なる会社属性値を送信することは、会社装置2で管理されている会社属性値とは相違する会社属性値、または会社装置2のユーザが知らない会社属性値を、当該ユーザに知らせることである。
通知手段1312は、通知処理を行う。具体的には、通知手段1312は、支援指示受信部121が支援指示を受信した場合、または発注情報受信部122が発注情報を受信した場合に、当該支援指示または当該発注情報が有する発注先会社名に対応する情報であり、予め決められた通知条件に合致する1以上の会社属性値を会社情報格納部111から取得し、当該1以上の会社属性値を含む通知情報を、発注元会社に送信する。ここでの、通知条件は、例えば、予め決められた会社属性値であること、フラグが付与された会社属性値であること、会社属性値に対応する更新日が閾値以内または閾値未満の日付の会社属性値であること、受信された支援指示または発注情報に含まれる会社属性値と異なる会社属性値(例えば、更新された会社名、更新された住所等)であること等である。なお、通知条件に合致する1以上の会社属性値は、不利益情報を含むことは好適である。不利益情報は、発注先会社にとって不利益となる情報である。不利益情報は、例えば、倒産したこと、倒産しそうであること、M&Aにより吸収合併したこと、M&Aにより吸収合併しそうであることである。予め決められた会社属性値は、例えば、属性値「不利益情報」、属性値「スコア」である。
発注元会社に送信することは、通常、会社装置2への送信であるが、発注元会社に対応する装置またはメールアドレス等に送信しても良い。なお、発注元会社に対応する装置と通信するための情報(例えば、IPアドレス)またはメールアドレス等は、例えば、格納部11に格納されている。
提案手段1313は、予め決められた提案条件を満たす発注先の発注先会社名を含む発注先候補情報を会社情報格納部111から取得し、発注先候補情報を会社装置2に送信する。発注先候補情報は、発注先の候補の会社の情報である。発注先候補情報は、発注先の候補の会社の1以上の会社属性値を含む。発注先候補情報は、発注先の候補の会社の会社情報でも良い。
提案条件は、例えば、1以上の会社属性値に基づく条件である。提案条件は、例えば、発注情報が有する発注先会社と類似する会社である。発注情報が有する発注先会社と類似する会社は、例えば、発注情報が有する発注先会社に対応する会社情報が有する2以上の各会社属性値を要素とするベクトルとの類似度が条件(例えば、類似度が最大、類似度が閾値以上等)を満たす2以上の各会社属性値を有する会社情報に対応する会社である。発注情報が有する発注先会社と類似する会社は、例えば、発注情報が有する発注先会社に対応する会社情報が有する1以上の特定の会社属性値が一致または類似する1以上の特定の会社属性値を有する会社情報に対応する会社である。なお、2つの会社属性値が類似することは、通常、2つの会社属性値の差異が閾値以内または閾値より小さいことである。また、提案条件は、例えば、発注情報格納部112に格納されている発注情報の中で、未実施の発注情報の数が閾値以下または閾値より少ない(発注を受ける余裕のある)会社である。提案条件は、例えば、保有台数と発日と着日との間の日における発注情報の数との差が閾値以上または閾値より多い(発注を受ける余裕のある)会社である。
確定処理手段1314は、確定指示の受信に応じて、確定処理を行う。確定処理は、確定指示に対応する発注情報を確定させる処理である。確定処理は、例えば、発注情報の蓄積、確定フラグの付与、発注情報が蓄積された旨の情報の送信、発注情報の発注先への送信である。なお、確定処理の結果である結果情報は問わない。また、確定指示は、発注情報を含んでも良いし、発注情報にリンク付いていても良い。
発注情報蓄積部132は、発注情報受信部122が受信した発注情報を、発注元会社識別子と発注元会社識別子と対になる会社名とに対応付けて、発注情報格納部112に蓄積する。
発注情報蓄積部132は、例えば、受信された発注情報を用いて会社情報格納部111から一つのい会社情報を決定し、当該発注情報が有する古い会社属性値(例えば、古い住所)を、当該一つのい会社情報が有する新しい会社属性値に変更した発注情報(例えば、最新の住所)を、発注情報格納部112に蓄積する。
分析部133は、発注情報格納部112に格納されている2以上の発注情報を分析し、分析結果を取得する。
分析部133は、例えば、2以上の各発注情報に含まれる発注先会社識別子ごとに、発注情報を分析し、発注先会社ごとのスコアを含む分析結果を取得する。分析部133は、例えば、スコア取得処理、ネットワーク取得処理、または下請構造取得処理のうちの1または2以上の処理を行う。以下、各々の分析処理について説明する。
(1)スコア取得処理
分析部133は、例えば、発注先会社識別子に対応する発注情報から取得される1または2以上のパラメータを用いて、発注先会社ごとのスコアを取得する。
さらに具体的には、分析部133は、発注先会社識別子ごとに、発注情報格納部112に格納されている1以上の発注情報を取得する。次に、分析部133は、1以上の発注情報を用いて、1以上のパラメータを取得する。次に、分析部133は、例えば、1以上のパラメータを用いて、スコアを取得する。
なお、パラメータは、例えば、発注先会社識別子に対応する発注情報の数、発注先会社識別子に対応する1以上の発注情報に含まれる運搬する荷物の量の和である総荷物量である。分析部133は、例えば、発注先会社識別子ごとに、発注先会社識別子に対応する発注情報の数または総荷物量が多いほど、高いスコアを取得する。
(1-1)演算式を用いてスコアを取得する場合
分析部133は、例えば、発注先会社識別子ごとに、発注情報格納部112に格納されている1以上の発注情報を取得する。次に、分析部133は、例えば、発注先会社識別子ごとに、1以上の発注情報を用いて、1または2以上のパラメータを取得する。次に、分析部133は、例えば、発注先会社識別子ごとに、1以上の各パラメータを、スコアを算出する演算式に代入し、当該演算式を実行し、スコアを取得する。
なお、演算式は、例えば、発注先会社識別子に対応する発注情報の数または総荷物量をパラメータとする増加関数である。
(1-2)対応表を用いてスコアを取得する場合
分析部133は、例えば、発注先会社識別子ごとに、発注情報格納部112に格納されている1以上の発注情報を取得する。次に、分析部133は、例えば、発注先会社識別子ごとに、1以上の発注情報を用いて、2以上のパラメータを取得する。次に、分析部133は、発注先会社識別子ごとに、2以上の各パラメータを要素とするベクトルを構成する。次に、分析部133は、例えば、発注先会社識別子ごとに、当該ベクトルに最も近似するベクトルと対になるスコアを対応表から取得する。
なお、対応表は、2以上の各パラメータを要素とするベクトルとスコアとを対応付ける2以上の対応情報を有する。対応表は、例えば、格納部11に格納されている。
(1-3)機械学習を用いてスコアを取得する場合
分析部133は、例えば、発注先会社識別子ごとに、発注情報格納部112に格納されている1以上の発注情報を取得する。次に、分析部133は、例えば、発注先会社識別子ごとに、1以上の発注情報を用いて、2以上のパラメータを取得する。次に、分析部133は、発注先会社識別子ごとに、2以上の各パラメータを要素とするベクトルを構成する。次に、分析部133は、例えば、発注先会社識別子ごとに、当該ベクトルと学習器とを、機械学習の予測モジュールに与え、当該予測モジュールを実行し、スコアを取得する。
なお、学習器は、機械学習の学習処理を行う学習モジュールに、2以上のパラメータを説明変数とし、スコアを目的変数とする2以上の教師データを与え、当該学習モジュールを実行することにより取得された情報である。学習器は、格納部11に格納されている。学習器は、予測器、学習モデル、モデルと言っても良い。
なお、学習処理、予測処理を行う機械学習のアルゴリズムは問わない。機械学習は、例えば、深層学習、ランダムフォレスト、決定木、SVRである。機械学習のモジュールは、例えば、TensorFlowのライブラリ、R言語のランダムフォレストのモジュール、TinySVMである。
(2)ネットワーク取得処理
分析部133は、例えば、発注元会社および発注先会社をノードとし、当該発注元会社と当該発注先会社とのエッジを有する受発注ネットワークである分析結果を構成する。発注元会社および発注先会社をノードとすることは、発注元会社に対応するノード、および発注先会社に対応するノードを構成することである。
分析部133は、例えば、一の発注元会社と一の発注先会社に対応する発注情報の数を視覚的に明示する態様の受発注ネットワークを構成する。分析部133は、例えば、一の発注元会社と一の発注先会社に対応する発注情報から取得できる1以上のパラメータを用いて、エッジ属性値を決定することは好適である。発注情報から取得できる1以上のパラメータは、例えば、発注情報の数、1以上の発注情報から取得できる総荷物数、総荷物重量、総輸送金額である。パラメータは、エッジ属性値を決定するための情報である。エッジ属性値は、エッジの属性値である。エッジ属性値は、例えば、エッジの太さ、エッジの線種、エッジの色である。なお、エッジは、発注元会社に対応するノードから発注先会社に対応するノードに向かう有向のエッジであることは好適であるが、無向のエッジでも良い。つまり、受発注ネットワークは、有向グラフであることは好適であるが、無向グラフでも良い。
分析部133は、例えば、一の発注元会社と一の発注先会社に対応する発注情報の数が多いほど、太いエッジを有する受発注ネットワークを構成する。分析部133は、例えば、一の発注元会社と一の発注先会社に対応する発注情報の数が多いほど、濃い色のエッジを有する受発注ネットワークを構成する。
(3)下請構造取得処理
分析部133は、例えば、2以上の発注情報を用いて、一の荷物に対する荷主会社、当該一の荷物に対する一次請会社、および当該一の荷物に対する二次請会社を決定し、決定した結果である多重下請構造情報である分析結果を取得する。なお、多重下請構造情報は、例えば、多重下請構造を図的に示した多重下請構造ツリーである。なお、多重下請構造情報は、荷主会社、一次請会社、および二次請会社を特定する情報を少なくとも有する。多重下請構造情報は、三次請会社、四次請等会社の、さらに下位の下請の会社を特定する情報を含んでも良い。
分析部133は、例えば、着目する発注情報(第一の発注情報)に対して、下請条件を満たす他の1以上の発注情報(第二の発注情報)を検知する。下請条件は、第一と第二の2つの発注情報のうちの第一の発注情報が有する発注先会社識別子と第二の発注情報が有する発注元会社識別子とが一致し、かつ2つの発注情報が有する特定の1以上の要素情報が特定の関係にあることである。特定の1以上の要素情報は、例えば、発地、着地であり、特定の関係は、「一致」することである。また、特定の1以上の要素情報は、例えば、発日、着日であり、特定の関係は、「一致」することである。また、特定の1以上の要素情報は、例えば、発注量であり、特定の関係は、「第一の発注情報が有する発注量>=第二の発注情報が有する発注量」である。
分析部133は、例えば、第一と第二の2つの発注情報のうちの第一の発注情報が有する発注先会社識別子と第二の発注情報が有する発注元会社識別子とが一致し、かつ2つの発注情報が有する特定の1以上の要素情報が特定の関係にある場合に、第一の発注情報が有する発注先会社識別子で識別される会社が一次請会社であり、第二の発注情報が有する発注先会社識別子で識別される会社が二次請会社である、と判断する。
分析部133は、例えば、第一と第二の2つの発注情報のうちの第一の発注情報が有する発注先会社識別子と第二の発注情報が有する発注元会社識別子とが一致し、かつ2つの発注情報が有する発地が一致し、かつ2つの発注情報が有する着地が一致する場合、第一の発注情報が有する発注先会社識別子で識別される会社が一次請会社であり、第二の発注情報が有する発注先会社識別子で識別される会社が二次請会社である、と判断する。
また、分析部133は、例えば、第一と第二の2つの発注情報が有する発日時または発日、着日時または着日をも一致する場合に、第一の発注情報が有する発注先会社識別子で識別される会社が一次請会社であり、第二の発注情報が有する発注先会社識別子で識別される会社が二次請会社である、と判断しても良い。
また、分析部133は、例えば、第二の発注情報が有する発注先会社識別子を発注元会社識別子とする第三の発注情報であり、第二の発注情報が有する発地と第二の発注情報が有する着地とを有する第三の発注情報が存在する場合、当該第三の発注情報が有する発注先会社識別子で識別される会社が三次請会社である、と判断しても良い。なお、分析部133は、例えば、第一と第二と第三の3つの発注情報が有する発日時または発日、着日時または着日をも一致する場合に、第一の発注情報が有する発注先会社識別子で識別される会社が一次請会社であり、第二の発注情報が有する発注先会社識別子で識別される会社が二次請会社であり、第三の発注情報が有する発注先会社識別子で識別される会社が三次請会社である、と判断しても良い。なお、第一の発注情報が有する発注元会社識別子で識別される会社が、例えば、荷主会社である。
出力部14は、各種の情報を出力する。各種の情報は、例えば、1以上の会社属性値、分析結果である。
ここで、出力とは、例えば、会社装置2や図示しない端末への送信であるが、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念であっても良い。
分析結果出力部141は、分析部133が取得した分析結果を出力する。分析結果は、例えば、スコア、受発注ネットワーク、多重下請構造情報である。
会社装置2を構成する会社格納部21には、各種の情報が格納される。各種の情報は、会社が保有する取引先データベース、会社識別子である。取引先データベースは、会社装置2を保有する会社の取引先の情報を管理するデータベースである。取引先データベースは、1以上の取引先情報を有する。取引先情報は、会社識別子と1以上の会社属性値とを含む。1以上の会社属性値は、通常、荷物の運搬に関する業務を発注する先である発注先会社となり得る会社の属性値である。
なお、2以上の各会社装置2は、通常、各々、異なる取引先データベースを有する。
会社受付部22は、各種の指示や情報を受け付ける。各種の指示や情報は、例えば、発注情報、支援指示、確定指示である。
各種の指示や情報の入力手段は、タッチパネルやキーボードやマウスやメニュー画面によるもの等、何でも良い。会社受付部22は、タッチパネルやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
会社処理部23は、各種の処理を行う。会社処理部23は、例えば、会社受付部22が受け付けた指示や情報を送信する構造にする。会社処理部23は、例えば、会社受信部25が受信した情報を出力する構造にする。
会社送信部24は、各種の指示や情報を情報処理装置1に送信する。各種の指示や情報は、例えば、発注情報、支援指示、確定指示である。
会社受信部25は、各種の情報を情報処理装置1から受信する。各種の情報は、例えば、発注情報を構成する一部または全部の情報、1以上の会社属性値、他社のスコア、通知情報、不利益情報、発注先候補情報である。
会社出力部26は、各種の情報を出力する。各種の情報は、例えば、発注情報を構成する一部または全部の情報、1以上の会社属性値、他社のスコア、通知情報、不利益情報、発注先候補情報である。
ここで、出力とは、例えば、ディスプレイへの表示であるが、プロジェクターを用いた投影、プリンタでの印字、音出力、記録媒体への蓄積、他の処理装置への送信、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念であっても良い。
格納部11、会社情報格納部111、発注情報格納部112、および会社格納部21は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
格納部11等に情報が記憶される過程は問わない。例えば、記録媒体を介して情報が格納部11等で記憶されるようになってもよく、通信回線等を介して送信された情報が格納部11等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された情報が格納部11等で記憶されるようになってもよい。
受信部12、支援指示受信部121、発注情報受信部122、確定指示受信部123、通知手段1312、および会社受信部25は、通常、無線または有線の通信手段で実現される。
処理部13、支援部131、発注情報蓄積部132、分析部133、提案手段1313、確定処理手段1314、および会社処理部23は、例えば、プロセッサやメモリ等から実現され得る。処理部13等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。なお、プロセッサは、CPU、MPU、GPU等であり、その種類は問わない。
発注支援情報送信手段1311、通知手段1312、出力部14、分析結果出力部141、および会社送信部24は、通常、無線または有線の通信手段で実現される。
会社受付部22は、タッチパネルやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現されても良い。
会社出力部26は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。会社出力部26は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
次に、情報システムAの動作例について説明する。まず、情報処理装置1の動作例について、図3のフローチャートを用いて説明する。
(ステップS301)支援指示受信部121は、支援指示を受信したか否かを判断する。支援指示を受信した場合はステップS302に行き、支援指示を受信しなかった場合はステップS304に行く。
(ステップS302)発注支援情報送信手段1311は、発注支援情報送信処理を行う。発注支援情報送信処理の例について、図4のフローチャートを用いて説明する。
(ステップS303)通知手段1312は、通知処理を行う。ステップS301に戻る。通知処理の例について、図5のフローチャートを用いて説明する。
(ステップS304)発注情報受信部122は、発注情報を受信したか否かを判断する。発注情報を受信した場合はステップS305に行き、発注情報を受信しなかった場合はステップS309に行く。
(ステップS305)通知手段1312は、通知処理を行う。なお、通知処理の例について、図5のフローチャートを用いて説明する。
(ステップS306)ステップS305における通知処理における判断において、発注が可能であるか否かを判断する。発注が可能であればステップS307に行き、発注が可能でなければステップS320に行く。なお、発注が可能である場合は、例えば、通知すべき情報が存在しないと判断された場合、または通知情報の中に不利益情報が存在しない場合である。
(ステップS307)発注情報蓄積部132は、受信された発注情報を発注情報格納部112に蓄積する。
(ステップS308)処理部13は、発注のための処理を行う。ステップS301に戻る。
(ステップS309)確定指示受信部123は、確定指示を受信したか否かを判断する。確定指示を受信した場合はステップS310に行き、支援指示を受信しなかった場合はステップS311に行く。
(ステップS310)発注情報蓄積部132は、受信された確定指示に対応する発注情報を取得する。ステップS307に行く。確定指示に対応する発注情報は、例えば、確定指示が有する発注情報、確定指示を特定するIDに対応して、格納部11に一時蓄積されている発注情報である。
(ステップS311)分析部133は、会社のスコアを取得するか否かを判断する。スコアを取得する場合はステップS312に行き、スコアを取得しない場合はステップS314に行く。なお、会社のスコアを取得するためのトリガーは、例えば、スコア取得指示が受信されることであるが、そのトリガーは問わない。
(ステップS312)分析部133は、1以上の会社のスコアを取得する。かかるスコア取得処理の例について、図6のフローチャートを用いて説明する。
(ステップS313)分析結果出力部141は、ステップS312で取得された1以上の会社のスコアを出力する。ステップS301に戻る。
(ステップS314)分析部133は、受発注ネットワークを取得するか否かを判断する。受発注ネットワークを取得する場合はステップS315に行き、受発注ネットワークを取得しない場合はステップS317に行く。なお、受発注ネットワークを取得するためのトリガーは、例えば、受発注ネットワーク出力指示が受信されることであるが、そのトリガーは問わない。
(ステップS315)分析部133は、受発注ネットワークを取得する処理を行う。かかるネットワーク取得処理の例について、図7のフローチャートを用いて説明する。
(ステップS316)分析結果出力部141は、ステップS315で取得された受発注ネットワークを出力する。ステップS301に戻る。
(ステップS317)分析部133は、下請構造情報を取得するか否かを判断する。下請構造情報を取得する場合はステップS318に行き、下請構造情報を取得しない場合はステップS301に戻る。なお、下請構造情報を取得するためのトリガーは、例えば、下請構造出力指示が受信されることであるが、そのトリガーは問わない。
(ステップS318)分析部133は、下請構造情報を取得する処理を行う。かかる下請構造取得処理の例について、図8のフローチャートを用いて説明する。
(ステップS319)分析結果出力部141は、ステップS318で取得された下請構造情報を出力する。ステップS301に戻る。
(ステップS320)提案手段1313は、提案処理を行う。ステップS301に戻る。提案処理の例について、図10のフローチャートを用いて説明する。
次に、ステップS302の。発注支援情報送信処理の例について、図4のフローチャートを用いて説明する。
(ステップS401)発注支援情報送信手段1311は、受信された支援指示が有する1以上の会社属性値を取得する。
(ステップS402)発注支援情報送信手段1311は、ステップS401で取得した1以上の会社属性値とすべて一致する1以上の会社属性値を有する会社情報が会社情報格納部111に存在するか否かを判断する。当該会社情報が存在する場合はステップS403に行き、存在しない場合はステップS405に行く。
(ステップS403)発注支援情報送信手段1311は、ステップS402で検索した会社情報から発注情報を構成する1以上の会社属性値を取得する。なお、発注支援情報送信手段1311は、ステップS401で取得した1以上の会社属性値を流用しても良い。
(ステップS404)発注支援情報送信手段1311は、ステップS403またはステップS412で取得した1以上の会社属性値を、支援指示を送信してきた装置(通常、会社装置2)に送信する。上位処理にリターンする。なお、かかる1以上の会社属性値は、例えば、会社装置2において、発注情報の作成のために使用される情報である。
(ステップS405)発注支援情報送信手段1311は、ステップS401で取得した1以上の会社属性値の中の発注先の会社名と一致する会社名が会社情報格納部111に存在するか否かを判断する。当該会社名が存在する場合はステップS407に行き、存在しない場合はステップS406に行く。
(ステップS406)発注支援情報送信手段1311は、ステップS401で取得した1以上の会社属性値の中の発注先の会社名に対応する会社名を取得する。
なお、発注支援情報送信手段1311は、例えば、ステップS401で取得した1以上の会社属性値の中の発注先の会社名と対になる正式な会社名を、図示しない名寄せデータベースから取得する。なお、名寄せデータベースは、一の会社の2以上の会社名(例えば、「株式会社ABC」「(株)ABC」「ABC」)を有する1以上のレコードを有するDBである。
また、発注支援情報送信手段1311は、例えば、ステップS401で取得した1以上の会社属性値の中の発注先の会社名と類似度が閾値以上であり、最も類似度が大きい会社名を会社情報格納部111から取得する。
(ステップS407)発注支援情報送信手段1311は、カウンタiに1を代入する。
(ステップS408)発注支援情報送信手段1311は、ステップS401で取得した1以上の会社属性値の中の会社名を除く、i番目の会社属性値が存在するか否かを判断する。i番目の会社属性値が存在する場合はステップS409に行き、i番目の会社属性値が存在しない場合はステップS412に行く。
(ステップS409)発注支援情報送信手段1311は、発注先の会社名に対応する会社情報の中のi番目の会社属性値に対応する会社属性値(例えば、住所)と、i番目の会社属性値(例えば、住所)とが一致するか否かを判断する。2つの会社属性値が一致する場合はステップS411に行き、一致しない場合はステップS410に行く。なお、比較される2つの会社属性値は、同じ種類の情報(例えば、住所)であることは言うまでもない。
(ステップS410)発注支援情報送信手段1311は、発注先の会社名に対応する会社情報の中のi番目の会社属性値とフラグとを取得する。なお、かかるi番目の会社属性値は、更新されている会社属性値である。フラグは、更新されている会社属性値である旨を示す情報である。なお、更新されている会社属性値とは、会社装置2から送信された会社属性値とは異なる会社属性値でも良い。
(ステップS411)発注支援情報送信手段1311は、カウンタiを1、インクリメントする。ステップS408に戻る。
(ステップS412)発注支援情報送信手段1311は、ステップS406で取得した発注先の会社名またはステップS405で一致すると判断した会社名、およびステップS409で一致するとした会社属性値、およびステップS410で取得した会社属性値を取得する。ステップS404に行く。
次に、ステップS303の通知処理の例について、図5のフローチャートを用いて説明する。
(ステップS501)通知手段1312は、対応する会社の会社情報を取得する。なお、対応する会社は、支援指示または発注情報に含まれる発注先会社識別子で識別される会社である。
(ステップS502)通知手段1312は、カウンタiに1を代入する。
(ステップS503)通知手段1312は、ステップS501で取得した会社情報が有するi番目の会社属性値が存在するか否かを判断する。i番目の会社属性値が存在する場合はステップS504に行き、存在しない場合はステップS507に行く。
(ステップS504)通知手段1312は、i番目の会社属性値が通知条件に合致するか否かを判断する。通知条件に合致する場合はステップS505に行き、通知条件に合致しない場合はステップS506に行く。
(ステップS505)通知手段1312は、i番目の会社属性値を取得し、図示しないバッファに一時蓄積する。
(ステップS506)通知手段1312は、カウンタiを1、インクリメントする。ステップS503に戻る。
(ステップS507)通知手段1312は、ステップS505で図示しないバッファに一時蓄積した会社属性値が存在するか否かを判断する。一時蓄積した会社属性値が存在する場合はステップS508に行き、存在しない場合は上位処理にリターンする。
(ステップS508)通知手段1312は、図示しないバッファに一時蓄積した1以上の会社属性値を有する通知情報を構成する。
(ステップS509)通知手段1312は、通知情報を送信する。上位処理にリターンする。なお、通知情報の送信先は、通常、支援支持や発注情報を送信してきた会社装置2である。
次に、ステップS312のスコア取得処理の例について、図6のフローチャートを用いて説明する。
(ステップS601)分析部133は、カウンタiに1を代入する。
(ステップS602)分析部133は、スコアを取得する対象のi番目の会社の会社識別子が存在するか否かを判断する。i番目の会社識別子が存在する場合はステップS603に行き、存在しない場合は上位処理にリターンする。
(ステップS603)分析部133は、i番目の会社識別子が発注先の会社の識別子となる1以上の発注情報を発注情報格納部112から取得する。
(ステップS604)分析部133は、カウンタjに1を代入する。
(ステップS605)分析部133は、スコアの取得のために使用するj番目のパラメータが存在するか否かを判断する。j番目のパラメータが存在する場合はステップS606に行き、j番目のパラメータが存在しない場合はステップS608に行く。なお、分析部133は、スコアの取得のために使用する1以上のパラメータの情報は保持している。
(ステップS606)分析部133は、ステップS603で取得した1以上の発注情報を用いて、j番目のパラメータを取得し、図示しないバッファに一時蓄積する。なお、j番目のパラメータは、例えば、発注情報の数、1以上の発注情報が有する発注量(例えば、荷物の数、荷物の量、金額)の合計である。
(ステップS607)分析部133は、カウンタjを1、インクリメントする。ステップS605に戻る。
(ステップS608)分析部133は、図示しないバッファに一時蓄積した1以上のパラメータを用いて、スコアを取得する。
(ステップS609)分析部133は、カウンタiを1、インクリメントする。ステップS602に戻る。
なお、図6のフローチャートのステップS608において、1以上のパラメータを用いてスコアを取得する方法は、演算式による方法、対応表を用いる方法、機械学習による方法等、種々、あり得る。
次に、ステップS315のネットワーク取得処理の例について、図7のフローチャートを用いて説明する。カウンタiに1を代入する。
(ステップS701)分析部133は、カウンタiに1を代入する。
(ステップS702)分析部133は、受発注ネットワークを構成するために使用するi番目の発注情報が存在するか否かを判断する。i番目の発注情報が存在する場合はステップS703に行き、存在しない場合はステップS705に行く。
なお、受発注ネットワークを構成するために使用する発注情報は、例えば、発注情報格納部112のすべての発注情報、または特定の期間の発注情報である。
(ステップS703)分析部133は、i番目の発注情報が有する発注元の会社名と発注先の会社名とを取得し、図示しないバッファに一時蓄積する。
(ステップS704)分析部133は、カウンタiを1、インクリメントする。ステップS602に戻る。
(ステップS705)分析部133は、図示しないバッファに一時蓄積された発注元の会社名と発注先の会社名とを、発注元の会社名と発注先の会社名とキーとして、ソートする。
(ステップS706)分析部133は、カウンタiに1を代入する。
(ステップS707)分析部133は、ステップS705でソートした結果を用いて、i番目の発注元の会社名と発注先の会社名との組が存在するか否かを判断する。i番目の発注元の会社名と発注先の会社名との組が存在する場合はステップS708に行き、存在しない場合はステップS711に行く。
(ステップS708)分析部133は、i番目の発注元の会社名と発注先の会社名との組を含む1以上の発注情報を用いて、1以上のパラメータを取得する。分析部133は、1以上のパラメータを用いて、エッジ属性値を取得する。なお、パラメータは、例えば、エッジの太さを決定するための情報、エッジの色を決定するための情報である。パラメータは、例えば、i番目の発注元の会社名と発注先の会社名との組を含む発注情報の数、i番目の発注元の会社名と発注先の会社名との組を含む1以上の発注情報の発注量の合計(例えば、荷物数の合計、荷物の重量の合計、金額の合計)である。
(ステップS709)分析部133は、i番目の発注元の会社名と発注先の会社名との組と1以上のエッジ属性値とを、対応付けて図示しないバッファに一時蓄積する。ここで、分析部133は、i番目の発注元の会社名と発注先の会社名との組と1以上のパラメータとを、対応付けて図示しないバッファに一時蓄積しても良い。
(ステップS710)分析部133は、カウンタiを1、インクリメントする。ステップS602に戻る。
(ステップS711)分析部133は、カウンタiに1を代入する。
(ステップS712)分析部133は、i番目の組が存在するか否かを判断する。i番目の組が存在する場合はステップS713に行き、存在しない場合は上位処理にリターンする。
(ステップS713)分析部133は、i番目の組が有する発注元の会社名に対応するノードを既に構成したか否かを判断する。対応するノードを既に構成していた場合はステップS715に行き、構成していない場合はステップS714に行く。
(ステップS714)分析部133は、i番目の組が有する発注元の会社名に対応するノードを構成する。
(ステップS715)分析部133は、i番目の組が有する発注先の会社名に対応するノードを既に構成したか否かを判断する。対応するノードを既に構成していた場合はステップS717に行き、構成していない場合はステップS716に行く。
(ステップS716)分析部133は、i番目の組が有する発注先の会社名に対応するノードを構成する。
(ステップS717)分析部133は、i番目の組に対応する1以上のエッジ属性値を用いて、i番目の組が有する発注元の会社名に対応するノードと、i番目の組が有する発注先の会社名に対応するノードとをリンクするエッジを構成する。
(ステップS718)分析部133は、カウンタiを1、インクリメントする。ステップS712に戻る。
次に、ステップS318の下請構造取得処理の例について、図8のフローチャートを用いて説明する。
(ステップS801)分析部133は、カウンタiに1を代入する。
(ステップS802)分析部133は、下請構造情報を取得するために使用するi番目の発注情報が存在するか否かを判断する。i番目の発注情報が存在する場合はステップS803に行き、存在しない場合は上位処理にリターンする。
(ステップS803)分析部133は、i番目の発注情報を取得する。
(ステップS804)分析部133は、取得したi番目の発注情報のさらに下請の発注情報を取得する。かかる下請発注情報取得処理の例について、図9のフローチャートを用いて説明する。
(ステップS805)分析部133は、カウンタiを1、インクリメントする。ステップS802に戻る。
次に、ステップS804の下請発注情報取得処理の例について、図9のフローチャートを用いて説明する。
(ステップS901)分析部133は、カウンタjに1を代入する。
(ステップS902)分析部133は、下請発注情報を取得する際に使用するj番目の発注情報が存在するか否かを判断する。j番目の発注情報が存在する場合はステップS903に行き、存在しない場合は上位処理にリターンする。
(ステップS903)分析部133は、j番目の発注情報を取得する。また、分析部133は、j番目の発注情報が有する発注先会社名を取得する。なお、この発注先会社名は、例えば、荷主の会社名である。
(ステップS904)分析部133は、ステップS803の発注情報に対して、j番目の発注情報が下請条件を満たすか否かを判断する。下請条件を満たす場合はステップS905に行き、下請条件を満たさない場合はステップS910に行く。
(ステップS905)分析部133は、着目する発注情報(例えば、ステップS803の発注情報)の発注元の会社名、着目する発注情報の発注先の会社名(j番目の発注情報の発注元の会社名)、およびj番目の発注情報の発注先の会社名を取得し、図示しないバッファに一時蓄積する。
(ステップS906)分析部133は、ステップS905で取得した着目する発注情報よりさらに上位の発注情報が存在するか否かを判断する。さらに上位の発注情報が存在する場合はステップS907に行き、存在しない場合はステップS908に行く。
(ステップS907)分析部133は、さらに上位の発注情報に対応する下請構造情報にステップS905で取得したj番目の発注情報の発注先の会社名を付加し、4層以上の下請構造情報を取得する。
(ステップS908)分析部133は、3階層の会社名を有する下請構造情報を取得する。
(ステップS909)分析部133は、ステップS903で取得したj番目の発注情報を着目する発注情報として、下請発注情報取得処理を行う。
(ステップS910)分析部133は、カウンタjを1、インクリメントする。ステップS902に戻る。
次に、ステップS320の提案処理の例について、図10のフローチャートを用いて説明する。
(ステップS1001)提案手段1313は、カウンタiに1を代入する。
(ステップS1002)提案手段1313は、会社情報格納部111に、i番目の会社情報が存在するか否かを判断する。i番目の会社情報が存在する場合はステップS1003に行き、存在しない場合はステップS1006に行く。
(ステップS1003)提案手段1313は、i番目の会社情報を用いて、提案条件の判断に使用する1以上の情報を取得する。次に、提案手段1313は、取得した1以上の情報を用いて、i番目の会社情報が提案条件に合致するか否かを判断する。提案条件に合致する場合はステップS1004に行き、合致しない場合はステップS1005に行く。
(ステップS1004)提案手段1313は、i番目の会社情報が有する1以上の会社属性値を取得する。
(ステップS1005)提案手段1313は、カウンタiを1、インクリメントする。ステップS1002に戻る。
(ステップS1006)提案手段1313は、ステップS1004で取得した1以上の会社の1以上の会社属性値を用いて、提案情報を構成する。
(ステップS1007)提案手段1313は、ステップS1006で構成した提案情報を会社装置2に送信する。上位処理にリターンする。
次に、会社装置2の動作例について説明する。会社装置2の会社受付部22は、支援指示、発注情報、または確定指示を受け付ける。次に、会社処理部23は、会社受付部22が受け付けた指示や情報を送信する構造にする。会社送信部24は、当該指示や情報を情報処理装置1に送信する。また、会社受信部25は、各種の情報を情報処理装置1から受信する。次に、会社処理部23は、会社受信部25が受信した情報を出力する構造にする。会社出力部26は、当該情報を出力する。
なお、図示しない端末は、情報処理装置1から分析結果を受信し、出力する。図示しない端末は、例えば、情報処理装置1を管理する組織のメンバーが使用する端末である。分析結果は、例えば、各会社のスコア、受発注ネットワーク、下請構造情報である。
以下、本実施の形態における情報システムAの具体的な動作例について説明する。
今、情報処理装置1の会社情報格納部111には、図11に示す会社情報管理表が格納されている。会社情報管理表は、1または2以上の会社情報を管理する表である。会社情報管理表は、会社マスタDBと言っても良い。会社情報管理表は、「ID」「会社識別子」「会社名」「住所」「TEL」「代表取締役」「保有台数」「締日」「不利益情報」「スコア」を有する1以上のレコードを管理する。「ID」はレコードを識別する情報である。「保有台数」は、会社が保有する荷物運搬車(通常、トラック)の数である。「締日」は、会社の締め日である。また、「会社名」「住所」「TEL」「代表取締役」「保有台数」「締日」「不利益情報」には、各情報が入力された日付に対応付いている。さらに、会社情報管理表は、「会社名」「住所」「TEL」「代表取締役」「保有台数」「締日」「不利益情報」について、変更があった場合には、履歴が分かるように、変更前の情報も管理している。「スコア」は、分析部133が取得した会社の最新のスコアである。
また、発注情報格納部112には、図12に示す構造を有する発注情報管理表が格納されている。発注情報管理表は、1または2以上の発注情報を管理する表である。発注情報管理表は、「ID」「発注元会社識別子」「発注元会社名」「発注先会社識別子」「発注先会社名」「発注内容」「発注日」「発日時」「発地」「着日時」「着地」「フラグ」を有する。「発注内容」は、「荷物」「発注量」を有する。「荷物」は、運搬する荷物の内容を示す情報である。「発注量」は運搬する荷物の量を示す情報である。ここでの「フラグ」は、発注が正式に行われたか否かを示す情報である。フラグ「1」は、発注が正式に行われたことを示す。フラグ「0」または「NULL」は、情報処理装置1は発注情報を受信したが、発注が確定しないことを示す。
かかる状況において、5つの具体例について説明する。具体例1は、会社装置2(ここでは、発注元の会社の端末)から、発注前に支援指示を情報処理装置1に送信する場合で、発注先の情報(例えば、住所)に変更がある場合である。具体例2は、会社装置2から発注情報を情報処理装置1に送信した場合に、通知条件に合致する情報を情報処理装置1が会社装置2に送信する場合である。具体例3は、会社のスコアを算出する場合である。具体例4は、受発注ネットワークを出力する場合である。具体例5は、多重下請構造情報を出力する場合である。
(具体例1)
今、株式会社Yの会社装置2には、図13に示すデータベースであり、株式会社Yと取引きのある会社のデータベース(個別データベース)が格納されている、とする。
次に、株式会社Yの担当者は、会社装置2に出力された個別データベース(図13)を参照し、「<会社名>A運送 <住所>東京都港区・・・ <TEL>03-1111-2150 ・・・」を含む支援指示を会社装置2に入力した、とする。すると、会社装置2は、当該支援指示を受け付け、当該支援指示を情報処理装置1に送信する。
次に、情報処理装置1の支援指示受信部121は、「<会社名>A運送 <住所>東京都港区・・・ <TEL>03-1111-2150 ・・・」を含む支援指示を受信する。
次に、情報処理装置1の発注支援情報送信手段1311は、受信された支援指示が有する会社属性値(<会社名>A運送 <住所>東京都港区・・・ <TEL>03-1111-2150)を取得する。次に、発注支援情報送信手段1311は、会社情報管理表(図11)を参照し、取得したすべての会社属性値に一致するレコードが会社情報管理表に存在しない、と判断する。次に、発注支援情報送信手段1311は、会社情報管理表の中の会社名から、取得した会社名「A運送」に類似度が最も高い会社名を「株式会社A運送」と決定する。次に、発注支援情報送信手段1311は、「株式会社A運送」と対になる属性値「住所」「TEL」を参照し、取得した「<住所>東京都港区・・・ 」「<TEL>03-1111-2150」が、古い住所およびTELに合致すると判断し、新しい「<住所>東京都太田区・・・ 」「<TEL>03-2222-5511」を取得する。次に、発注支援情報送信手段1311は、新しい「<住所>東京都太田区・・・ 」「<TEL>03-2222-5511」に、変更されていることを示すフラグ「1」を付与する。次に、発注支援情報送信手段1311は、取得した会社名「株式会社A運送」、フラグ「1」に対応付く「<住所>東京都太田区・・・ 」、フラグ「1」に対応付く「<TEL>03-2222-5511」を有する送信情報を構成する。なお、送信情報は、「<会社名>株式会社A運送 <住所 フラグ=1>東京都太田区・・・ <TEL フラグ=1>03-2222-5511」である、とする。次に、発注支援情報送信手段1311は、当該送信情報を会社装置2に送信する。
次に、会社装置2は、情報処理装置1から送信された送信情報を受信し、出力する。かかる出力例は、図14である。なお、図14において、1401には、株式会社Yの会社装置2で管理されていた会社名「A運送」ではなく、会社情報管理表の会社名「株式会社A運送」が出力されている。また、会社Yの担当者に対する注意喚起のために、「株式会社A運送」において変更されていた情報(住所とTEL)が出力されている(1402参照)。また、会社Yの担当者は、荷物配送の発注のために、図14の「積み日」は「積み地」「卸し日」「卸し地」「荷物情報」を入力し、「発注」ボタンを指示した、とする。なお、図12における発注情報管理表に対して、「積み日」は「発日時」、「積み地」は「発地」、「卸し日」は「着日時」、「卸し地」は「着地」、「荷物情報」は「発注内容」に該当する。
次に、会社Yの会社装置2は、発注情報を受け付け、当該発注情報を情報処理装置1に送信する。
次に、情報処理装置1の発注情報受信部122は、発注情報を受信する。次に、通知手段1312は、受信された発注情報を用いて、「株式会社A運送」に関する情報に関して、会社装置2に通知することが無い、と判断する。つまり、通知手段1312は、「発注OK」であると判断する。次に、発注情報蓄積部132は、受信された発注情報とフラグ「1」とを有するレコードを発注情報管理表(図12)に蓄積する。
次に、処理部13は、発注のための処理を行う。発注のための処理は、例えば、発注された旨の株式会社A運送への連絡である。
以上、本具体例によれば、2以上の会社が使用する会社情報格納部111の会社情報管理表を用いて、支援部131は、発注支援処理を行えた。
(具体例2)
株式会社Yの担当者は、会社装置2に表示された図15に示す発注画面に対して、発注先会社名(1501)、発注元会社名(1502)、「積み日」、「積み地」、「卸し日」、「卸し地」、「荷物」(各情報は、図15を参照)を入力した後、「発注ボタン」1503を指示した、とする。
次に、会社装置2は、図15に示す画面に入力された発注情報「<発注先会社名>有限会社C運送 <発注元会社名>株式会社Y <積み日>2022年1月30日 <積み地>横浜市北区・・・ <卸し日>2022年1月31日 <卸し地>大阪市西区・・・ <荷物>ケース ・・・」を受け付け、当該発注情報を情報処理装置1に送信する。
次に、情報処理装置1の発注情報受信部122は、当該発注情報を受信する。次に、通知手段1312は、以下のように通知処理を行う。
つまり、通知手段1312は、受信された発注情報から「<発注先会社名>有限会社C運送」を取得する。次に、通知手段1312は、「有限会社C運送」対応する会社の会社情報を会社情報管理表(図11)から取得する。なお、当該会社情報は、図11の「ID=3」のレコードである。
次に、通知手段1312は、取得した会社情報の各属性値が通知条件に合致するか否かを判断する。なお、ここで、通知条件は、例えば、「閾値以内(例えば、20221月1日以降)に、変更された属性値であること」「不利益情報であること」である、とする。
そして、通知手段1312は、有限会社C運送の変更情報「代表取締役:井上C男(2020/11/15),山本D子(2022/1/5)」を取得する。また、通知手段1312は、有限会社C運送の不利益情報「不渡り速報に掲載あり」を取得する。次に、通知手段1312は、当該変更情報と当該不利益情報とを有する通知情報を構成する。次に、通知手段1312は、当該通知情報を、発注情報を送信してきた会社装置2に送信する。
次に、会社装置2は、当該通知情報を受信し、出力する。かかる出力例は、図16である。図16において、項目「注意事項」の欄に、変更情報と不利益情報とが出力されている(1601)。また、株式会社Yの担当者は、荷物の配送を発注するために、一旦、発注情報を、情報処理装置1に送信したが、項目「注意事項」の内容を確認し、発注するか、発注を中止するかを決定できる。なお、ここで、担当者が、「発注ボタン」1602を指示すれば、発注処理が行われ、「発注中止ボタン」1603を指示すれば、発注が中止される。
なお、会社装置2の担当者は、「発注中止ボタン」1603を指示した、とする。そして、情報処理装置1において、発注情報は蓄積されない。
以上、本具体例において、発注情報の送信に応じて、変更情報や不利益情報等の、担当者に発注前に知らせるべき情報を通知できる。なお、本具体例において、支援指示の送信に応じて、変更情報や不利益情報等の、担当者に発注前に知らせるべき情報を通知しても良い。
(具体例3)
情報処理装置1の運営者は、スコア取得指示を図示しない端末に入力した、とする。当該端末は、スコア取得指示を受け付け、情報処理装置1に送信する。
次に、情報処理装置1の受信部12は、スコア取得指示を受信する。そして、分析部133は、会社情報管理表(図11)の各会社のスコアを取得する、と判断する。
次に、分析部133は、会社情報管理表の各会社情報が有する不利益情報を取得する。なお、ここで不利益情報が取得できない会社情報もある。次に、分析部133は、不利益情報の中に文字列「吸収合併」があれば、最大のスコアを「20」とする。また、分析部133は、不利益情報の中に文字列「不渡り」があれば、最大のスコアを「10」とする。さらに、分析部133は、不利益情報の中に文字列「倒産」があれば、最大のスコアを「0」とする、とする。
次に、分析部133は、各会社情報が有する会社識別子をキーとして、会社ごとに、単位期間(ここでは、1年)の発注情報の数と発注量の合計とを取得する。次に、分析部133は、各会社情報が有する保有台数を取得する。次に、分析部133は、会社ごとに、演算式「スコア=f(発注情報の数,発注量の合計、保有台数)」により、スコアを算出し、会社識別子に対応付けて、図示しないバッファに蓄積する。また、分析部133は、不利益情報が取得できた各会社に対して、演算式で取得したスコアと不利益情報に対応するスコアのうちの低い方のスコアを取得する。次に、分析部133は、各会社のスコアを、会社識別子に対応付けて、会社情報管理表(図11)に蓄積する。かかるスコアは、図11の属性値「スコア」である。
以上により、各会社のスコアを蓄積できた。なお、かかるスコアは、発注する会社の会社装置2で出力できるようにしても良いし、情報処理装置1の運営者が図示しない端末により見ることができるようにしても良い。また、支援指示または発注情報が受信されたことに応じて、通知手段1312は、当該支援指示または当該発注情報に含まれる発注先会社名に対応するスコアを通知しても良い。
(具体例4)
情報処理装置1の運営者は、受発注ネットワーク出力指示を図示しない端末に入力した、とする。当該端末は、受発注ネットワーク出力指示を受け付け、情報処理装置1に送信する。
次に、情報処理装置1の受信部12は、受発注ネットワーク出力指示を受信する。そして、分析部133は、受発注ネットワークを取得する、と判断する。
次に、分析部133は、発注情報管理表(図12)の1以上の各発注情報ごとに、「発注元会社識別子」「発注先会社識別子」を取得する。また、分析部133は、取得した「発注元会社識別子」「発注先会社識別子」の組ごとに、発注情報の数を取得する。そして、分析部133は、発注情報の数を用いて、発注元会社と発注先会社との関係の深さを示す関係スコアを取得する。なお、発注情報の数が多いほど、関係スコアは大きくなる。また、分析部133は、例えば、発注情報の数をパラメータとする増加関数により、関係スコアを算出する。そして、分析部133は、図17に示す発注関係管理表を作成し、図示しないバッファに一時蓄積する。次に、分析部133は、図示しないバッファの発注関係管理表を用いて、発注元会社識別子と対になる発注元会社名と発注先会社識別子と対になる発注先会社名をノードとして、関係スコアに対応する属性値(太さ、線種)の有向エッジを有する受発注ネットワークを構成する。次に、分析結果出力部141は、当該受発注ネットワークを情報処理装置1の運営者の端末に送信する。
次に、情報処理装置1の運営者の端末は、受発注ネットワークを受信し、出力する。かかる出力例は、図18である。そして、運営者は、図18の受発注ネットワークを見て、各社の関係の有無、関係の深さを認識できる。その結果、運営者は、発注を行う会社の担当者に、今まで取引きの無い会社を紹介したりできる。なお、受発注ネットワークは、図であることは好適であるが、図17の情報も受発注ネットワークである、と考えても良い。また、受発注ネットワークは、「発注元会社識別子」「発注先会社識別子」の組の情報の集合でも良い。
(具体例5)
情報処理装置1の運営者は、多重下請構造出力指示を図示しない端末に入力した、とする。当該端末は、多重下請構造出力指示を受け付け、情報処理装置1に送信する。
次に、情報処理装置1の受信部12は、多重下請構造出力指示を受信する。そして、分析部133は、多重下請構造情報を取得する、と判断する。
次に、分析部133は、発注情報管理表(図12)から、「ID=1」の発注情報を取得する。次に、分析部133は、「ID=1」の発注情報に対して、下請条件を満たす他の発注情報を取得する。ここで、下請条件は、親の発注情報(ここでは、「ID=1」の発注情報)が有する発注先会社識別子が「発注元会社識別子」に一致し、かつ親の発注情報の荷物と一致する「荷物」を有し、親の発注情報の発日時と一致する「発日時」を有し、親の発注情報の発地と一致する「発地」を有し、親の発注情報の着日時と一致する「着日時」を有し、親の発注情報の着地と一致する「着地」を有する発注情報である。そして、分析部133は、「ID=512,513,514」の発注情報を取得する。そして、分析部133は、親の発注情報から「ID」「発注元会社識別子」「発注元会社名」「発注先会社識別子」「発注先会社名」を取得し、当該情報と「親ID=NULL」「ネストレベル=1」とを有するレコードを構成し、図示しないバッファに一時蓄積する。なお、ネストレベルとは、多重下請構造における階層ツリーの深さである。
また、分析部133は、「ID=512,513,514」の各発注情報から「ID」「発注元会社識別子」「発注元会社名」「発注先会社識別子」「発注先会社名」を取得し、当該情報と「親ID=1」「ネストレベル=2」とを有する3つのレコードを構成し、図示しないバッファに一時蓄積する。
また、分析部133は、「ID=512,513,514」の各発注情報に対して、下請条件を満たす発注情報を発注情報管理表(図12)から検索する。そして、分析部133は、「ID=513」の発注情報を親とする「ID=882」の発注情報を検索する。次に、分析部133は、「ID=882」の発注情報から「ID」「発注元会社識別子」「発注元会社名」「発注先会社識別子」「発注先会社名」を取得し、当該情報と「親ID=513」「ネストレベル=3」とを有するレコードを構成し、図示しないバッファに一時蓄積する。
また、分析部133は、「ID=882」の発注情報に対して、下請条件を満たす発注情報を発注情報管理表(図12)から検索する。そして、分析部133は、「ID=882」の発注情報を親とする「ID=1081」の発注情報を検索する。次に、分析部133は、「ID=1081」の発注情報から「ID」「発注元会社識別子」「発注元会社名」「発注先会社識別子」「発注先会社名」を取得し、当該情報と「親ID=882」「ネストレベル=4」とを有するレコードを構成し、図示しないバッファに一時蓄積する。
また、分析部133は、「ID=1081」の発注情報に対して、下請条件を満たす発注情報を発注情報管理表(図12)から検索する。そして、分析部133は、「ID=1081」の発注情報を親とする「ID=2015」の発注情報を検索する。次に、分析部133は、「ID=2015」の発注情報から「ID」「発注元会社識別子」「発注元会社名」「発注先会社識別子」「発注先会社名」を取得し、当該情報と「親ID=1081」「ネストレベル=4」とを有するレコードを構成し、図示しないバッファに一時蓄積する。
次に、分析部133は、「ID=2015」の発注情報に対して、下請条件を満たす発注情報を発注情報管理表(図12)から検索するが、検索できなかった、とする。
以上の処理により、分析部133は、図示しないバッファに下請構造管理表(図19)を構成できた。
次に、分析部133は、下請構造管理表の各レコードの発注元会社名と発注先会社名とをノードとし、親IDの発注先会社名のノードから子IDの発注元会社名のノードを結ぶ有向エッジ、子IDの発注元会社名のノードから子IDの発注先会社名のノードを結ぶ有向エッジを配置し、多重下請構造情を構成する。
次に、分析結果出力部141は、当該多重下請構造情を情報処理装置1の運営者の端末に送信する。
次に、情報処理装置1の運営者の端末は、多重下請構造情報を受信し、出力する。かかる出力例は、図20である。そして、運営者は、図20の多重下請構造情報を見て、多重下請構造の改善を図る提案を、関係各社に行うこと等ができる。なお、多重下請構造情報は、図20のような図でなくても良い。多重下請構造情報は、図19のような情報でも良い。
なお、分析部133は、「ID=2」以降の発注情報に対して、「ID=1」の発注情報に対して行った処理(多重下請構造取得処理)を行っても良い。
以上、本実施の形態によれば、荷物の運搬の発注処理の非効率を解消できる仕組みを提供できる。
また、本実施の形態によれば、荷物の発注情報の作成支援が行える。
また、本実施の形態によれば、受信された発注情報に対応する発注先の会社の情報を発注元に提供できる。
また、本実施の形態によれば、受信された発注情報に対応する発注先の不利益情報を発注元に提供できる。
また、本実施の形態によれば、受信された発注情報に対応する発注先の会社の情報に基づいた発注までの新しいプロトコルを実現できる。
また、本実施の形態によれば、発注先を提案できる。
また、本実施の形態によれば、複数の発注元会社からの荷物の運搬の発注情報を分析することにより、今まで得られなかった分析結果を得ることができる。
また、本実施の形態によれば、発注元会社からの荷物の運搬の発注情報を分析することにより、発注先会社のスコアを得ることができる。
また、本実施の形態によれば、発注情報を分析することにより、受発注における会社間の関係を表した受発注ネットワークを得ることができる。
さらに、本実施の形態によれば、一の荷物に対する2以上の発注情報を分析することにより、多重下請構造を明確にできる。
なお、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをCD-ROMなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における情報処理装置1を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、荷物の運搬に関する業務を発注する先である発注先会社となり得る会社または荷物の運搬に関する業務を発注する元である発注元会社となり得る会社を識別する会社識別子と、最新の会社名を含む1以上の会社属性値とを含む2以上の会社情報が格納される会社情報格納部にアクセス可能なコンピュータを、発注先会社名を有する指示であり、荷物の運搬に関する業務の発注の支援を行うことの指示である支援指示を会社装置から受信する支援指示受信部と、前記支援指示が有する前記発注先会社名に対応し、当該発注先会社名とは異なる会社名を含む1以上の会社属性値を、前記会社情報格納部から取得し、当該1以上の会社属性値を用いて、発注の支援である支援処理を行う支援部として機能させるためのプログラムである。
また、図21は、本明細書で述べたプログラムを実行して、上述した種々の実施の形態の情報処理装置1等を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図21は、このコンピュータシステム300の概観図であり、図22は、システム300のブロック図である。
図21において、コンピュータシステム300は、CD-ROMドライブを含むコンピュータ301と、キーボード302と、マウス303と、モニタ304とを含む。
図22において、コンピュータ301は、CD-ROMドライブ3012に加えて、MPU3013と、CD-ROMドライブ3012等に接続されたバス3014と、ブートアッププログラム等のプログラムを記憶するためのROM3015と、MPU3013に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのRAM3016と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク3017とを含む。ここでは、図示しないが、コンピュータ301は、さらに、LANへの接続を提供するネットワークカードを含んでも良い。
コンピュータシステム300に、上述した実施の形態の情報処理装置1等の機能を実行させるプログラムは、CD-ROM3101に記憶されて、CD-ROMドライブ3012に挿入され、さらにハードディスク3017に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ301に送信され、ハードディスク3017に記憶されても良い。プログラムは実行の際にRAM3016にロードされる。プログラムは、CD-ROM3101またはネットワークから直接、ロードされても良い。
プログラムは、コンピュータ301に、上述した実施の形態の情報処理装置1等の機能を実行させるオペレーティングシステム(OS)、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム300がどのように動作するかは周知であり、詳細な説明は省略する。
なお、上記プログラムにおいて、情報を送信するステップや、情報を受信するステップなどでは、ハードウェアによって行われる処理、例えば、送信ステップにおけるモデムやインターフェースカードなどで行われる処理(ハードウェアでしか行われない処理)は含まれない。
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記各実施の形態において、各処理は、単一の装置によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。