(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2023-10-13
(45)【発行日】2023-10-23
(54)【発明の名称】情報処理装置および情報処理方法
(51)【国際特許分類】
G06Q 10/0637 20230101AFI20231016BHJP
【FI】
G06Q10/0637
(21)【出願番号】P 2023086701
(22)【出願日】2023-05-26
【審査請求日】2023-05-31
【早期審査対象出願】
(73)【特許権者】
【識別番号】596127554
【氏名又は名称】株式会社日立社会情報サービス
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】中屋 文江
(72)【発明者】
【氏名】四條 淳
【審査官】山田 倍司
(56)【参考文献】
【文献】特開2022-173656(JP,A)
【文献】特開2007-041915(JP,A)
【文献】特開2022-032115(JP,A)
【文献】特開2012-181739(JP,A)
【文献】特表2003-526158(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
終了した第1プロジェクトの監視情報で訓練した予測モデルを生成する生成部と、
仕掛かりの第2プロジェクトの説明変数を前記予測モデルに入力し、前記第2プロジェクトの見積原価推定超過の予測値、および、前記予測値の根拠となる説明変数を出力する予測部と、
選択された前記第2プロジェクト、および選択された複数種類の第1プロジェクトをまとめたまとめプロジェクトを作成するまとめ部と、を備え
、
前記まとめ部は、前記選択された前記第2プロジェクトの説明変数、および前記選択された複数種類の第1プロジェクトの説明変数を用いて、前記まとめプロジェクトの説明変数を計算し、
前記予測部は、前記計算された、前記まとめプロジェクトの説明変数を前記予測モデルに入力し、前記まとめプロジェクトの見積原価推定超過の予測値、および、前記予測値の根拠となる説明変数を出力する情報処理装置。
【請求項2】
前記まとめプロジェクトとして、第1まとめプロジェクトおよび第2まとめプロジェクトが存在し、
前記まとめ部は、前記第1まとめプロジェクトおよび前記第2まとめプロジェクトをまとめた第3まとめプロジェクトを作成する請求項
1に記載の情報処理装置。
【請求項3】
情報処理装置が、
終了した第1プロジェクトの監視情報で訓練した予測モデルを生成するステップと、
仕掛かりの第2プロジェクトの説明変数を前記予測モデルに入力し、前記第2プロジェクトの見積原価推定超過の予測値、および、前記予測値の根拠となる説明変数を出力するステップと、
選択された前記第2プロジェクト、および選択された複数種類の第1プロジェクトをまとめたまとめプロジェクトを作成するステップと、を実行
し、
前記選択された前記第2プロジェクトの説明変数、および前記選択された複数種類の第1プロジェクトの説明変数を用いて、前記まとめプロジェクトの説明変数を計算し、
前記計算された、前記まとめプロジェクトの説明変数を前記予測モデルに入力し、前記まとめプロジェクトの見積原価推定超過の予測値、および、前記予測値の根拠となる説明変数を出力する情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置および情報処理方法に関する。
【背景技術】
【0002】
近年、デジタルトランスフォーメーション(DX:Digital Transformation)推進の技術開発が盛んであり、その一環として、ソフトウェア開発等のプロジェクトの状態監視が重要視されている。状態監視は、重点監視と広域監視の2つに分けることができる。重点監視は、管理部署によるプロジェクトの監視である。広域監視は、全プロジェクトを対象にし、所定のツールを利用した監視である。状態監視では、まず、ツールに入力された原価などのデータに基づく広域監視で失敗の可能性や失敗時の影響が大きいと判断されたプロジェクトを重点監視の対象とする。次に、管理部署による支援により、重点監視の対象となるプロジェクトの悪化防止や改善を図る。
【0003】
従来の広域監視は、原価が見積を超えるなどの問題が顕在化してから該当のプロジェクトを抽出するものであった。プロジェクトを成功に導くという目的に照らし合わせれば、問題が顕在化していない早期の段階でプロジェクトの悪化予兆を検知することが好ましい。しかし、従来の広域監視では、問題が顕在化していない早期の段階でプロジェクトの悪化予兆を検知することが困難であるという問題があった。
【0004】
また、従来の広域監視では、懸念されるプロジェクトを本当に重点監視の対象とするか否かの判断のための調査が行われる。調査は、例えば、プロジェクトの規模や見積原価超過額などの調査である。しかし、このような調査は多大な人的コストがかかっていた。このため、受注金額が大きいプロジェクトなど、状況が悪化した場合の影響が大きいプロジェクトが優先的に対応され、小規模なプロジェクトを含むすべてのプロジェクトを対象とした監視は行われないのが現状である。つまり、従来の広域監視では、重点監視の対象とすべきプロジェクトの判断に人的コストが大きいという問題があった。
【0005】
また、従来の広域監視では、懸念されるプロジェクトの抽出数が多すぎる場合があるため、重点監視の対象とするか否かの判断のための調査に要する人的コストがさらに大きくなってしまう問題があった。また、監視対象のプロジェクトが小規模である場合、見積原価超過などの値が調査できないほどに小さいため、当該プロジェクトの調査に対して余計な人的コストを要するという問題があった。
【0006】
なお、特許文献1には、時系列データを用いて将来のデータを予測する際、時系列データが少ない場合にも、精度よく将来データを予測する予測装置、予測方法及びプログラムについて開示されている。
【先行技術文献】
【特許文献】
【0007】
【発明の概要】
【発明が解決しようとする課題】
【0008】
本発明は、このような事情に鑑みて、広域監視にて、プロジェクトの悪化予兆を早期に検知するとともに、重点監視の対象にするか否かの判断の人的コストを低減することを課題とする。
【課題を解決するための手段】
【0009】
前記課題を解決する本発明は、
終了した第1プロジェクトの監視情報で訓練した予測モデルを生成する生成部と、
仕掛かりの第2プロジェクトの説明変数を前記予測モデルに入力し、前記第2プロジェクトの見積原価推定超過の予測値、および、前記予測値の根拠となる説明変数を出力する予測部と、
選択された前記第2プロジェクト、および選択された複数種類の第1プロジェクトをまとめたまとめプロジェクトを作成するまとめ部と、を備え、
前記まとめ部は、前記選択された前記第2プロジェクトの説明変数、および前記選択された複数種類の第1プロジェクトの説明変数を用いて、前記まとめプロジェクトの説明変数を計算し、
前記予測部は、前記計算された、前記まとめプロジェクトの説明変数を前記予測モデルに入力し、前記まとめプロジェクトの見積原価推定超過の予測値、および、前記予測値の根拠となる説明変数を出力する情報処理装置である。
【0010】
また、本発明は、
情報処理装置が、
終了した第1プロジェクトの監視情報で訓練した予測モデルを生成するステップと、
仕掛かりの第2プロジェクトの説明変数を前記予測モデルに入力し、前記第2プロジェクトの見積原価推定超過の予測値、および、前記予測値の根拠となる説明変数を出力するステップと、
選択された前記第2プロジェクト、および選択された複数種類の第1プロジェクトをまとめたまとめプロジェクトを作成するステップと、を実行し、
前記選択された前記第2プロジェクトの説明変数、および前記選択された複数種類の第1プロジェクトの説明変数を用いて、前記まとめプロジェクトの説明変数を計算し、
前記計算された、前記まとめプロジェクトの説明変数を前記予測モデルに入力し、前記まとめプロジェクトの見積原価推定超過の予測値、および、前記予測値の根拠となる説明変数を出力する情報処理方法である。
【発明の効果】
【0011】
本発明によれば、広域監視にて、プロジェクトの悪化予兆を早期に検知するとともに、重点監視の対象にするか否かの判断の人的コストを低減することができる。
【図面の簡単な説明】
【0012】
【
図1】本実施形態における情報処理装置の機能構成図の例である。
【
図3】本実施形態の処理を示すフローチャートの例である。
【
図4】まとめ処理を示すフローチャートの例である。
【発明を実施するための形態】
【0013】
≪第1実施形態≫
[構成]
図1に示す情報処理装置100は、広域監視により仕掛かりのプロジェクトの悪化予兆を検知するコンピュータである。情報処理装置100は、入力部、出力部、制御部、および、記憶部といったハードウェアを備える。例えば、制御部がCPU(Central Processing Unit)から構成される場合、その制御部を含むコンピュータによる情報処理は、CPUによるプログラム実行処理で実現される。また、そのコンピュータに含まれる記憶部は、CPUの指令により、そのコンピュータの機能を実現するためのさまざまなプログラムを記憶する。これによりソフトウェアとハードウェアの協働が実現される。前記プログラムは、記録媒体に記録したり、ネットワークを経由したりすることで提供可能となる。出力部は、画面表示をする表示部の機能を含めてもよい。
【0014】
プロジェクトとは、所定の目的を達成するための業務をいう。プロジェクトは、終了済の過去のプロジェクトと、仕掛かりのプロジェクトに分類できる。本実施形態では、過去のプロジェクトを「第1プロジェクト」と呼び、仕掛かりのプロジェクトを「第2プロジェクト」と呼ぶ。また、過去のプロジェクトと仕掛かりのプロジェクトを区別しない場合は、単に、「プロジェクト」と呼ぶ。
【0015】
図1に示すように、情報処理装置100は、生成部1と、予測部2と、まとめ部5を備えている。また、情報処理装置100は、第1プロジェクトDB3と、第2プロジェクトDB4を記憶している。まとめ部5については後記する。
【0016】
生成部1は、機械学習で第2プロジェクトの実推原価を予測するための予測モデルを生成する。実推原価は、第2プロジェクト終了時までに発生する原価の推定値である。なお、原価には、製造原価や売上原価など複数種類存在するが、本実施形態では、原価とは、特定の目的を達成するために消費される経済的資源を貨幣で測定したものとし、製造原価や売上原価などを含む語として説明する。
予測部2は、生成部1が生成した予測モデルを用いて、対象の第2プロジェクトの実推原価を予測する。
第1プロジェクトDB3は、第1プロジェクトの監視情報を第1プロジェクトごとに記憶するデータベースである。
第2プロジェクトDB4は、第2プロジェクトの監視情報を第2プロジェクトごとに記憶するデータベースである。
【0017】
<プロジェクトの監視情報>
プロジェクトの監視情報は、プロジェクトの状況を監視するための情報である。第1プロジェクトの監視情報は、例えば、作番情報と、説明変数と、目的変数とから構成できる。
【0018】
作番情報は、第1プロジェクトを識別する情報である。例えば、作番情報は、作番と、進捗率(%)と、作番名を含むが、これらに限定されない。
作番は、第1プロジェクトの識別子であり、例えば、文字数字列で表現できる。
進捗率は、第1プロジェクトの進捗を定量的に示すパラメータである。
作番名は、第1プロジェクトの名称であり、例えば、観念可能な言葉で表現できる。
【0019】
説明変数は、第1プロジェクトの状態を表現する変数である。説明変数は複数種類存在する。説明変数は、例えば、作業開始時期、作業終了時期、実績原価、見通し原価、見積原価、担当者、作業時間、実績工数を含むがこれらに限定されない。例えば、Borutaを用いて説明変数候補を抽出し、その中から最適な説明変数を選択することができるが、説明変数の選択方法はこれに限定されない。
作業開始時期は、第1プロジェクトの開始時期(年月日)である。
作業終了時期は、第1プロジェクトの終了時期(年月日)である。
実績原価は、作業開始時期から所定時期までの間に発生した原価である。
見通し原価は、所定時期から作業終了時期までに発生することが見込まれる原価である。
見積原価は、作業開始時期から作業終了時期までに発生することが見込まれる原価である。
担当者は、第1プロジェクトを担当した者(複数可)である。
作業時間は、作業開始時期から所定時期までの間に、各担当者が第1プロジェクトの作業に費やした時間である。
実績工数は、第1プロジェクトを構成する全工数のうち、作業開始時期から所定時期までの間に完了した工数である。
なお、所定時期は、作業開始時期と作業終了時期までの間の任意の時期である。
【0020】
目的変数は、説明変数に依存する変数である。目的変数は、例えば、第1プロジェクト終了時での実績原価となる、最終実績原価とすることができるが、これに限定されない。
【0021】
(進捗率のこと)
進捗率は、例えば、時期的基準で算出できる。例えば、プロジェクトの作業開始時期から作業終了時期までの期間が30日間であり、対象時期が作業開始時期から15日目であった場合、進捗率は50%となる。第1プロジェクトは終了した過去のプロジェクトであるため、現時点での進捗率は100%である。ここで、第1プロジェクトの説明変数は、進捗率に応じて変化する値とすることができる。第1プロジェクトの監視情報は、進捗率ごとの説明変数の集合として構成できる。
【0022】
例えば、説明変数としての実績原価は、進捗率0%~100%のあらゆる値での実績原価の集合となる。進捗率X%の実績原価は、作業開始時期から進捗率X%相当の時期までの間に発生した原価となる。また、説明変数としての見通し原価は、進捗率0%~100%のあらゆる値での見通し原価の集合となる。進捗率X%の見通し原価は、進捗率X%相当の時期から作業終了時期までの間に発生することが見込まれる原価となる。なお、作業開始時期や作業終了時期などのように、進捗率に応じて変化しない説明変数も存在するが、そのような説明変数は、進捗率に応じて同じ値をとる定数として扱うことが好ましい。
【0023】
一方、第2プロジェクトの監視情報は、例えば、作番情報と、説明変数とから構成できる。
【0024】
作番情報は、第2プロジェクトを識別する情報である。例えば、作番情報は、作番と、進捗率(%)と、作番名を含むが、これらに限定されない。
作番は、第2プロジェクトの識別子であり、例えば、文字数字列で表現できる。
進捗率は、第2プロジェクトの進捗を定量的に示すパラメータである。
作番名は、第2プロジェクトの名称であり、例えば、観念可能な言葉で表現できる。
【0025】
説明変数は、第2プロジェクトの状態を表現する変数である。説明変数は複数種類存在する。説明変数は、例えば、作業開始時期、作業終了時期、実績原価、見通し原価、見積原価、担当者、作業時間、実績工数を含むがこれらに限定されない。例えば、Borutaを用いて説明変数候補を抽出し、その中から最適な説明変数を選択することができるが、説明変数の選択方法はこれに限定されない。
作業開始時期は、第2プロジェクトの開始時期(年月日)である。
作業終了時期は、第2プロジェクトの終了時期(年月日)である。
実績原価は、作業開始時期から所定時期までの間に発生した原価である。
見通し原価は、所定時期から作業終了時期までに発生することが見込まれる原価である。
見積原価は、作業開始時期から作業終了時期までに発生することが見込まれる原価である。
担当者は、第2プロジェクトを担当している者(複数可)である。
作業時間は、作業開始時期から所定時期までの間に、各担当者が第2プロジェクトの作業に費やした時間である。
実績工数は、第2プロジェクトを構成する全工数のうち、作業開始時期から所定時期までの間に完了した工数である。
なお、所定時期は、作業開始時期と作業終了時期までの間の現在である。
また、すでに説明した、第2プロジェクトの実推原価は、第2プロジェクトの実績原価と見通し原価との和である。
【0026】
第2プロジェクトの進捗率は、作業開始時期から作業終了時期までの期間と、作業開始時期から現在までの期間の比として算出できる。現在に相当する進捗率X%の実績原価は、作業開始時期から現在までの間に発生した原価となる。また、現在に相当する進捗率X%の見通し原価は、現在から作業終了時期までの間に発生することが見込まれる原価となる。なお、作業開始時期や作業終了時期などのように、進捗率に応じて変化しない説明変数も存在するが、そのような説明変数は、進捗率に応じて同じ値をとる定数として扱うことが好ましい。
【0027】
<予測モデル>
(訓練)
生成部1は、例えば、ランダムフォレストに用いる複数の決定木を組み合わせて予測モデルを生成できる。ランダムフォレストは、機械学習アルゴリズムであり、複数の決定木を利用し、多数決をとって予測するアンサンブル学習アルゴリズムである。決定木は、例えば、説明変数を用いた判定条件を組み合わせたツリー状のロジックとして構成できる。判定条件は、適宜設計でき、例えば、担当者の1日の作業時間の平均が5時間以上か否か、などとすることができる。
【0028】
生成部1は、第1プロジェクトの監視情報を訓練データとして用いて、予測モデルを訓練できる。例えば、第1プロジェクトごとに、第1プロジェクトの監視情報のうち進捗率50%相当の時期での説明変数を予測モデルの入力とすることができる。また、第1プロジェクトの監視情報の目的変数に基づく値を予測モデルの出力とすることができる。例えば、第1プロジェクトの最終実績原価から見積原価を引いた見積原価超過の値を予測モデルの出力とすることができる。生成部1は、所定数の第1プロジェクトの監視情報を用いて予測モデルを訓練する。
【0029】
ここで、生成部1は、予測モデルを複数用意し、予測モデルの出力を複数段階の出力とすることができる。例えば、生成部1は、第1予測モデルと第2予測モデルを用意する。第1予測モデルの入力は、すべての第1プロジェクトの監視情報を対象にし、当該監視情報のうち進捗率50%相当の時期での説明変数とすることができる。また、第1予測モデルの出力は、第1プロジェクトの最終実績原価から見積原価を引いた見積原価超過があった(0M(0円)より大きい)か否かとすることができる。次に、第2予測モデルの入力は、第1予測モデルの出力で見積原価超過があった第1プロジェクトの監視情報を対象にし、当該監視情報のうち進捗率50%相当の時期での説明変数とすることができる。また、第2予測モデルの出力は、見積原価超過が1M(100万円)以上であるか否かとすることができる。結果的に、予測モデルの出力を、見積原価超過が0M以下、0Mより大きいかつ1M未満、1M以上、の3値に分類できる。
【0030】
(予測)
予測部2は、訓練済みの予測モデルを用いて、予測対象の第2プロジェクトの実推原価を予測する。例えば、予測部2は、第2プロジェクトの監視情報のうち、現在、つまり所定の進捗率(50%以上が好ましいが、50%未満でもよい)相当の時期での説明変数を予測モデルに入力する。すると、予測部2は、実推原価に基づく値を予測モデルの出力として取得できる。例えば、予測部2は、実推原価から見積原価を引いた見積原価推定超過の値を取得できる。
【0031】
予測モデルが、上記した第1予測モデル、第2予測モデルである場合、予測部2は、予測対象の第2プロジェクトの監視情報のうち、現在での説明変数を第1予測モデルに入力する。すると、予測部2は、第1予測モデルの出力として、見積原価推定超過があった(0M(0円)より大きい)か否かを示す値を取得できる。見積原価推定超過があった場合、予測部2は、当該第2プロジェクトの監視情報のうち、現在での説明変数を第2予測モデルに入力する。すると、予測部2は、第2予測モデルの出力として、見積原価推定超過が1M(100万円)以上であるか否かを示す値を取得できる。結果的に、見積原価推定超過を0M以下、0Mより大きいかつ1M未満、1M以上、の3値に分類できる。
なお、1Mや0Mは例示であり、1Mより大きい値や0Mより大きい値でもよいし、1Mより小さい値や0Mより小さい値でもよい。
【0032】
予測部2は、予測モデルの出力を含む情報を出力できる。例えば、情報処理装置100の表示部は、
図2に示すような予測部2の出力情報を画面表示できる。
図2に示すように、予測部2の出力情報は、「予測結果」と、「作番情報」と、「予測結果の説明変数と特徴」を列とし、第2プロジェクトを行とする表形式とすることができる。
【0033】
「予測結果」は、予測モデルの出力内容を示す。「予測結果」は、「項番」と、「予測値」と、「確信度」から構成される。
「項番」は、第2プロジェクトごとに付される行番号である。
「予測値」は、予測モデルがすでに説明した第1予測モデルと第2予測モデルの組み合わせであるときの、見積原価推定超過の3値分類に従う結果である。「1:100万円以上超過」は、1M以上に対応する。「2:100万円未満超過」は、0Mより大きいかつ1M未満に対応する。「3:問題なし」は、0M以下に対応する。
「確信度」は、予測の信頼度であり0%~100%で示される。例えば、確信度は、バギングを用いて求めることができるが、これに限定されない。
【0034】
「作番情報」は、第2プロジェクトの監視情報の作番情報と同じである。
「予測結果の説明変数と特徴」は、「予測結果」に寄与する説明変数を示す。「予測結果の説明変数と特徴」は、「説明変数一覧」と、「特徴ランキング」から構成される。
「説明変数一覧」は、第2プロジェクトの監視情報の説明変数と同じである。
「特徴ランキング」は、「予測結果」に寄与する説明変数の順位を示す。順位が高いほど、その説明変数の予測値の出力に対する寄与率が大きい。例えば、各変数の寄与率は、SHAP(Shapley Additive exPlanations)アルゴリズムを用いて求めることができるが、これに限定されない。
【0035】
第1実施形態によれば、見積原価推定超過が1M以上となる第2プロジェクトを抽出できる。よって、広域監視にて、プロジェクトの悪化予兆を早期に検知することができる。
【0036】
(重点監視の対象にするか否かの判断)
図2の出力情報を知得した管理部署は、見積原価推定超過が1M以上となる第2プロジェクトを重点監視の対象とするか否かを判断する。従来では、プロジェクトの悪化予兆をAIで検知したとしても、AIの予測結果の根拠はブラックボックス化されていた。このため、管理部署は、AIの予測結果に対して、プロジェクトの悪化予兆の要因を追跡することが容易でなく、重点監視の対象とするか否かの判断に多大な人的コストを要していた。
【0037】
図2の「特徴ランキング」は、見積原価推定超過が1M以上になった根拠を提示しているといえる。管理部署は、「特徴ランキング」を参照し、見積原価推定超過が1M以上という予測に大きく寄与する説明変数を容易に特定できる。その結果、該当の第2プロジェクトを重点監視の対象にするか否かの判断が容易になり、重点監視の対象にするか否かの判断の人的コストを低減することができる。
【0038】
[処理]
情報処理装置100が実行する処理は、
図3に示すとおりである。つまり、まず、生成部1が予測モデルを生成する(ステップS1)。次に、生成部1が、所定の進捗率における第1プロジェクトの監視情報を用いて、予測モデルを訓練する(ステップS2)。次に、予測部2が、予測モデルを用いて、対象の第2プロジェクトの見積原価推定超過の予測値と、予測値に寄与する説明変数を予測根拠として出力する(ステップS3)。管理部署は、予測根拠から、悪化予兆を示す第2プロジェクトを重点監視の対象とするか否かを判断する。
【0039】
≪第2実施形態≫
第2実施形態の説明の際、第1実施形態との相違する点について説明し、重複する点は説明を省略する。第1実施形態では、訓練データとなる第1プロジェクトの監視情報の説明変数は進捗率50%相当の時期での説明変数であった。第2実施形態では、訓練データに用いる第1プロジェクトの説明変数の時期を定期化する。
【0040】
例えば、第1プロジェクトの期間、つまり、作業開始時期から作業終了時期までの期間がおよそ数カ月に及ぶ場合、訓練データに用いる説明変数の時期、つまり、訓練日(学習日)を毎月25日に設定する。
よって、作番Aの第1プロジェクトの作業開始時期が4/15であり、作業終了時期が6/30である場合、作番Aの第1プロジェクトの訓練日は、4/25,5/25,6/25となる。つまり、作番Aの第1プロジェクトの監視情報のうち4/25での説明変数(4/25相当の進捗率での説明変数)と、5/25での説明変数(5/25相当の進捗率での説明変数)と、6/25での説明変数(6/25相当の進捗率での説明変数)の計3回分を予測モデルの入力とする。
また、作番Bの第1プロジェクトの作業開始時期が5/1であり、作業終了時期が9/15である場合、作番Bの第1プロジェクトの訓練日は、5/25,6/25,7/25,8/25となる。つまり、作番Bの第1プロジェクトの監視情報のうち5/25での説明変数(5/25相当の進捗率での説明変数)と、6/25での説明変数(6/25相当の進捗率での説明変数)と、7/25での説明変数(7/25相当の進捗率での説明変数)と、8/25での説明変数(8/25相当の進捗率での説明変数)の計4回分を予測モデルの入力とする。
また、作番Cの第1プロジェクトの作業開始時期が6/1であり、作業終了時期が7/10である場合、作番Cの第1プロジェクトの訓練日は、6/25となる。つまり、作番Cの第1プロジェクトの監視情報のうち6/25での説明変数(6/25相当の進捗率での説明変数)の計1回分を予測モデルの入力とする。
【0041】
結果的に、第1プロジェクトの大部分に対して、複数種類の進捗率での説明変数が予測モデルに入力される。このようにして訓練された予測モデルを用いて、予測部2が第2プロジェクトの実推原価を予測する。この場合、第2プロジェクトの進捗率が低進捗率(例えば、30%程度)であり、低進捗率相当の時期での説明変数を予測モデルに入力したとしても、予測部2が出力した予測値の確信度(
図2参照)が十分に高いことが確認された。
【0042】
第2実施形態によれば、訓練日を定期化し、同じ第1プロジェクトについて複数種類の進捗率での説明変数を予測モデルに入力することができる。これにより、第2プロジェクトの実推原価の予測を早期化できる。
また、訓練日を定期化することで、すべての第1プロジェクトを対象にした予測モデルへの入力を体系化でき、訓練に要する処理を簡易にできる。
【0043】
≪まとめ作業≫
先述したように、プロジェクトの監視情報を構成する作番情報に含まれる作番は、プロジェクトの識別子であり、プロジェクトごとに割り当てられる。プロジェクトは、複数種類の作業に分割でき、複数種類の作業の集合体として扱うことができる。作番は、作業ごとに割り当てることができ、作番が割り当てられて各作業を識別できる。プロジェクトに割り当てられる作番は、当該プロジェクトを分割する複数種類の作業に割り当てられる作番と関連付けることができる。
【0044】
情報処理装置100は、悪化予兆の処理に関して、プロジェクトと作業とを同一視できる。作業は小規模なプロジェクトと呼んでもよい。本実施形態では、過去の作業を「第1作業」と呼び、仕掛かりの作業を「第2作業」と呼ぶ。また、過去の作業と仕掛かりの作業を区別しない場合は、単に、「作業」と呼ぶ。情報処理装置100は、第1プロジェクトDB3および第2プロジェクトDB4と同様、作業の監視情報を作業ごとに記憶するデータベースを記憶することができる(しかし、
図1では図示略)。
【0045】
情報処理装置100は、プロジェクトと同様、作業に対しても監視情報を設定できる。作業の監視情報は、作業の状況を監視するための情報である。第1作業の監視情報は、例えば、作番情報と、説明変数と、目的変数とから構成できる。第2作業の監視情報は、例えば、作番情報と、説明変数とから構成できる。
【0046】
図1に示すまとめ部5は、複数種類の作業を一つにまとめ、まとめ作業を作成する。「まとめ作業」は、複数種類の作業の集合体である。まとめ作業としてまとめられる複数種類の作業は、例えば、情報処理装置100のオペレータが適宜選択でできるが、これに限定されない。例えば、まとめ作業としてまとめられる複数種類の作業は、同じプロジェクトを構成する作業であってもよいし、異なるプロジェクトを構成する作業であってもよい。
【0047】
情報処理装置100は、悪化予兆の処理に関して、まとめ作業を、プロジェクトや作業と同一視できる。本実施形態では、複数種類の過去の作業を1つにまとめたまとめ作業を「第1まとめ作業」と呼び、仕掛かりの作業を少なくとも1つ含む複数種類の作業を1つにまとめたまとめ作業を「第2まとめ作業」と呼ぶ。また、複数種類の過去の作業を1つにまとめたまとめ作業と、仕掛かりの作業を少なくとも1つ含む複数種類の作業を1つにまとめたまとめ作業を区別しない場合は、単に、「まとめ作業」と呼ぶ。情報処理装置100は、作業の監視情報を作業ごとに記憶するデータベース(
図1では図示略)に、まとめ作業の監視情報を記憶することができる。
【0048】
プロジェクトの監視情報や作業の監視情報と同様にして、まとめ部5は、まとめ作業に対しても監視情報を設定できる。まとめ作業の監視情報は、まとめ作業の状況を監視するための情報であり、第1まとめ作業の監視情報は、例えば、作番情報と、説明変数と、目的変数とから構成できる。第2まとめ作業の監視情報は、例えば、作番情報と、説明変数とから構成できる。
【0049】
まとめ作業の説明変数の値は、まとめ作業としてまとめられる複数種類の作業の説明変数の値を用いて計算できる。
例えば、説明変数が原価、損益、見積などの金額である場合、まとめ作業の説明変数の値は、まとめ作業としてまとめられる複数種類の作業の説明変数の値の合算値として計算できる。合算値に替えて平均値、中央値、最大値、最小値としてもよい。
また、例えば、説明変数が作業時間などの時間である場合、まとめ作業の説明変数の値は、まとめ作業としてまとめられる複数種類の作業の説明変数の値の合算値として計算できる。合算値に替えて平均値、中央値、最大値、最小値としてもよい。
また、例えば、説明変数が実績工数などの数値である場合、まとめ作業の説明変数の値は、まとめ作業としてまとめられる複数種類の作業の説明変数の値の合算値として計算できる。
また、例えば、説明変数が作業開始時期、作業終了時期などの時期である場合、まとめ作業の説明変数の値は、まとめ作業としてまとめられる複数種類の作業の説明変数の値の最小値や最大値として計算できる。まとめ作業としてまとめられる複数種類の作業の作業開始時期のうち最早開始時期を、まとめ作業の作業開始時期とすることができる。まとめ作業としてまとめられる複数種類の作業の作業終了時期のうち最遅終了時期を、まとめ作業の作業終了時期とすることができる。
また、例えば、説明変数が担当者などの非数値変数である場合、まとめ作業の説明変数の値は、まとめ作業としてまとめられる複数種類の作業の説明変数の値の和集合として計算できる。まとめ作業としてまとめられる複数種類の作業の各担当者を、まとめ作業の担当者とすることができる。
【0050】
説明変数の種類によっては、まとめ作業としてまとめられる複数種類の作業の説明変数の値を、まとめ作業の説明変数の値にそのまま使用してもよい。また、まとめ作業の説明変数の値に使用しなくてもよい。
説明変数の場合と同様にして、まとめ作業の目的変数の値は、まとめ作業としてまとめられる複数種類の作業(主に、第1作業)の目的変数の値を用いて計算できる。
【0051】
(まとめコード)
まとめ部5は、作業およびまとめ作業に対してまとめコードを割り当てることができる。まとめコードは、まとめ作業としてまとめられる複数種類の作業を特定する。まとめコードは、作業の監視情報に含めてもよいし、まとめ作業の監視情報に含めてもよい。まとめ部5は、オペレータが選択した複数種類の作業に対してまとめ作業を作成する。まとめ部5は、例えば、複数種類の作業、およびまとめ作業に対して「コードA」という同一のまとめコードを割り当てることができる。情報処理装置100は、「コードA」を参照することで、まとめ作業と、まとめ作業としてまとめられる複数種類の作業との関係性を管理できる。
【0052】
(予測)
すでに説明した第2プロジェクトの予測と同様にして、予測部2は、訓練済みの予測モデルを用いて、予測対象の第2作業の実推原価を予測できる。しかし、予測対象の第2作業が小規模であり、作業開始時期から作業終了時期までの期間が極めて短かかったり、原価、損益、見積などの金額が極めて小さかったりする場合がある。この場合、予測モデルの出力値が極めて小さな値となったり、出力不可となったりすることがあり、実推原価の予測精度が低減する問題がある。
【0053】
このような問題に対し、オペレータが予測対象の第2作業を含む複数種類の作業を選択することで、まとめ部5は、選択された作業をまとめたまとめ作業を作成できる。選択された作業は、例えば、予測対象の第2作業と、複数種類の第1作業とすることができる。まとめ部5は、選択された作業の説明変数の値の合算値を、まとめ作業の説明変数の値として使用することができる。予測部2は、予測対象の第2作業を含むまとめ作業に対して、実推原価を予測できる。合算値を使用することで、作業開始時期から作業終了時期までの期間を十分に大きくすることができ、原価、損益、見積などの金額を十分に大きくすることができる。このため、予測部2の予測精度を所望レベル以上に向上させることができる。
【0054】
なお、まとめ作業を予測対象に含めることで、予測部2は、元々の予測対象の第2作業に対しても同時に予測してもよい。この場合、元々の予測対象の第2作業に対する予測精度を向上させることができる可能性が高まる。
また、予測対象の第2作業の他に、他の第2作業が存在する場合には、まとめ部5は、当該他の第2作業を選択してまとめ作業を作成してもよい。予測部2は、予測対象が複数存在する場合にも実推原価を予測できる。
【0055】
(まとめ作業の使用例1)
第2プロジェクトとしてのプロジェクトP1は、第1作業としての複数種類の作業W1と、第2作業としての作業W2に分割されている。作業W2の実推原価を予測したいが、作業W2が小規模であった場合、オペレータは、作業W1と作業W2を選択する。まとめ部5は、予測対象の作業W2と、選択された複数種類の作業W1とをまとめたまとめ作業T1を作成できる。また、まとめ部5は、選択された作業W1,W2、およびまとめ作業T1に対して同一のまとめコード「コードA」を割り当てる。すると、予測部2は、作成されたまとめ作業T1を予測対象として実推原価を予測できる。結果的に、まとめ作業T1の予測結果を踏まえて、元々の予測対象である作業W2の実推原価を予測できる。例えば、選択された作業W1の実績原価を参考にするなどして作業W2の実推原価を予測できる。
【0056】
なお、まとめ作業に対する予測の手順は、すでに説明した、第2プロジェクトに対する予測の手順と同様とすることができる。具体的には、まとめ部5は、選択された第2作業の説明変数、および選択された複数種類の第1作業の説明変数を用いて、まとめ作業の説明変数を計算する。予測部2は、計算された、まとめ作業の説明変数を予測モデルに入力し、まとめ作業の見積原価推定超過の予測値、および、予測値の根拠となる説明変数を出力する。
【0057】
また、オペレータは、プロジェクトP1に属する複数種類の作業W1の全部をまとめ作業にまとめてもよいし、一部をまとめ作業にまとめてもよい。また、まとめ作業を予測対象に含めることで、予測部2は、元々の予測対象の第2作業に対しても同時に予測してもよい。
【0058】
(まとめ作業の使用例2)
第2プロジェクトとしてのプロジェクトP1は、第2プロジェクトとしてのサブプロジェクトP11,P12を含む。サブプロジェクトP11は、第1作業としての複数種類の作業W1と、第2作業としての作業W2に分割されている。サブプロジェクトP12は、第1作業としての複数種類の作業W3と、第2作業としての作業W4に分割されている。
【0059】
サブプロジェクトP11の作業W2の実推原価を予測したいが、作業W2が小規模であった場合、オペレータは、作業W1と作業W2を選択する。まとめ部5は、予測対象の作業W2と、選択された複数種類の作業W1とをまとめたまとめ作業T1を作成できる。また、まとめ部5は、選択された作業W1,W2およびまとめ作業T1に対して同一のまとめコード「コードA」を割り当てる。すると、予測部2は、作成されたまとめ作業T1を予測対象として実推原価を予測できる。結果的に、まとめ作業T1の予測結果を踏まえて、元々の予測対象である作業W2の実推原価を予測できる。例えば、選択された作業W1の実績原価を参考にするなどして作業W2の実推原価を予測できる。
【0060】
また、サブプロジェクトP12の作業W4の実推原価を予測したいが、作業W4が小規模であった場合、オペレータは、作業W3と作業W4を選択する。まとめ部5は、予測対象の作業W4と、選択された複数種類の作業W3とをまとめたまとめ作業T2を作成できる。また、まとめ部5は、選択された作業W3,W4およびまとめ作業T2に対して同一のまとめコード「コードB」を割り当てる。すると、予測部2は、作成されたまとめ作業T2を予測対象として実推原価を予測できる。結果的に、まとめ作業T2の予測結果を踏まえて、元々の予測対象である作業W4の実推原価を予測できる。例えば、選択された作業W3の実績原価を参考にするなどして作業W4の実推原価を予測できる。
【0061】
また、まとめ作業T1、T2を用いてプロジェクトP1全体の実推原価を予測できる。作業W2,W4は小規模であった場合、オペレータは、まとめ作業T1,T2を選択する。まとめ部5は、まとめ作業T1,T2をまとめたまとめ作業T3を作成できる。また、まとめ部5は、選択されたまとめ作業T1,T2およびまとめ作業T3に対して同一のまとめコード「コードC」を割り当てる。すると、予測部2は、作成されたまとめ作業T3を予測対象として実推原価を予測できる。つまり、プロジェクトP1全体の実推原価を予測できる。より詳細には、まとめ作業T3の予測結果を踏まえて、元々の予測対象である作業W2,W4の実推原価を予測できる。例えば、選択された作業W1,W3の実績原価を参考にするなどして作業W2,W4の実推原価を予測できる。
【0062】
「コードC」は、複数種類のまとめコード(上記例では、「コードA」および「コードB」)をまとめる機能を有する。コードA~Cの間には、コードCがコードA,Bの上位のまとめコードであるというまとめ関係性がある。オペレータは、このような関係性を指定でき、情報処理装置100は、指定された関係性を外部パラメータとして記憶できる。例えば、「まとめ作業の使用例2」のように、プロジェクトP1およびサププロジェクトP11,P12の関係性に対応するようにまとめ関係性を構築することが好ましい。なお、オペレータは、上位のまとめコードでまとめられた複数種類のまとめコードの一部を除外したまとめ関係性を指定することもできる。
【0063】
なお、まとめ作業T3に対する予測の手順は、すでに説明した、第2プロジェクトに対する予測の手順と同様とすることができる。具体的には、まとめ部5は、選択されたまとめ作業T1,T2の説明変数を用いて、まとめ作業T3の説明変数を計算する。予測部2は、計算された、まとめ作業T3の説明変数を予測モデルに入力し、まとめ作業T3の見積原価推定超過の予測値、および、予測値の根拠となる説明変数を出力する。
【0064】
[処理]
情報処理装置100が実行するまとめ処理は、
図4に示すとおりである。つまり、まず、情報処理装置100が、オペレータによって選択された作業を取得する(ステップS11)。次に、まとめ部5が、選択された作業をまとめてまとめ作業を作成する(ステップS12)。このとき、選択された作業の説明変数の値を所定の演算式で組み合わせて(または組み合わせないようにして)、まとめ作業の説明変数の値を計算する。次に、まとめ部5は、選択された作業、および作成されたまとめ作業に対してまとめコードを割り当てる(ステップS13)。なお、このとき、まとめコードをまとめるまとめコードを用意し、まとめ関係性を指定してもよい。以上で、まとめ処理が終了する。その後、まとめ作業に対して予測部2が見積原価推定超過の予測をする。
【0065】
[まとめ作業による効果]
従来の広域監視では、情報処理装置100による予測によって、見積原価推定超過が1M以上となる作業(懸念される作業)の抽出数が多すぎる場合があるため、重点監視の対象にするか否かの判断のための調査に要する人的コストがさらに大きくなってしまうという問題があった。また、監視対象の作業が小規模である場合、見積原価超過などの値が調査できないほどに小さいため、当該作業の調査に対して余計な人的コストを要するという問題があった。なお、「監視対象の作業が小規模である場合」とは、例えば、当該作業の開始時期から終了時期までの期間が極めて短い期間である場合や、当該作業の説明変数の値が極めて小さい場合をいう。
【0066】
本実施形態によれば、予測対象の作業を含む複数種類のまとめ作業を作成することで、広域監視の対象となる作業の作業数を実質的に低減することができる。また、見積原価推定超過が1M以上となる作業の抽出数も実質的に低減することができる。よって、重点監視の対象にするか否かの判断のための調査に要する人的コストを低減できる。また、監視対象の作業が小規模であったしても、当該作業を含むまとめ作業は大規模にすることができるため、見積原価超過などの値を調査できる程度に大きくすることができ、当該作業の調査に対する余計な人的コストを省くことができる。したがって、広域監視にて、プロジェクトの悪化予兆を早期に検知するとともに、重点監視の対象にするか否かの判断の人的コストを低減することができる。
また、まとめ作業に対して見積原価推定超過の予測値、および、その予測値の根拠となる説明変数を出力できる。つまり、まとめ作業を、まとめ作業を構成する作業と同等に扱うことができる。また、まとめ作業を構成する他の作業を利用して、まとめ作業の予測結果から予測対象の作業の予測結果を得ることもできる。
また、複数のまとめ作業をまとめたまとめ作業を作成できるため、広域監視の対象となる作業の作業数を実質的にさらに低減することができる。また、見積原価推定超過が1M以上となる作業の抽出数も実質的にさらに低減することができる。よって、重点監視の対象にするか否かの判断のための調査に要する人的コストをさらに低減できる。また、複数のまとめ作業をまとめたまとめ作業はさらに大規模になるため、見積原価超過などの値をさらに確実に調査できる程度に大きくすることができ、当該作業の調査に対する余計な人的コストをさらに省くことができる。
【0067】
本実施形態では、作業に対して、まとめ部5によるまとめ処理を行い、まとめ作業を作成した。しかし、すでに説明したように、悪化予兆の処理に関して、プロジェクトと作業とを同一視できるため、まとめ部5は、プロジェクトに対してもまとめ処理を行うことができ、複数種類のプロジェクトをまとめたまとめプロジェクトを作成できる。例えば、まとめ部5は、選択された予測対象の第2プロジェクト、および選択された複数種類の第1プロジェクトをまとめたまとめプロジェクトを作成できる。
まとめ部5は、選択された第2プロジェクトの説明変数、および選択された複数種類の第1プロジェクトの説明変数を用いて、まとめプロジェクトの説明変数を計算できる。予測部2は、計算された、まとめプロジェクトの説明変数を予測モデルに入力し、まとめプロジェクトの見積原価推定超過の予測値、および、予測値の根拠となる説明変数を出力することができる。
まとめプロジェクトとして、第1まとめプロジェクトおよび第2まとめプロジェクトが存在する場合、まとめ部は、第1まとめプロジェクトおよび第2まとめプロジェクトをまとめた第3まとめプロジェクトを作成することができる。
なお、プロジェクトを構成する複数種類のサブプロジェクトに対しても上記まとめ処理を適用できる。
【0068】
[変形例]
(a):第1、第2実施形態では、進捗率をプロジェクトの期間を用いた時期的基準で算出した。しかし、例えば、進徳率は、プロジェクトで取り組む作業の達成度から算出してもよい。
(b):第1実施形態では、第1プロジェクトごとに、第1プロジェクトの監視情報のうち進捗率50%相当の時期での説明変数を予測モデルの入力とした。しかし、例えば、第1プロジェクトごとに、50%以外の任意の同じ進捗率相当の時期での説明変数を予測モデルの入力としてもよい。また、第1プロジェクトごとに異なる進捗率相当の時期での説明変数を予測モデルに入力してもよい。
(c):第2実施形態では、訓練日を定期化することで、同じ第1プロジェクトに対して、複数種類の進捗率を実質的に選択し、選択した進捗率での説明変数を予測モデルに入力した。しかし、例えば、情報処理装置100のユーザが入力部を操作して、同じ第1プロジェクトに対して、任意の進捗率を複数種類選択し、選択した進捗率での説明変数を予測モデルに入力してもよい。
(d):本実施形態では、予測段階でまとめ作業(又はまとめプロジェクト)を作成、利用する場合について説明した。しかし、訓練段階でまとめ作業(又はまとめプロジェクト)を作成、利用してもよい。まとめ作業(又はまとめプロジェクト)も加えて予測モデルを訓練することで、学習パターンを増やすことができ、予測精度の向上を期待できる。
(e):本実施形態では、小規模な作業(又はプロジェクト)に対してまとめ作業(又はまとめプロジェクト)を作成するようにした。しかし、本発明は、大規模な作業(又はプロジェクト)に対してまとめ作業(又はまとめプロジェクト)を作成することを妨げない。
【0069】
(f):本実施形態で説明した種々の技術を適宜組み合わせた技術を実現することもできる。
(g):本実施形態で説明したソフトウェアをハードウェアとして実現することもでき、ハードウェアをソフトウェアとして実現することもできる。
(h):その他、ハードウェア、ソフトウェア、フローチャートなどについて、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【符号の説明】
【0070】
100 情報処理装置
1 生成部
2 予測部
3 第1プロジェクトDB
4 第2プロジェクトDB
5 まとめ部
【要約】
【課題】広域監視にて、プロジェクトの悪化予兆を早期に検知するとともに、重点監視の対象にするか否かの判断の人的コストを低減する。
【解決手段】本発明は、終了した第1プロジェクトの監視情報で訓練した予測モデルを生成する生成部1と、仕掛かりの第2プロジェクトの説明変数を予測モデルに入力し、第2プロジェクトの見積原価推定超過の予測値、および、予測値の根拠となる説明変数を出力する予測部2と、選択された第2プロジェクト、および選択された複数種類の第1プロジェクトをまとめたまとめプロジェクトを作成するまとめ部5と、を備える情報処理装置100である。
【選択図】
図1