IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社日立パワーソリューションズの特許一覧

特開2025-17199作業知識提案システムおよび作業知識提案方法
<>
  • 特開-作業知識提案システムおよび作業知識提案方法 図1
  • 特開-作業知識提案システムおよび作業知識提案方法 図2
  • 特開-作業知識提案システムおよび作業知識提案方法 図3
  • 特開-作業知識提案システムおよび作業知識提案方法 図4
  • 特開-作業知識提案システムおよび作業知識提案方法 図5
  • 特開-作業知識提案システムおよび作業知識提案方法 図6
  • 特開-作業知識提案システムおよび作業知識提案方法 図7
  • 特開-作業知識提案システムおよび作業知識提案方法 図8
  • 特開-作業知識提案システムおよび作業知識提案方法 図9
  • 特開-作業知識提案システムおよび作業知識提案方法 図10
  • 特開-作業知識提案システムおよび作業知識提案方法 図11
  • 特開-作業知識提案システムおよび作業知識提案方法 図12
  • 特開-作業知識提案システムおよび作業知識提案方法 図13
  • 特開-作業知識提案システムおよび作業知識提案方法 図14
  • 特開-作業知識提案システムおよび作業知識提案方法 図15
  • 特開-作業知識提案システムおよび作業知識提案方法 図16
  • 特開-作業知識提案システムおよび作業知識提案方法 図17
  • 特開-作業知識提案システムおよび作業知識提案方法 図18
  • 特開-作業知識提案システムおよび作業知識提案方法 図19
  • 特開-作業知識提案システムおよび作業知識提案方法 図20
  • 特開-作業知識提案システムおよび作業知識提案方法 図21
  • 特開-作業知識提案システムおよび作業知識提案方法 図22
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025017199
(43)【公開日】2025-02-05
(54)【発明の名称】作業知識提案システムおよび作業知識提案方法
(51)【国際特許分類】
   G06Q 10/20 20230101AFI20250129BHJP
【FI】
G06Q10/20
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023120160
(22)【出願日】2023-07-24
(71)【出願人】
【識別番号】000233044
【氏名又は名称】株式会社日立パワーソリューションズ
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】二神 廉太郎
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049CC15
(57)【要約】
【課題】作業知識提案システムにおいて、適切な保守知識をユーザに提供できるようにする。
【解決手段】何れかの発生事象情報をユーザ80が入力すると、必要な作業と作業要素と、を提案する作業条件検索部42と、提案した作業と作業要素と、に対応する信頼度情報を表示し、ユーザ80からの変更を受け付ける提案表示部71と、変更を受け付けたときに変更前または変更後の作業と作業要素とに関する作業条件の候補を、入力された発生事象情報の組合せに基づいて検索し、作業履歴蓄積部20に蓄積された履歴と対応する候補を選択する作業条件推定部44と、を作業知識提案システム101に設けた。
【選択図】図1
【特許請求の範囲】
【請求項1】
保守対象設備に作業を行う必要が生じた際に、必要な前記作業と、前記作業に係る部品または手順を含む作業要素と、を提案する作業知識提案システムであって、
作業と、作業要素と、前記作業および前記作業要素が必要になる条件である作業条件と、を記憶する作業知識記憶部に対してデータを入出力する機能と、
何れかの発生事象情報をユーザが入力すると、入力された前記発生事象情報に対応する作業条件と、前記作業条件に対応して必要な作業と作業要素と、を検索する作業条件検索部と、
検索された前記作業条件、前記作業および前記作業要素と、前記作業条件に対応する信頼度情報を表示し、前記ユーザからの作業または作業要素の追加、修正、または削除を含む変更を受け付ける提案表示部と、
前記変更を受け付けたときに変更前または変更後の作業と作業要素とに関する作業条件の候補を、入力された前記発生事象情報の組合せに基づいて検索し、表示する作業条件推定部と、
前記候補が正当か否かの回答を前記ユーザから受け付け、前記回答が肯定であった前記作業条件を前記作業知識記憶部に追加する変更確認部と、
を備えることを特徴とする作業知識提案システム。
【請求項2】
作業条件の信頼度情報をさらに記憶する作業知識記憶部に対してデータを入出力する機能を備え、
前記変更確認部は、前記回答が肯定以外であった前記作業条件を、作業条件検索部において提案する頻度が低下するように前記信頼度情報を更新する
ことを特徴とする請求項1に記載の作業知識提案システム。
【請求項3】
前記作業と、前記作業に係る発生日情報と、前記作業または前記作業要素に対応する事象を表す発生事象情報と、を含む履歴を記憶する作業履歴蓄積部に対してデータを入出力する機能をさらに備える
ことを特徴とする請求項2に記載の作業知識提案システム。
【請求項4】
前記作業履歴蓄積部は、実行した前記作業と前記作業要素とに関する前記履歴と、前記発生事象情報に係る事象が発生した前記履歴と、を自然言語にて記録した作業内容情報を蓄積するものであり、
前記作業知識記憶部は、前記作業内容情報に現れ得るキーワードを示す単語情報と、前記単語情報の分類を定義した分類情報と、を含む作業単語テーブルを備え、
前記作業内容情報に対して前記作業単語テーブルを用いて文章解析を行い、前記作業と、前記作業要素と、を抽出する作業内容抽出部と、
前記抽出した前記作業と、前記作業内容情報における構造と、複数の前記履歴における前記発生事象情報と、前記作業と、の関係を分析して、前記作業条件を推定する作業条件抽出部と、を有することにより、前記作業知識記憶部の内容を初期化する作業知識初期化部をさらに備える
ことを特徴とする請求項3に記載の作業知識提案システム。
【請求項5】
前記作業履歴蓄積部は、実行を計画した前記作業または前記作業要素のうち、実際に有効であったものを示す有効作業情報を記録するものであり、
前記作業知識記憶部は、は前記ユーザが専門とする作業分野を示す得意分野情報を記録するものであり、
前記作業条件は、前記作業および前記作業要素に対応する分野を示す作業分野情報を含むものであり、
前記作業知識記憶部は、前記作業条件に従って前記ユーザに提案した作業の作業内容、または、前記作業条件の正当性を前記ユーザに確認した結果を示す判定情報を含む信頼度履歴情報を蓄積するものであり、
前記得意分野情報と前記作業分野情報とが一致する度合いと、前記ユーザに対する提案または確認に対して、前記ユーザが回答する頻度の高さの度合いと、に基づく重みを前記ユーザに付与した上で、前記ユーザが肯定した割合が高い前記作業条件ほど、高い前記信頼度情報を付与する信頼度算出部をさらに備え、
前記提案表示部は、提案に用いた前記作業条件の前記信頼度情報と、前記ユーザによる作業履歴と、を表示する機能を備える
ことを特徴とする請求項3に記載の作業知識提案システム。
【請求項6】
前記作業条件は、関係する事象、前記作業または前記作業要素が前記作業履歴蓄積部において発生または実行する頻度が少ない度合いに対応し、
前記提案表示部は、前記度合いが所定値以上である前記作業条件と関係する前記事象の一部の入力を前記ユーザに許容し、または、前記度合いが所定値以上である前記作業条件と関係する前記作業または前記作業要素の提案の入力を前記ユーザに許容するものであり、
前記度合いが所定値以上である前記作業条件と関係する事象が仮想的に全て発生した状況では関係する前記作業または前記作業要素が必要であるとする前記作業条件の正当性を前記ユーザに確認する反実仮想確認部をさらに備え、
前記作業履歴蓄積部は、前記反実仮想確認部における確認に対する前記ユーザによる回答の履歴を蓄積する
ことを特徴とする請求項3に記載の作業知識提案システム。
【請求項7】
前記提案表示部は、前記度合いが所定値以上である前記作業条件と関係する前記事象の一部を前記ユーザが入力し、または、前記度合いが所定値以上である前記作業条件と関係する前記作業または前記作業要素の提案を前記ユーザが入力した場合、前記ユーザに付与した重みが所定値以上である前記作業要素と、前記ユーザとの組合せに対して、前記反実仮想確認部における前記確認を行う頻度を増加する
ことを特徴とする請求項6に記載の作業知識提案システム。
【請求項8】
保守対象設備に作業を行う必要が生じた差に、必要な前記作業と、前記作業に係る部品または手順を含む作業要素と、を提案する作業知識提案方法であって、
作業と、作業要素と、前記作業および前記作業要素が必要になる条件である作業条件と、を記憶する作業知識記憶部に対してデータを入出力する過程と、
何れかの発生事象情報をユーザが入力すると、入力された前記発生事象情報に対応する作業条件と、前記作業条件に対応して必要な作業と作業要素と、を検索する作業条件検索過程と、
検索された前記作業条件、前記作業および前記作業要素と、前記作業条件に対応する信頼度情報を表示し、前記ユーザからの作業または作業要素の追加、修正、または削除を含む変更を受け付ける提案表示過程と、
前記変更を受け付けたときに変更前または変更後の作業と作業要素とに関する作業条件の候補を、入力された前記発生事象情報の組合せに基づいて検索し、表示する作業条件推定過程と、
前記候補が正当か否かの回答を前記ユーザから受け付け、前記回答が肯定であった前記作業条件を前記作業知識記憶部に追加する変更確認過程と、
を備えることを特徴とする作業知識提案方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、作業知識提案システムおよび作業知識提案方法に関する。
【背景技術】
【0002】
本技術分野の背景技術として、下記特許文献1,2には、プラント等の設備において、保守作業の作業手順を作業者に提示する技術が記載されている。これら文献の記述は本願明細書の一部として包含される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2010-122847号公報
【特許文献2】特開2021-196858号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、上述した技術において、一層適切な保守知識をユーザに提供したいという要望がある。
この発明は上述した事情に鑑みてなされたものであり、適切な保守知識をユーザに提供できる作業知識提案システムおよび作業知識提案方法を提供することを目的とする。
【課題を解決するための手段】
【0005】
上記課題を解決するため本発明の作業知識提案システムは、保守対象設備に作業を行う必要が生じた際に、必要な前記作業と、前記作業に係る部品または手順を含む作業要素と、を提案する作業知識提案システムであって、作業と、作業要素と、前記作業および前記作業要素が必要になる条件である作業条件と、を記憶する作業知識記憶部に対してデータを入出力する機能と、何れかの発生事象情報をユーザが入力すると、入力された前記発生事象情報に対応する作業条件と、前記作業条件に対応して必要な作業と作業要素と、を検索する作業条件検索部と、検索された前記作業条件、前記作業および前記作業要素と、前記作業条件に対応する信頼度情報を表示し、前記ユーザからの作業または作業要素の追加、修正、または削除を含む変更を受け付ける提案表示部と、前記変更を受け付けたときに変更前または変更後の作業と作業要素とに関する作業条件の候補を、入力された前記発生事象情報の組合せに基づいて検索し、表示する作業条件推定部と、前記候補が正当か否かの回答を前記ユーザから受け付け、前記回答が肯定であった前記作業条件を前記作業知識記憶部に追加する変更確認部と、を備えることを特徴とする。
【発明の効果】
【0006】
本発明によれば、適切な保守知識をユーザに提供できる
【図面の簡単な説明】
【0007】
図1】第1実施形態による作業知識提案システムのブロック図である。
図2】作業内容テーブルのデータ構成例を示す図である。
図3】作業条件テーブルのデータ構成例を示す図である。
図4】信頼度テーブルのデータ構成例を示す図である。
図5】作業計画者テーブルのデータ構成例を示す図である。
図6】作業単語テーブルのデータ構成例を示す図である。
図7】作業文書テーブルのデータ構成例を示す図である。
図8】作業履歴テーブルのデータ構成例を示す図である。
図9】行列の一例を示す図である。
図10】注目作業テーブルの一例を示す図である。
図11】提案表示画面の一例を示す図である。
図12】反実仮想確認画面の一例を示す図である。
図13】変更確認画面の一例を示す図である。
図14】作業内容抽出処理ルーチンのフローチャートである。
図15】作業条件抽出処理ルーチンのフローチャートである。
図16】信頼度算出ルーチンのフローチャートである。
図17】作業条件検索ルーチンのフローチャートである。
図18】作業条件試験ルーチンのフローチャートである。
図19】作業条件推定ルーチンのフローチャートである。
図20】提案表示部の処理の流れを示す図である。
図21】提案表示部の処理の流れを示す他の図である。
図22】コンピュータのブロック図である。
【発明を実施するための形態】
【0008】
[実施形態の概要]
上述した特許文献1,2を応用した技術(以下、応用技術と呼ぶ)によれば、過去の作業内容を作業記録として蓄積し、そこから効率的な作業手順を整理して作業者に提示し、作業者の作業の効率化を支援する作業手順管理システムを実現できると考えられる。すなわち、作業ログの分析により得た優先度ノウハウを用いて、ある局面以降で如何なる順序で作業を進捗すべきかを提案することが可能であると考えられる。これは、作業を実施したその次に行うべき作業を、ある意味では、直列的に対応して記録させた知識によるものである。
【0009】
上述の応用技術における作業ログは、ユーザが故障対応を行う上で行った作業内容、作業結果、作業理由等をユーザが入力した履歴である。これを故障対応の度にユーザが入力することは業務的な負担が大きくなる。またユーザが作業理由を簡潔に説明できるほどの知識を備えている必要がある。
【0010】
また、作業ログから新しい作業が抽出されたとき、すなわち提案した通りでない作業が検出された場合は、その状況下においては新しい作業を行うという知識が新たに獲得される。しかし、厳密には、前述の状況において、新しい作業を追加する、提案した作業を修正する、提案した作業を削除するなど、多数の採り得る選択肢が存在している。これらの選択を適切に繰り返すことで、初めて抽出した形式知がユーザの暗黙知を再現することが可能となる。
【0011】
上述したような選択を行うことなく知識を追加し続ければ、間違った知識や、間違いとは言えないまでも一般的でない知識を用いた作業が提案され、その提案を精査する労力と能力がユーザに要求される。上述した応用技術における提案作業に作業理由と優先度を付与する方式では、その内容を把握し理解するための労力と能力がユーザに要求されるため、この課題の根本解決に至らない。また、上述した応用技術や、後述の実施形態において想定する保守などの分野では、発生する故障の事象に偏りが生じることで、頻出の事象にのみ知識が充実し、稀少な事象や未知の故障に対する知識が蓄積されない問題がある。従って、こうした偏りを解消するためには能動的にユーザの知識を引き出す仕組みを設けることが好ましいと考えられる。
【0012】
後述する実施形態は、以上の事情に鑑みて案出されたものであって、上述した応用技術にあった知識の更新と信頼性の問題を解消し、ユーザに対する業務負担と要求する知識を削減した上で、発生した事象に対する最適な作業を選択する支援を提供するものである。すなわち、後述する実施形態においては、作業知識を能動的に提供する手段を導入し、その更新や根拠理解を容易化する手法を導入することで、一層適切な保守知識をユーザに提供するものである。
【0013】
その目的を達成するため、本実施形態では、作業知識を上述した応用技術のように直列的な管理を行うことに代えて、作業一件毎に独立してその作業が必要な状況を記録する並列的な方式を用いる。本実施形態における知識とは、作業およびその作業に附随して臨機応変に選択される内容である作業手順や使用部品などの作業要素、そしてそれぞれの作業と作業要素が必要になる場合の事象や前段の作業および作業要素を定義した作業条件で構成される。この並列的な方式は、知識の更新が柔軟に行えるとともに、個々の作業実行の根拠事象を明確に表現できる。一方で、知識の表現としては複雑化し、知識の初期化や編集を人手で直接に行うことは困難となる。
【0014】
後述の実施形態は、第1の見地においては、作業知識記憶部と、作業履歴蓄積部と、作業計画者端末と、提案表示部と、作業条件検索部と、変更確認部と、を備える装置であると考えることができる。
ここで、作業知識記憶部は、作業、作業要素、作業条件、作業条件の信頼度等の情報を蓄積するものである。また、作業履歴蓄積部は、実行した作業と作業要素の履歴を蓄積するものである。また、作業計画者端末は、ユーザである作業計画者が操作する端末である。また、提案表示部は、ユーザによる作業が必要な状況において、作業候補の提案とその提案に用いた作業条件と信頼度を表示するものである。また、作業条件検索部は、作業が必要な状況において、発生した事象をユーザが入力することで作業知識記憶部に記憶されている何れかの作業条件が入力内容に該当するか評価し、対応している作業と作業要素を提案するものである。
【0015】
[第1実施形態]
〈第1実施形態の全体構成〉
図1は、第1実施形態による作業知識提案システム101のブロック図である。
図1において、作業知識提案システム101は、作業知識記憶部10と、作業履歴蓄積部20と、作業知識初期化部30と、作業知識提案部40と、計画者端末70と、を備えている。
【0016】
ここで、作業知識記憶部10は、作業内容テーブル11と、作業条件テーブル12と、信頼度テーブル13と、作業計画者テーブル14と、作業単語テーブル15と、を備えている。また、作業履歴蓄積部20は、作業文書テーブル21と、作業履歴テーブル22と、を備えている。また、作業知識初期化部30は、作業内容抽出部31と、作業条件抽出部32と、を備えている。また、作業知識提案部40は、信頼度算出部41と、作業条件検索部42(作業条件検索過程)と、作業条件試験部43と、作業条件推定部44(作業条件推定過程)と、を備えている。また、計画者端末70は、提案表示部71(提案表示過程)と、反実仮想確認部72と、変更確認部73と、を備えている。
【0017】
作業知識提案システム101は、保守対象設備300に対する保守作業等の知識を提案するものである。保守対象設備300は、保守対象機器302,304,306を備えている。保守対象設備300は、例えば風力発電システムであり、保守対象機器302,304,306は、例えば風力発電機である。
また、図示のユーザ80-1,80-2,…は、複数の作業計画者である。作業計画者は、保守対象設備300に対して修理等の作業が必要な状況が生じた際に、発生した事象から実施すべき作業とその手順や必要部品などの作業要素を検討、指示する。なお、ユーザ80-1,80-2,…を区別する必要が無い場合、これらを総称して「ユーザ80」と呼ぶ。
【0018】
ユーザ80は作業内容を検討するために、計画者端末70を操作し、最初に提案表示部71を閲覧する。そして、作業が必要な事象が生じた場合に、発生した事象を計画者端末70に入力する。提案表示部71はネットワーク60を経由して作業知識提案部40に作業内容の提案を要求し、返却された提案をユーザ80に表示する。
【0019】
ユーザ80は提案表示部71を操作し、提案された作業内容に異議があれば変更を加える。提案表示部71はユーザ80の変更操作や入力した事象に応じて、変更確認部73や反実仮想確認部72を用いた知識の確認をユーザ80に対して求める場合がある。
【0020】
以下の実施形態では、保全作業に関する知識の提案を想定し、その作業としては点検および修理を想定し、その作業要素としては点検または修理の手順および修理に使用する部品を想定し、その事象としては発生した故障のエラーコードや対象機械の機種を想定している。
【0021】
〈データ構成〉
(入力文章例)
以下、本実施形態における各種データ構成について説明する。
本実施形態において、作業履歴蓄積部20の作業文書テーブル21には、自然言語による作業内容記録文章が記憶されている。これらの作業内容記録文章の例として、作業内容記録文章#1,#2を以下に示す。カギ括弧(「」)の内側が、作業内容記録文章#1,#2の内容である。
【0022】
(作業内容記録文章#1)
「1.10/15午前に E001 エラーが発生し停止。以下の作業を実施。
2.ノイズセンサの動作確認
2.1.ノイズセンサの周辺を打音し電圧変化を確認 結果:異常
2.2.ノイズセンサの交換実施 交換部品:NS102
3.基盤Aの動作確認
3.1.基盤Aのノイズセンサとの接続部(1番~3番)を確認 結果:OK」
【0023】
(作業内容記録文章#2)
「1.12/21深夜にE001とE002が発生しました。翌日現地にて復旧作業を実施しました。
2.ノイズセンサの電圧測定 結果:NG
・ノイズセンサを新品に交換
・NS104 を使用
3.温度センサの電圧測定 結果:OK
4.基盤Aの接続確認
・基盤Aのx1~x5(ノイズセンサ側と温度センサ側)の接触を確認 結果:OK」
【0024】
図2は、作業内容テーブル11のデータ構成例を示す図である。
作業内容テーブル11は、複数のレコード11R1,11R2,…を備えており、各レコードは、作業内容記録文章#1,#2から抽出したキーワードに対応する。そして、作業内容テーブル11の各レコード11R1,11R2,…には、事例ID情報110と、ノード番号111と、キーワード情報112と、原文章情報113と、上位ノードID情報114と、ノード種類情報115と、ノードID情報116と、が含まれている。
【0025】
事例ID情報110は、作業の事例を示す情報である。上述した作業内容記録文章#1,#2が、それぞれ作業の事例に対応し、両者に対して事例ID情報110として「1」および「2」が付与されていることとする。作業内容記録文章#1,#2をそれぞれ複数の文字列(参照文字列と呼ぶ)に分割し、各々の参照文字列からキーワードを抽出することができる。原文章情報113は、キーワードが抽出できた参照文字列そのもの、参照文字列の主要部分の内容である。ノード番号111は、参照文字列の、当該事例ID情報110内における出現順序である。キーワード情報112は、該参照文字列から抽出された一または複数のキーワードの内容である。但し、作業内容記録文章#1,#2に対応する機種情報(例えばレコード11R8の「E70」)については、原文章情報113が無い場合においても、キーワード情報112に含められる。図2において、セミコロン(;)は、複数のキーワードが存在する場合に、その区切りを示す。
【0026】
ノードID情報116は、当該レコードに対応するノードIDを表すものである。作業内容テーブル11における各レコードの中には、同一内容または同一内容とみなして差し支えない複数のレコードが含まれることがある。例えば、レコード11R1,11R9は、共にキーワード情報112および原文章情報113が「E001」であるため、同一内容である。このような場合に、両レコードのノードIDは、同一(図示の例では「1」)になる。なお、ノードID情報116を付与する方法の詳細については後述する。
【0027】
ノード種類情報115は、当該レコードのキーワード情報112に基づいて、当該レコードの種類として、要素K2(作業要素)、事象K4、点検K12、修理K14等のノード種類を指定するものである。ここで、点検K12および修理K14を総称して作業K10と呼ぶ。なお、本実施形態において、ノード種類情報115における要素K2は作業手順と使用部品を想定しているが作業の結果や優先度等を含めてもよい。また、本実施形態におけるノード種類情報115(図2参照)における事象K4は「エラーコード」と「機種」を想定しているが、保守対象機器302,304,306の立地条件や10年点検などの作業イベント名であってもよく、保守対象機器302,304,306において最近実行した作業内容等を含めてもよい。
【0028】
上位ノードID情報114は、当該レコードに対応するノードが、他のノードの説明等である場合等、文書上で従属関係が読み取れる場合に、当該他のノードのノードIDを表すものである。例えば、当該ノードが、ある点検作業の手順を示すものであれば、その点検作業が上位ノードになる。例えば、レコード11R3の原文章情報113は「ノイズセンサの周辺を打音し、電圧変化を確認」であり、これはレコード11R2の「ノイズセンサの動作確認」の手順を示すものであると考えられる。そのため、レコード11R3の上位ノードID情報114は、レコード11R2のノードID情報116である「2」に設定されている。
【0029】
ここで、(一または複数の)「ある条件」が満たされた場合に、「ある判断内容」が生じるとする。「ある判断内容」とは、例えば「ある作業を実行しなければならない」等の判断内容である。この(一または複数の)「ある条件」と、「ある判断内容」との組合せを「作業条件」と呼ぶ。このような場合、「ある判断内容」の上位ノードが、「ある条件」になる。なお、上位ノードID情報114を付与する方法の詳細については後述する。
【0030】
図3は、作業条件テーブル12のデータ構成例を示す図である。
図3において、作業条件テーブル12は、複数のレコード(作業条件)12R1,12R2,…を備えており、1つのレコードは、1つの「作業条件」に対応する。そして、各レコード12R1,12R2,…には、ノードID情報120と、fromID情報121(作業)と、toID情報122(作業要素)と、作業分野情報123と、信頼度情報124と、が含まれている。
【0031】
各レコードにおけるtoID情報122は、作業内容テーブル11(図2参照)におけるあるノードIDであり、fromID情報121がその上位ノードIDになる。作業条件テーブル12における各レコードは、fromID情報121とtoID情報122に対応するノードをエッジで結んだときのナレッジグラフを構成することができる。ノードID情報120は、当該レコードに係る作業条件を特定するユニークな情報である。
【0032】
作業分野情報123は、当該レコードに係る作業条件の技術分野、すなわち「電気系」、「機械系」、「温度系」等の分野コードを示すものである。すなわち、作業分野情報123は、fromID情報121およびtoID情報122の双方のノードについて、キーワード情報112(図2参照)に基づく技術分野を示すものである。なお、当該技術分野は、後述する単語情報150(図6参照)の分類情報153に対応する情報である。信頼度情報124は、当該レコードに係る作業条件の信頼度を示すものである。すなわち、信頼度情報124の値が大きいほど、当該レコードに係る作業条件の信頼度が大きいことを表す。
【0033】
図4は、信頼度テーブル13のデータ構成例を示す図である。
図4において、信頼度テーブル13は複数のレコード(信頼度履歴情報)13R1,13R2,…を備えており、1つのレコードは、作業条件テーブル12(図3参照)の各作業条件(レコード)に対して、ユーザ80が「評価」した結果を表す。そして、信頼度テーブル13の各レコードには、ノードID情報130(作業内容)と、入力日情報131と、計画者ID情報132と、状況情報133と、判定情報134と、が含まれている。
【0034】
ノードID情報130は、ユーザ80が評価した作業条件のノードID情報120(図3参照)に等しい。入力日情報131は、信頼度テーブル13の当該レコードをユーザ80が入力した日付である。計画者ID情報132は、当該レコードを入力したユーザの識別情報である。状況情報133は、「提案」または「反実仮想確認」の何れかになる。ここで、「提案」とは、当該作業条件が「提案された」ものであることを示す。また、「反実仮想確認」とは、当該作業条件が「反実仮想」を確認すべきものであることを示す。
【0035】
判定情報134は、当該レコードに係る作業条件の判定結果を示すものであり、「肯定」、「否定」、「保留」の何れかになる。ここで、「肯定」とは、「当該作業条件が正しい」という意味であり、「否定」とは、「当該作業条件が誤り」という意味であり、「保留」は、まだ判定結果が定まっていないことを示す。
【0036】
図5は、作業計画者テーブル14のデータ構成例を示す図である。
図5において、作業計画者テーブル14は複数のレコード14R1,14R2,…を備えており、一つのレコードは、一人のユーザ80に対応する。そして、作業計画者テーブル14の各レコードには、計画者ID情報140と、役職情報141と、得意分野情報142と、が含まれている。計画者ID情報140は、当該レコードに係るユーザ80を一意に特定する情報である。役職情報141は、当該ユーザ80の役職を示す。得意分野情報142は、当該ユーザ80が得意とする分野コード情報を格納する。なお、当該分野コード情報は、作業条件テーブル12(図3参照)の作業分野情報123における技術分野と同様である。
【0037】
図6は、作業単語テーブル15のデータ構成例を示す図である。
先に作業内容記録文章#1,#2として例示したように、本実施形態においては、保守対象設備300に対して発生した保守点検作業の内容を、ユーザは、自然言語の文章によって記述する。作業単語テーブル15は、その自然言語の文章に現れ得る単語のうち、重要な用語を定義したテーブルである。
【0038】
図6において、作業単語テーブル15は、複数のレコード15R1,15R2,…を備えており、各レコードは、これら単語に対応する。各レコードには、単語情報150と、ラベル情報151と、ノード種類情報152と、分類情報153と、が含まれている。
【0039】
ラベル情報151は、単語情報150の種別を示すものであり、例えば以下のものが含まれている。
・machine:保守対象機器302,304,306の型番を示す。
・target:保守作業や点検等を行った機器の部位を示す。
・inspect:その部位に対して行った点検の内容を示す
・repair:その部位に対する修理や交換の内容を示す
・error:発生したエラーコードなどの事象を表す。
・parts:部品の型番等を表す。
【0040】
ここで、ラベル情報151のうち、「machine」および「target」を「目的語系ラベル」と呼び、「inspect」および「repair」を「述語系ラベル」と呼び、「error」および「parts」を「単独系ラベル」と呼ぶ。また、単語情報150に示された単語のうち、ラベル情報151が目的語系ラベルであるものを「目的語系単語」と呼び、述語系ラベルであるものを「述語系単語」と呼び、単独系ラベルであるものを「単独系単語」と呼ぶ。
【0041】
ノード種類情報152は、当該レコードにおける単語情報150の種別を示すものであり、当該種別には、「事象」、「点検」、「修理」、「要素」が含まれる。ここで、「事象」とは、単語情報150が「保守対象設備300に発生した事象を表す」という意味である。また、「点検」とは、単語情報150が、「保守対象設備300において実行する点検を表す」という意味である。また、「修理」とは、単語情報150が、「保守対象設備300において実行する修理を表す」という意味である。また、「要素」とは、単語情報150が、「事象、点検または修理に関する要素を表す」という意味である。
【0042】
分類情報153は、単語情報150の内容に、関係する専門分野が存在する場合は、その分野コードを表すものである。なお、当該分野コード情報は、作業条件テーブル12(図3参照)の作業分野情報123における技術分野と同様である。
【0043】
図7は、作業文書テーブル21のデータ構成例を示す図である。
図7において、作業文書テーブル21は、複数のレコード21R1,21R2,…を備えており、各レコードは、保守対象設備300(図1参照)に対して発生した「保守点検作業」に対応する。各レコードには、事例ID情報210と、発生日情報211と、計画者ID情報212と、対象機種情報213と、作業内容情報214と、が含まれている。
【0044】
事例ID情報210は、当該レコードに係る保守点検作業を特定するユニークな情報である。発生日情報211は、保守点検作業が発生した日時を示すものである。計画者ID情報212は、保守点検作業の計画者であるユーザ80を特定する情報であり、作業計画者テーブル14(図5参照)における計画者ID情報140に対応する。対象機種情報213は、保守点検作業が発生した何れかの保守対象機器302,304,306を示す情報である。作業内容情報214は、上述した保守点検作業の内容を自然言語の文字列で記述した文章である。図示の例において、事例ID情報210が「1」および「2」であるレコードには、それぞれ、上述した作業内容記録文章#1,#2が作業内容情報214として記憶されている。
【0045】
図8は、作業履歴テーブル22のデータ構成例を示す図である。
作業履歴テーブル22は、複数のレコード(履歴)22R1,22R2,…を備えており、各レコードは、作業文書テーブル21(図7参照)と同様に、上述した保守点検作業に対応する。各レコードには、事例ID情報220と、計画者ID情報221と、発生日情報222と、発生事象情報223と、計画作業情報224と、有効作業情報225と、が含まれている。
【0046】
事例ID情報220、計画者ID情報221、および発生日情報222は、上述した事例ID情報210(図7参照)における事例ID情報210、計画者ID情報212および発生日情報211と、それぞれ同様の情報である。発生事象情報223は、当該レコードに係る保守点検作業に対応して発生した、一または複数の事象を示すものである。より具体的には、作業内容テーブル11(図2参照)のノード種類情報115が「事象」であるレコードのノードID情報116のうち、一または複数のものが発生事象情報223に含まれる。
【0047】
計画作業情報224は、異常が発見された箇所に対して実行し得る点検作業や、異常復旧のために実行し得る修理作業等を表すものである。より具体的には、作業内容テーブル11(図2参照)のノード種類情報115が「点検」または「修理」であるレコードのノードID情報116のうち、一または複数のものが計画作業情報224に含まれる。有効作業情報225は、計画作業情報224に列挙された作業のうち、実際に実行された作業のノードID情報116である。
【0048】
図9は、作業条件抽出部32によって作成される行列MTCの一例を示す図である。
行列MTCの各行は、作業条件テーブル12(図3参照)のtoID情報122に対応する。また、行列MTCの各列は、fromID情報121に対応する。行列MTCの各要素の数値は、列であるfromID情報121と、行であるtoID情報122と、に対応した、出現数等の数値を表す。
【0049】
図10は、注目作業テーブル24の一例を示す図である。
注目作業テーブル24は、複数のレコード24R1,24R2,…を備え、各レコードには、発生事象情報240と、事例ID情報241と、作業有無情報242と、を含む。発生事象情報240は、発生した一または複数のノードIDを示す。事例ID情報241は、この発生事象情報240に対応する事例IDである。作業有無情報242は、発生事象情報240に対して実行された作業の有無を表す。
【0050】
〈作業知識初期化部30〉
図1に示した作業内容抽出部31は、作業履歴蓄積部20における作業文書テーブル21(図7参照)と、作業知識記憶部10における作業単語テーブル15(図6参照)と、を取得する。次に、作業内容抽出部31は、作業内容情報214(例えば上述の作業内容記録文章#1,#2)に含まれる保守点検作業の情報を抽出し、その内容を作業内容テーブル11(図2参照)に格納する。また、作業条件抽出部32は、上述した行列MTC(図9参照)等を生成する。
【0051】
〈計画者端末70〉
図11は、提案表示部71に表示される提案表示画面V71の一例を示す図である。
提案表示部71はネットワーク60を介して、作業知識提案部40から作業内容の提案または確認を取得し、その内容を提案表示画面V71によってユーザ80に表示する。図11において、提案表示画面V71は、事象入力部710と、作業内容表示部711と、修正入力ボタン712と、作業追加ボタン713と、作業削除ボタン714と、提案根拠表示部715と、計画完了ボタン716と、を含んでいる。
【0052】
事象入力部710には、ユーザ80によって、保守対象設備300に発生した事象の内容が入力される。作業内容表示部711には、発生した当該事象に対して、ユーザ80に提案する作業内容のリストを表示する。図示の例では、「温度センサ点検」および「基盤点検」が、作業内容のリストに含まれている。ユーザ80は、修正入力ボタン712を押下することにより、当該リストの内容と修正することができる。
【0053】
作業追加ボタン713は、作業内容表示部711に、新たな作業を追加すべきことを指令するものである。作業削除ボタン714は、作業内容表示部711に示された何れかの作業の削除を指令するものである。提案根拠表示部715は、作業内容表示部711に列挙された作業内容のうち、何れかの提案根拠等を示すものである。図示の例では、提案根拠表示部715は、「基盤点検」の提案根拠等を示している。
【0054】
図12は、反実仮想確認部72に表示される反実仮想確認画面V72の一例を示す図である。
図12において、反実仮想確認画面V72は、作業内容表示部720と、提案根拠表示部721と、保留ボタン724と、が含まれている。さらに、提案根拠表示部721には、肯定ボタン722と、否定ボタン723と、が含まれている。
【0055】
図12の例において、反実仮想確認画面V72は、「基盤点検」の作業内容を提案している。作業内容表示部720は、仮想的に提案した作業内容である仮想提案内容を表示する。提案根拠表示部721は、仮想提案内容に用いた作業条件等を作業条件テーブル12(図3参照)から抽出して表示するものである。肯定ボタン722、否定ボタン723、保留ボタン724は、それぞれ“肯定”、“否定”、“保留”の指令情報を入力するものである。これらボタンのうち何れかが押下されると、反実仮想確認部72の処理が終了し、表示画面は提案表示部71の画面に遷移する。
【0056】
図13は、変更確認部73によって表示される変更確認画面V73の一例を示す図である。
図13において、変更確認画面V73は、変更内容表示部730と、提案根拠修正案表示部731と、保留ボタン734と、が含まれている。さらに、提案根拠修正案表示部731には、肯定ボタン732と、否定ボタン733と、が含まれている。
【0057】
変更内容表示部730は、ユーザ80が提案表示部71を介して行った変更内容を表示する。提案根拠修正案表示部731は、作業条件推定部44によって推定された作業条件を表示する。肯定ボタン732、否定ボタン733、保留ボタン734は、それぞれ“肯定”、“否定”、“保留”の指令情報を入力するものである。これらボタンのうち何れかが押下されると、変更確認部73の処理が終了し、表示画面は提案表示部71の画面に遷移する。
【0058】
図14は、作業内容抽出部31において実行される作業内容抽出処理ルーチンのフローチャートである。
(S3102:データ取得)
図14において、処理がステップS3102に進むと、データ取得処理が実行される。すなわち、作業内容抽出部31は、作業文書テーブル21(図7参照)および作業単語テーブル15(図6参照)を読み出し、これらの内容を取得する。
【0059】
(S3104:文字列分割)
次に、処理がステップS3104に進むと、作業内容抽出部31は、文字列分割を実行する。この文字列分割の内容は以下の通りである。
(1)作業文書テーブル21から、未処理の一つのレコードを処理対象として選択する。当該レコードを「処理対象レコード21Ra」(図示せず)と呼ぶ。
(2)処理対象レコード21Raにおける作業内容情報214(例えば、上述した作業内容記録文章#1,#2)を、「句読点」、「改行」、「区切り記号」を境界として、複数の文字列に分割する。「区切り記号」とは、「1.」または「・」等、文章を区切る文字列を指す。分割された各文字列を、ここでは「部分文字列」と呼ぶ。
(3)部分文字列毎に、作業単語テーブル15(図6参照)に含まれる単語情報150と、該単語情報150に対応するラベル情報151と、を取得する。
【0060】
(4)各部分文字列を、抽出した単語情報150のラベル情報151に応じて、さらに短い文字列に分割する。分割された文字列を「参照文字列」と呼ぶ。ここで、参照文字列は、「目的語系単語と述語系単語との組を含む文字列」(以下、「目的語・述語系参照文字列」と呼ぶ。)、または、「単体の単独系単語を含む文字列」(以下、「単独系参照文字列」と呼ぶ)になる。
【0061】
なお、上述したように、「目的語系ラベル」とは、「machine」および「target」であり、「述語系ラベル」とは、「inspect」および「repair」であり、「単独系ラベル」とは、「error」および「parts」である。また、「目的語系単語」、「述語系単語」および「単独系単語」は、これらラベルに対応する単語である。
【0062】
(S3106:作業内容テーブルの更新)
次に、処理がステップS3106に進むと、作業内容抽出部31は、参照文字列の内容に基づいて、作業内容テーブル11を更新する。この更新処理の内容は以下の通りである。
(1)レコードの作成等
作業内容抽出部31は、各参照文字列に対応して、作業内容テーブル11(図2参照)のレコードを作成する。そして、作業内容抽出部31は、参照文字列が含まれていた作業内容情報214(例えば、上述した作業内容記録文章#1,#2)に応じて、事例ID情報110を書き込み、参照文字列の出現順序に応じて、ノード番号111を書き込む。
【0063】
(2)原文章情報113の設定等
作業内容抽出部31は、各参照文字列に「子要素記号」が含まれるか否かを判定する。ここで、「子要素記号」とは、「・」や、「1.1.」等、上述した「区切り記号」の一部であって子要素の項目であることを表す記号等の文字列である。
【0064】
(2A)「子要素記号」が参照文字列に含まれていた場合、作業内容抽出部31は、この「子要素記号」を削除したものを原文章情報113として書き込む。さらに、この場合、ノード種類情報115を「要素」に設定する。
【0065】
例えば、上述した作業内容記録文章#1には、「2.1.ノイズセンサの周辺を打音し電圧変化を確認」という文字列が含まれており、これが参照文字列の一例になる。この参照文字列のうち、「2.1.」は子要素記号であるため、これを削除した残りの文字列「ノイズセンサの周辺を打音し電圧変化を確認」が、レコード11R3(図2参照)の原文章情報113として書き込まれている。そして、レコード11R3のノード種類情報115は「要素」に設定されている。
【0066】
(2B)一方、「子要素記号」が参照文字列に含まれていなかった場合、作業内容抽出部31は、参照文字列の内容を原文章情報113として書き込む。なお、この場合には、ノード種類情報115は、現時点では未定である。
【0067】
(3)キーワード情報112の設定
原文章情報113が単独系参照文字列(単体の単独系単語を含む文字列)である場合、作業内容抽出部31は、当該単語を、作業内容テーブル11の当該レコードにおけるキーワード情報112に書き込む。例えば、図2のレコード11R1において、原文章情報113は「E001」であり、これは、単独系参照文字列であるため、作業内容抽出部31は、この単語「E001」をそのままレコード11R1のキーワード情報112に書き込む。
【0068】
一方、原文章情報113が目的語・述語系参照文字列である場合、これに含まれる目的語系単語および述語系単語を、作業内容テーブル11の当該レコードにおけるキーワード情報112に書き込む。例えば、図2のレコード11R2において、原文章情報113は「ノイズセンサの動作確認」であり、このうち「ノイズセンサ」は目的語系単語であり、「確認」は述語系単語である。そこで、キーワード情報112として、「ノイズセンサ」および「確認」が書き込まれている。
【0069】
(4)ノード種類情報115の設定
上述したように、参照文字列に「子要素記号」が含まれていた場合、対応するレコードにおけるノード種類情報115は「要素」に設定される。作業内容抽出部31は、それ以外のレコードについては、参照文字列が単独系参照文字列であるのか目的語・述語系参照文字列であるか、に基づいて、ノード種類情報115を決定する。
【0070】
(4A)単独系参照文字列の場合
原文章情報113が単独系参照文字列である場合、ここには単独系単語が含まれる。作業内容抽出部31は、作業単語テーブル15(図6参照)において、当該単独系単語に対応するレコードのノード種類情報152を抽出する。そして、抽出したノード種類情報152の内容を、作業内容テーブル11(図2参照)における、当該原文章情報113に対応するレコードのノード種類情報115に書き込む。
【0071】
例えば、図2のレコード11R1において、原文章情報113は、単独系単語そのものである「E001」である。そして、作業単語テーブル15(図6参照)のレコード15R1によれば、「E001」のノード種類情報152は「事象」である。従って、図2のレコード11R1において、ノード種類情報115には「事象」と書き込まれている。
【0072】
(4B)目的語・述語系参照文字列の場合
原文章情報113が目的語・述語系参照文字列である場合には、ここには目的語系単語と、述語系単語と、が含まれる。そして、上述したように、述語系単語に対応するラベル情報151(図6参照)は、「inspect」または「repair」の何れかである。述語系単語に対応するラベル情報151が「inspect」である場合、作業内容テーブル11(図2参照)のノード種類情報115には、「点検」が書き込まれる。一方、ラベル情報151が「repair」である場合、作業内容テーブル11におけるノード種類情報115には、「修理」が書き込まれる。
【0073】
例えば、図2のレコード11R2において、原文章情報113は「ノイズセンサの動作確認」であり、ここには述語系単語である「確認」が含まれている。一方、図6のレコード15R1によれば、「確認」のラベル情報151は「inspect」である。従って、図2のレコード11R2において、ノード種類情報115には「点検」が書き込まれている。
【0074】
また、図2のレコード11R4において、原文章情報113は「ノイズセンサの交換」であり、このうち「交換」が述語系単語になる。図6のレコード15R10によれば、「交換」のラベル情報151は「repair」である。従って、図2のレコード11R4において、ノード種類情報115には「修理」が書き込まれている。
【0075】
(5)上位ノード番号の取得
(5.1)「修理」に対する上位ノード番号
p,qを任意の自然数として、作業内容抽出部31は、ノード種類情報115が「修理」であるレコード11Rp(図示せず)の上位ノード番号(図示せず)を、以下のようにして定める。
・レコード11Rpと同一の事例ID情報110を有し、レコード11Rpのノード番号111よりも小さいノード番号111を有し、かつ、ノード種類情報115が「点検」である、一または複数のレコード11Rq(図示せず)を検索する。
・検索された一または複数のレコード11Rqのうち、ノード番号111が最大であるものの当該ノード番号111が、レコード11Rpの上位ノード番号である。
【0076】
例えば、図2のレコード11R4のノード種類情報115は「修理」であり、上述した条件を満たすレコード11Rqはレコード11R2になる。従って、レコード11R4の上位ノード番号は、レコード11R2のノード番号111である「2」に設定される。
【0077】
(5.2)「要素」に対する上位ノード番号
また、作業内容抽出部31は、ノード種類情報115が「要素」であるレコード11Rp(図示せず)の上位ノード番号を、以下のようにして定める。
・レコード11Rpと同一の事例ID情報110を有し、レコード11Rpのノード番号111よりも小さいノード番号111を有し、かつ、ノード種類情報115が「点検」または「修理」である、一または複数のレコード11Rq(図示せず)を検索する。
・検索された一または複数のレコード11Rqのうち、ノード番号111が最大であるものの当該ノード番号111が、レコード11Rpの上位ノード番号である。
【0078】
(6)機種情報に対応するノード種類情報115の設定
また、作業内容抽出部31は、処理対象レコード21Ra(作業文書テーブル21の、処理中のレコード)の事例ID情報210に等しい事例ID情報110を有する、作業内容テーブル11の一または複数のレコードを抽出する。そして、抽出したレコードの原文章情報113に、対応するレコード21R1,21R2,…における対象機種情報213が含まれていれば、当該レコードにおけるノード種類情報115を「事象」に設定する。
【0079】
(S3108:全レコードが処理済?)
図14に戻り、次に処理がステップS3108に進むと、作業内容抽出部31は、作業文書テーブル21における全てのレコード21R1,21R2,…について、ステップS3104,S3106の処理を実行したか否かを判定する。ここで「No」と判定されると、処理はステップS3104に戻り、作業内容抽出部31は、作業文書テーブル21における何れかの未処理のレコードについて、ステップS3104,S3106の処理を繰り返す。一方、ここで「Yes」と判定されると、処理はステップS3110に進む。
【0080】
(S3110:ノードID情報、上位ノードID情報の設定)
(1) ステップS3110において、作業内容抽出部31は、以下に述べる手順によって、作業内容テーブル11の各レコードに対して、ノードID情報116を付与する。
・最初に発生したレコード11R1のノードID情報116を「1」とする。
・2番目以降に新たに発生したレコードについては、当該レコードのキーワード情報112(キーワード情報112に列挙された単語の組)と、過去に発生した他のレコードのキーワード情報112と、が所定の「同一・類似関係」を充足するか否かを判定する。
・判定結果が肯定であった場合、新たに発生したレコードのノードID情報116は、「同一・類似関係」を充足する他のレコードと共通の値にする。
【0081】
・判定結果が否定であった場合、新たに発生したレコードには、新たなノードID情報116を付与する。ここで、「同一・類似関係」に関しては、例えば「Word2Vec」等の公知の手法を適用して類似度を算出することによって判定できる。すなわち、算出した類似度が所定の閾値以上であれば「同一・類似関係」を充足すると判定し、それ以外の場合は「同一・類似関係」を充足しないと判定するとよい。
【0082】
(2)また、ステップS3110において、作業内容抽出部31は、作業内容テーブル11の各レコードのうち、上述した「上位ノード番号」を有するレコードについて、上位ノードID情報114を設定する。
すなわち、作業内容抽出部31は、あるレコード11Rp(図示せず)の「上位ノード番号」に対応するレコードが「レコード11Rq(図示せず)」である場合、レコード11RqのノードID情報116を、レコード11Rpの上位ノードID情報114に書き込む。
【0083】
図15は、作業条件抽出部32において実行される作業条件抽出処理ルーチンのフローチャートである。
(S3202:データ取得、行列初期化)
図15において、処理がステップS3102に進むと、データ取得処理が実行される。すなわち、作業条件抽出部32は、作業内容テーブル11(図2参照)を取得する。また、空行列である3つの行列MTA,MTB,MTC(図示せず)を生成する。
【0084】
(S3204:ID抽出)
次に、処理がステップS3204に進むと、作業条件抽出部32は、ID抽出処理を行う。この内容は以下の通りである。
(1)作業条件抽出部32は、作業内容テーブル11(図2参照)に含まれる複数の事例ID情報110の中から、後述するステップS3206の処理を行っていない一つの事例ID情報110を取得する。取得した事例ID情報110を、「指示ID情報110a」(図示せず)と呼ぶ。
【0085】
(2)指示ID情報110aのうち、対応するノード種類情報115が、「事象」、「点検」、「修理」、「要素」である全てのノードID情報116を取得する。「事象」、「点検」、「修理」、「要素」について取得したノードID情報116を、それぞれ事象ID情報116J、点検ID情報116T、修理ID情報116S、および要素ID情報116Yと呼ぶ(何れも図示せず)。
【0086】
(S3206:行列追加)
次に、処理がステップS3206に進むと、作業条件抽出部32は、行列追加処理を行う。この内容は以下の通りである。
(1)全ての点検ID情報116Tを、行列MTAの「行」として追加し、全ての事象ID情報116Jを行列MTAの「列」として追加し、行列MTAの全要素を「0」で初期化する。
【0087】
(2)全ての修理ID情報116Sを、行列MTBの「行」として追加し、「これらの修理ID情報116Sの上位ノードID情報114と、事象ID情報116Jと、の組合せ」の全てを、行列MTBの「列」として追加する。そして、行列MTBの全要素を「0」で初期化する。
【0088】
(3)全ての要素ID情報116Yを、行列MTCの「行」として追加し、「これらの要素ID情報116Yの上位ノードID情報114と、事象ID情報116Jと、の組合せ」の全てを、行列MTCの「列」として追加する。そして、行列MTCの全要素を「0」で初期化する。
【0089】
(S3208:全事例が処理済?)
次に処理がステップS3208に進むと、作業条件抽出部32は、作業内容テーブル11(図2参照)における全ての事例ID情報110が、上述した指示ID情報110aとして選択されたか否かを判定する。ここで「No」と判定されると、処理はステップS3204に戻り、作業条件抽出部32は、作業内容テーブル11における何れかの未処理の事例ID情報110について、ステップS3204,S3206の処理を繰り返す。一方、ここで「Yes」と判定されると、処理はステップS3210に進む。
【0090】
(S3210:重複する行および列を削除)
ステップS3210において、作業条件抽出部32は、上述した行列MTA,MTB,MTCにおいて、重複する「行」および重複する「列」を削除する。
【0091】
(S3212:ID再抽出処理)
次に、処理がステップS3212に進むと、作業条件抽出部32は、ID再抽出処理を行う。この内容は以下の通りである。
(1)作業条件抽出部32は、作業内容テーブル11(図2参照)に含まれる事例ID情報110の中から、後述するステップS3214の処理を行っていない一の事例ID情報110を取得する。取得した事例ID情報110を「指示ID情報110b」(図示せず)と呼ぶ。
【0092】
指示ID情報110bに対応するノードID情報116のうち、対応するノード種類情報115が、「事象」、「点検」、「修理」、「要素」である全てのノードID情報116を取得する。上述したステップS3204と同様に、「事象」、「点検」、「修理」、「要素」について取得したノードID情報116を、それぞれ事象ID情報116J、点検ID情報116T、修理ID情報116S、および要素ID情報116Yと呼ぶ(何れも図示せず)。
【0093】
(S3214:行列編集処理)
次に、処理がステップS3214に進むと、作業条件抽出部32は、行列編集処理を行う。その内容は以下の通りである。
(1)指示ID情報110bに対応する点検ID情報116Tと事象ID情報116Jと、を取得し、上述した行列MTAのうち、該点検ID情報116Tおよび事象ID情報116Jに対応する要素に「1」を加算する。
【0094】
(2)指示ID情報110bに対応する修理ID情報116Sと、「この修理ID情報116Sの上位ノードID情報114と、事象ID情報116Jと、の組合せ」と、を取得する。そして、上述した行列MTBのうち、該修理ID情報116Sと、「該修理ID情報116Sの上位ノードID情報114と、事象ID情報116Jと、の組合せ」と、に対応する要素に「1」を加算する。
【0095】
(3)指示ID情報110bに対応する要素ID情報116Yと、「この要素ID情報116Yの上位ノードID情報114と、事象ID情報116Jと、の組合せ」と、を取得する。そして、上述した行列MTCのうち、該要素ID情報116Yと、「該要素ID情報116Yの上位ノードID情報114と、事象ID情報116Jと、の組合せ」と、に対応する要素に「1」を加算する。
【0096】
(S3216:全事例が処理済?)
次に処理がステップS3216に進むと、作業条件抽出部32は、作業内容テーブル11(図2参照)における全ての事例ID情報110が、上述した指示ID情報110bとして選択されたか否かを判定する。ここで「No」と判定されると、処理はステップS3212に戻り、作業条件抽出部32は、作業内容テーブル11における何れかの未処理のノードID情報116について、ステップS3212,S3214の処理を繰り返す。一方、ここで「Yes」と判定されると、処理はステップS3218に進む。
【0097】
(S3218:未処理の行列を選択)
次に、処理がステップS3218に進むと、作業条件抽出部32は、行列MTA,MTB,MTCの中から、後述するステップS3220,S3222の処理が未処理である一つの行列を選択する。選択した行列を、選択行列MTX(図示せず)と呼ぶ。
【0098】
(S3220:未処理の行を選択)
次に、処理がステップS3220に進むと、作業条件抽出部32は、選択行列MTXの中から、後述するステップS3222の処理が未処理である1つの「行」を選択する。選択した「行」を、選択行MTX-L(図示せず)と呼ぶ。
【0099】
(S3222:選択行対応処理)
次に、処理がステップS3222に進むと、作業条件抽出部32は、選択行対応処理を実行する。その内容は、以下の通りである。
(1)選択行MTX-Lに含まれる要素に基づいて、閾値Th(図示せず)を決定する。ここで、閾値Thは、例えば、選択行MTX-Lに含まれる要素の中央値とすることができる。
(2)選択行MTX-Lに含まれる要素のうち、閾値Thを超える要素を抽出し、抽出した要素を含む、選択行列MTXの一または複数の列を取得する。取得した列を取得列MTX-Cと呼ぶ。
【0100】
(3)作業条件抽出部32は、作業条件テーブル12(図3参照)に対して、新たなレコードを追加し、そのノードID情報120として、ユニークな情報を書き込む。なお、追加したレコードを追加レコード12Ra(図示せず)と呼ぶ。
(4)作業条件抽出部32は、追加レコード12Raの内容を以下のように設定する。
・選択行MTX-Lに対応するノードID情報116(図2参照)を、追加レコード12RaのtoID情報122に書き込む。
・取得列MTX-Cに対応する一または複数のノードID情報116を、追加レコード12RaのfromID情報121に書き込む。
【0101】
(S3224:全ての行が処理済?)
次に処理がステップS3224に進むと、作業条件抽出部32は、選択行列MTXにおける全ての行が選択行MTX-Lとして選択されたか否かを判定する。ここで「No」と判定されると、処理はステップS3220に戻り、作業条件抽出部32は、選択行列MTXにおける何れかの未処理の「行」について、ステップS3220,S3222の処理を繰り返す。一方、ここで「Yes」と判定されると、処理はステップS3226に進む。
【0102】
(S3226:全ての行列が処理済?)
次に処理がステップS3226に進むと、作業条件抽出部32は、行列MTA,MTB,MTCの全てが選択行列MTXとして選択されたか否かを判定する。ここで「No」と判定されると、処理はステップS3218に戻り、作業条件抽出部32は、何れかの未処理の行列について、について、ステップS3218~S3222の処理を繰り返す。一方、ここで「Yes」と判定されると、本ルーチンの処理は終了する。
【0103】
以上の処理により、作業条件抽出部32は、作業内容テーブル11において「点検」、「修理」または「要素」に係るレコードを抽出する。そして、作業条件抽出部32は、抽出したレコードに係る作業内容が、どの事象が発生した場合に行われているかを作業条件として推定し、作業条件テーブル12に格納することができる。
【0104】
一般的に、保守対象設備300に対する作業条件は、考慮すべき事象の組合せが膨大であるために、その推定はデータ数が十分に存在しない場合は困難である。これに対して、上述した作業条件抽出処理ルーチンは、作業内容テーブル11の上位ノードID情報114を参照して、考慮すべき組合せを限定することで推定を容易化できる。
【0105】
上述した処理では、作業内容テーブル11の事例ID情報110毎に作業条件テーブル12のfromID情報121になりうるノードID情報116の組合せの候補を列挙した行列を初期化する処理から開始する。その生成に際し、作業条件に次の仮定AS1,AS2,AS3を導入する。
【0106】
・仮定AS1:作業条件テーブル12のtoID情報122に対応するノードについて、当該ノードのノード種類情報115が「点検」である場合は、fromID情報121はノード種類情報115が「事象」であるノードになる。
・仮定AS2:作業条件テーブル12のtoID情報122の対応するノードについて、当該ノードのノード種類情報115が「修理」である場合は、fromID情報121は、「その上位ノードID情報114とノード種類情報115が事象であるノードの組合せ」になる。
・仮定AS3:作業条件テーブル12のtoID情報122に対応するノードについて、当該ノードのノード種類情報115が「要素」である場合は、fromID情報121は「その上位ノードID情報114とノード種類情報115が事象であるノードの組合せ」になる。
【0107】
上述した処理では、この仮定に従い、それぞれのfromID情報121になり得る「ノードID情報116の組合せの候補」を列とし、toID情報122を行とする行列MTA,MTB,MTCの全要素を「0」に初期化する。また、それぞれの行または列の重複は取り除く。このようにして初期化した行列を、それぞれの仮定と対応するように、行列MTA,MTB,MTCを構成する。これにより、行列MTCは、例えば図9に示したような内容になる。
【0108】
ここで、作業要素として「点検」の結果等を想定したとき、上述した仮定AS2を、例えば以下の仮定AS2’のように、適宜変更してもよい。
・仮定AS2’:作業条件テーブル12のtoID情報122の対応するノードについて、当該ノードのノード種類情報115が「修理」である場合は、「その上位ノードID情報114とノード種類情報115が事象または作業要素であるノードの組合せ」になる。
【0109】
次に、それぞれの行列MTA,MTB,MTCに対して、作業内容テーブル11の事例ID情報110毎に、該当の行と列にあたる組合せをノードID情報116に含むか否かを照合し、含む場合は、行列の要素値に「1」を加算する。このようにして集計した要素値、すなわち各行と列の組合せの発生頻度に対して、行毎に中央値などの適当な閾値Thを定め、その閾値Th以上である行と列の組合せを、それぞれtoID情報122とfromID情報121として作業条件テーブル12に格納する。
【0110】
上述した図9において、例えば閾値Thを「2」とすると、toID情報122が「3」でfromID情報121が「2」である作業条件と、toID情報122が「5」でfromID情報121が「4」である作業条件と、toID情報122が「5」でfromID情報121が「4」と「8」である作業条件と、が得られる。但し、図9に示した例は、上述した作業内容記録文章#1,#2とは特に関係していない。
【0111】
〈作業知識提案部40〉
図1に戻り、作業知識提案部40は、提案表示部71においてユーザ80が作業提案を要求した際に、作業条件テーブル12を取得して必要な作業内容を検索する。そして、作業知識提案部40は、その検索結果に従って、作業内容テーブル11に記録された何れかの作業内容をユーザ80は提案する。さらに、作業知識提案部40は、ユーザ80に対して、能動的に知識を拡充するための確認を実行する判断を行う。
【0112】
信頼度算出部41は、信頼度テーブル13(図4参照)を取得し、作業条件テーブル12のノードID情報120毎に、その作業条件の内容がユーザ80、すなわち作業計画者各人の暗黙知と相違ない割合として信頼度を算出する。そして、算出した信頼度を、作業条件テーブル12(図3参照)の信頼度情報124に格納する。また、信頼度算出部41は、信頼度の算出課程において、各作業計画者の判断に重みをつけるために、作業計画者テーブル14などを取得する。
【0113】
図16は、信頼度算出部41において実行される信頼度算出ルーチンのフローチャートである。
(S4102:データ取得)
図16において、処理がステップS4102に進むと、データ取得処理が実行される。すなわち、信頼度算出部41は、信頼度テーブル13(図4参照)の内容を取得する。
【0114】
(S4104:計画者対応処理)
次に、処理がステップS4104に進むと、信頼度算出部41は計画者対応処理を実行する。その内容は以下の通りである。
(1)信頼度テーブル13において、状況情報133が“提案”以外であるレコードを取得する。
(2)取得した“提案”以外のレコードのうち、判定情報134が“保留”以外である割合を、計画者ID情報132毎に算出する。そして、算出した割合を、各計画者IDの「KM貢献度」と呼ぶ。なお、KM貢献度は、作業計画者テーブル14(図5参照)に書き込んでもよい。
【0115】
(3)作業履歴テーブル22(図8参照)の各レコードについて、計画作業情報224が有効作業情報225に含まれる割合である有効作業割合を算出する。
(4)そして、計画者ID情報221毎に、有効作業割合の平均値を求め、その結果を、作業計画者テーブル14の、当該計画者IDに対応する「計画有効率」と呼ぶ。
【0116】
(S4106:レコード取得)
次に、処理がステップS4106に進むと、信頼度算出部41は、レコード取得処理を実行する。すなわち、作業条件テーブル12(図3参照)から、ステップS4108の処理が未実行である一つのレコードを取得する。取得したレコードを、以下、処理対象レコード12Rp(図示せず)と呼ぶ。
【0117】
(S4108:信頼度算出)
次に、処理がステップS4108に進むと、信頼度算出部41は信頼度算出処理を実行する。その内容は以下の通りである。
(1)信頼度テーブル13(図4参照)の各レコードの中から、処理対象レコード12RpにおけるノードID情報120と、同一のノードID情報130を有する全てのレコードを取得する。
【0118】
(2)取得した信頼度テーブル13のレコードを計画者ID情報132毎に分類し、計画者ID情報132毎に、入力日情報131が最新であるレコードを特定する。特定したレコードのノードID情報130を、計画者対応識別番号Cq(図示せず)と呼ぶ。従って、計画者対応識別番号Cqは、対応する計画者IDの数だけ存在する。図4の例において、計画者対応識別番号Cqは、「C1」~「C12」のうち何れかになる。
【0119】
(3)作業条件テーブル12(図3参照)に示したように、計画者対応識別番号Cq(例えばC1~C12の何れか)は、fromID情報121およびtoID情報122に対応付けられている。そこで、計画者対応識別番号Cqに対応する作業内容テーブル11(図2参照)のキーワード情報112を取得する。取得したキーワード情報112には、作業単語テーブル15の単語情報150の何れかが含まれている。そこで、キーワード情報112に含まれる単語情報150に対応する分類情報153を取得する。次に、取得した分類情報153と、対応する計画者IDに対応する得意分野情報142(図5参照)と、が一致する割合を算出する。算出した割合を、該計画者IDに対応する「分野適正度」と呼ぶ。
【0120】
(4)当該計画者IDに対応するKM貢献度と、計画有効率と、分野適正度と、を任意の数式により合算し、その結果を各計画者ID情報140の「重み」とする。
(5)各計画者IDについて、判定情報134(図4参照)が“肯定”である割合を、「重み」によって重み付け演算し、演算結果を、上述した計画者対応識別番号Cqに対応するレコードの信頼度情報124として、作業条件テーブル12に書き込む。
【0121】
(6)各計画者IDについて、判定情報134(図4参照)が“否定”である割合を、「重み」によって重み付け演算する。この演算結果が所定の閾値以上である場合には、作業条件テーブル12(図3参照)のうち計画者対応識別番号Cqに対応するレコードの信頼度情報124を「0(廃止)」に設定する。
【0122】
(S4110:全レコードを処理済?)
次に、処理がステップS4110に進むと、信頼度算出部41は、作業条件テーブル12(図3参照)の全てのレコードについて、ステップS4108の処理が実行されたか否かを判定する。ここで「No」と判定されると、処理はステップS4106に戻り、信頼度算出部41は、何れかの未処理のレコードについて、ステップS4106,S4108の処理を繰り返す。一方、ここで「Yes」と判定されると、本ルーチンの処理は終了する。
【0123】
このように、本ルーチンによれば、KM貢献度と、計画有効率と、分野適正度と、に基づいて各ユーザ80の「重み」を求めることができる。これらのうち、KM貢献度と計画有効率と、は作業計画者であるユーザ80毎に算出し、「分野適正度」は、作業条件とユーザ80との組合せ毎に算出するとよい。KM貢献度は、ユーザ80が、そのITスキルや忙しさ、ナレッジマネジメントに対する姿勢などにばらつきがある中で、計算されたものである。すなわち、KM貢献度は、本実施形態によるシステムが依頼する知識確認に対して、回答を保留することなく入力している割合の高さを示す。
【0124】
すなわち、KM貢献度が高いユーザに対して知識の確認を表示した場合に、有効回答を得られる可能性が高いことを示す。図16の処理では、ユーザに対してナレッジマネジメント的な思考や操作を特別求めないとものとみなして、状況情報133が“提案”であるレコードは除外したが、これをKM貢献度の算出に含めてもよい。
【0125】
計画有効率は、作業計画者であるユーザ80が作業計画において事前に必要である判断した作業が、実際の作業を進めるうえでも必要であった割合を示す。これは作業計画者の実践的な作業知識の確かさを示す指標である。分野適正度は、作業計画者の得意とする専門分野が、各作業条件の関係する専門分野と一致している割合を示す。
【0126】
各作業条件の関係する専門分野は、作業条件テーブルのfromID情報121およびtoID情報122のノードIDを作業内容テーブル11から参照し、そのキーワード情報112に含まれる作業単語テーブル15の単語情報150に付与された分類情報153を全て抽出し作業条件テーブル12の分野コードに格納して用いる。これは作業計画者の理論的な作業知識の確かさを示す指標である。
【0127】
作業計画者の「重み」は、一例としてKM貢献度と計画有効率と分野適正度との平均値を用いることができる。作業条件の信頼度を算出する際には、まず全ての作業計画者の誰が肯定しているかを信頼度テーブル13から取得した後、以下の[数1]により算出し信頼度情報124に格納する。但し、関数Iはxの条件を満たす場合はI(x)=1であり、xの条件を満たさない場合はI(x)=0である。Rは作業条件の信頼度である。Uは「作業計画者」であり、Uqtyは「作業計画者の総数」である。JUは、当該作業計画者についての判定結果であり、「JU=True」は、該判定結果が肯定であるとの条件を表す。WUは、当該作業計画者についての「重み」である。
【0128】
【数1】
【0129】
また、多数の作業計画者が否定している作業条件は、本システムによる作業提案の対象から除外したほうが好ましい。そのため、判定が否定である場合も、[数1]と同様に信頼度を算出し、その値が例えば「0.2」などの閾値以上である場合には信頼度情報124に廃止フラグを付与するとよい。以上のように、信頼度算出部41および変更確認部73は、ユーザから受け付けた回答が肯定以外であった作業条件を、作業条件検索部42において提案する頻度が低下するように、信頼度情報124を更新することができる。
【0130】
図17は、作業条件検索部42において実行される作業条件検索ルーチンのフローチャートである。
作業条件検索部42は、このルーチンにより、作業条件テーブル12(図3参照)を取得し、提案表示部71においてユーザ80が入力した発生事象によってfromID情報121のノードを満たす作業条件を検索し、そのtoID情報122のノードをユーザに提案する。
【0131】
(S4202:データ入力)
図17において、処理がステップS4202に進むと、作業条件検索部42はデータ入力処理を実行する。すなわち、作業条件検索部42は、ユーザ80からの入力によって、発生事象情報を取得する。ここで、発生事象情報とは、保守対象設備300において、エラーが発生した機種名、およびエラーコード等、ノード種類情報115(図2参照)が“事象”である、一または複数のキーワード情報112が含まれる情報である。作業条件検索部42は、これら“事象”であるキーワード情報112に対応する、一または複数のノードID情報116を取得する。以下、取得したノードID情報116を、「クエリID」と呼ぶ。
【0132】
(S4204:作業条件取得)
次に、処理がステップS4204に進むと、作業条件検索部42は、作業条件取得処理を実行する。その内容は以下の通りである。
(1)空集合である「提案作業リスト」を作成する。
(2)作業条件テーブル12(図3参照)の中から、信頼度情報124が所定値以上であるレコードを全て取得する。取得したレコードのノードID情報120の集合を、「取得ノードIDリスト」と呼ぶ。このように、信頼度情報124が所定値以上であるレコードを全て取得することにより、
【0133】
(S4206:提案作業検索)
次に、処理がステップS4204に進むと、作業条件検索部42は、提案作業検索処理を実行する。その内容は以下の通りである。
(1)取得ノードIDリストに含まれ、下記(2)の処理を行っていない一つのノードID情報120を選択する。
(2)選択したノードID情報120について、「対応するfromID情報121が、クエリIDまたは提案作業リストに含まれる」という条件を充足する場合、当該ノードID情報120に対応するtoID情報122を、一つの要素として、提案作業リストに追加する。また、当該ノードID情報120を、当該要素に対応する「作業条件」とする。
【0134】
(S4208:全てのノードIDリストを処理済?)
次に、処理がステップS4208に進むと、作業条件検索部42は、取得ノードIDリストに含まれる全てのノードID情報120に対して、上述のステップS4206の処理を行ったか否かを判定する。ここで「No」と判定されると、処理はステップS4206に戻る。一方、「Yes」と判定されると、処理はステップS4210に進む。
【0135】
(S4210:作業提案)
次に、処理がステップS4210に進むと、作業条件検索部42は作業提案処理を行う。すなわち、作業条件検索部42は、提案表示部71(図1参照)を介して、提案作業リストの内容をユーザ80に提示する。
【0136】
以上の処理に関連して、作業条件検索部42は、作業条件テーブル12を取得し、その中から一部の作業条件を抽出し、反実仮想確認部72を用いて、ユーザ80にその作業条件の判定情報134の入力を依頼することができる。上述した信頼度算出部41による信頼度の算出を精度よく行うためには多数の作業計画者による作業条件の判定を得ることが好ましい。さらに、発生頻度の少ない事象と関連する作業条件に関する判定の蓄積を加速することも好ましい。
【0137】
図18は、作業条件試験部43において実行される作業条件試験ルーチンのフローチャートである。
(S4302:データ入力)
図18において、処理がステップS4302に進むと、作業条件試験部43はデータ入力処理を実行する。すなわち、作業条件試験部43は、ユーザ80からの入力によって、発生事象情報を取得する。ここで、発生事象情報とは、ステップS4202(図17参照)において説明したものと同様である。そして、ステップS4202の処理と同様に、発生事象情報に対応する、一または複数のノードID情報116を「クエリID」して取得する。
【0138】
(S4304:判定割合算出)
次に、処理がステップS4304に進むと、作業条件試験部43は、判定割合算出処理を実行する。その内容は以下の通りである。
(1)提案表示部71(図1参照)にて表示した(作業条件検索部42によって作成された)提案作業リストを取得する。また、空集合の「試験候補リスト」を作成する。
(2)作業条件テーブル12(図3参照)の各レコードにおけるfromID情報121の内容と、クエリIDとを比較し、一部が一致するが全ては一致しない行のノードIDを試験候補リストに追加する。なお、試験候補リストの各要素を「試験候補ID」と呼ぶ。提案作業リストの各要素を「提案ID」と呼ぶ。
【0139】
(3)作業条件テーブル12(図3参照)のtoID情報122と、何れかの提案IDと、が一致するレコードのノードID情報120を、新たな試験候補IDとして、試験候補リストに追加する。
(4)各試験候補IDと、信頼度テーブル13(図4参照)の中の対応する判定情報134の列を取得し、計画者ID情報132毎に、“肯定”、“否定”の判定情報134の割合を算出する。
【0140】
(S4306:信頼度テーブル更新)
次に、処理がステップS4304に進むと、作業条件試験部43は、信頼度テーブル更新処理を実行する。その内容は以下の通りである。
(1)作業条件テーブル12(図3参照)において、各試験候補IDに対応するfromID情報121を含むレコードを検索する。検索したレコードのノードID情報120を、検索対象ノードIDと呼ぶ。
【0141】
作業履歴テーブル22(図8参照)において、発生事象情報223の中に検索対象ノードIDを含むレコードの、指示ID列(計画作業情報224の内容)を取得する。検索対象ノードIDに対応する全ての指示ID列を作業履歴テーブル22から取得し、これら指示ID列において、検索対象ノードIDが出現する割合の平均値(割合平均値)を算出する。
【0142】
(2)信頼度算出部41と同様の処理により、ユーザ80の「重み」を算出する。
(3)算出した割合平均値と、「重み」とを試験候補ID毎に合算する。この合算結果が所定の上位範囲に属し、かつ、所定の閾値以上である試験候補IDを抽出する。抽出した試験候補IDの作業条件(作業条件テーブル12(図3参照)の内容)を、反実仮想確認部72によって確認する。
(4)ユーザ80が、作業条件を肯定、否定、または保留にした結果を信頼度テーブル13(図4参照)の判定情報134に書き込む。
【0143】
図18の処理において抽出する作業条件は、「ユーザ80が提案表示部71において入力した事象または、作業条件検索部42の処理によって提案された作業内容」が、それぞれfromID情報121の一部またはtoID情報122に該当する作業条件を対象とする。抽出した作業条件は、提案表示部71において対象としている事例には該当しないが、それと類似する事例において該当することを示す。その類似事例において、抽出した作業条件のfromID情報121を仮に満たした場合にはtoID情報122の作業内容が必要であるかユーザ80に確認することを、本実施形態において反実仮想推薦と呼ぶ。
【0144】
抽出した作業条件の中から、反実仮想推薦を実行する作業条件の優先順位を算出する必要がある。具体的には、信頼度の判定が不足しており、fromID情報121の事象の発生頻度が少なく、かつユーザ80から有効な判定を得られる可能性が高い作業条件を優先する。信頼度の判定の不足の判定のため、信頼度テーブル13において判定情報134に肯定または否定が格納されている計画者IDの割合をノードID毎に算出する。
【0145】
また、事象の発生頻度について、その少なさの判定のため、fromID情報121の各事象が作業履歴テーブル22の発生事象情報223に含まれる割合の平均値を算出する。そして、有効な判定を得られる可能性は、信頼度算出部41における作業計画者の重みに基づいて算出する。例えば下記[数2]により、各作業条件の優先度pを算出できる。[数2]において、a,b,cは重みである。αは「信頼度の判定の不足」の度合いを表し、βは「事象の発生頻度の少なさ」の度合いを表し、γは「有効な判定が得られる可能性」の度合いを表す。
【0146】
【数2】
【0147】
上式により算出した、優先度pが高い候補の上位数件であって、かつ優先度pが閾値を超えている作業条件を反実仮想確認部72において確認することができる。従って、作業条件試験部43は、反実仮想確認部72による確認において、ユーザ80が当該候補の肯定、否定、保留を行った場合に、その結果を判定情報134として信頼度テーブル13に格納する。
【0148】
作業条件推定部44は提案表示部71においてユーザ80が入力した作業内容に対する変更前および変更後の作業内容をtoIDに持つ作業条件として尤もらしいものを推定し、変更確認部73によるユーザ80の確認を経て作業条件テーブル12に格納する。本処理は、本システムの既存の知識における誤りを、ユーザ80の最小限の判断を参考にしながら訂正するために設けることが好ましい。本処理は、提案表示部71においてユーザ80に提案した作業内容に対して、ユーザ80が変更を行った場合に都度実行するとよい。
【0149】
ユーザ80が行える変更としては、作業内容の追加、修正、削除を想定する。追加および修正の変更では、新規作業内容として、作業内容テーブル11の既存のノードID情報116または、新規の原文章情報113を受け付ける。後者の新規の原文章情報113が入力された場合は、作業内容抽出部31の処理によって作業内容テーブル11に新たな行を追加し、そのノードIDを取得する。修正および削除の変更では、変更前の作業内容として既存のノードIDを受け付ける。追加の変更では変更後のノードIDを処理し、削除の変更では変更前のノードIDを処理し、修正の変更では変更前と変更後のノードIDを処理する。
【0150】
図19は、作業条件推定部44において実行される作業条件推定ルーチンのフローチャートである。
(S4402:データ入力)
図19において、処理がステップS4402に進むと、作業条件推定部44は、データ入力処理を実行する。
すなわち、作業条件推定部44は、提案表示部71においてユーザ80が入力した発生事象情報に基づいて、クエリIDを取得する。この処理は、上述したステップS4202(図17参照)のものと同様である。また、作業条件推定部44は、提案表示部71において、ユーザ80が変更した、変更後の作業または作業要素のIDを変更IDとして取得する。
【0151】
(S4404:注目作業テーブル更新)
次に、処理がステップS4404に進むと、作業条件推定部44は、以下列挙する内容による、注目作業テーブル更新処理を実行する。
(1)作業条件テーブル12(図3参照)のtoID情報122が変更IDであるレコードを特定する。そして、特定したレコードにおける、fromID情報121に含まれるノードIDの数をそれぞれ取得する。そして、取得した「ノードIDの数」の中央値を「推論事象数」として取得する。
【0152】
(2)推論事象数だけクエリIDを取った、全ての組合せを列挙する。列挙した組合せの集合を、「組合せ集合」と呼ぶ。
(3)(2)にて列挙した、クエリIDの組合せのうち、作業条件テーブル12(図3参照)において、信頼度情報124が“廃止”である全てのレコードのfromID情報121を取得する。取得したfromID情報121に列挙されたノードIDの組合せと、同一の組合せを、組合せ集合から除外する。
【0153】
(4)組合せ集合に含まれる何れかの組合せについて、当該組合せに含まれる全ての要素を、発生事象情報223(図8参照)として含む作業履歴テーブル22のレコードを抽出する。
(5)(4)によって抽出されたレコードにおける発生事象情報223の集合を「発生事象列」とし、事例ID情報220の集合を「事例ID列」とし、有効作業情報225の集合を「有効作業列」とする。ステップS4402で求めた変更IDが、有効作業列の各々の要素に含まれるか否かを判定する。この判定結果の集合を、「作業有無列」と呼ぶ。
【0154】
そして、(4)において抽出されたレコード数と等しい数のレコードを注目作業テーブル24(図10参照)に追加する。そして、これらレコードにおける発生事象情報240、事例ID情報241、および作業有無情報242として、発生事象列、事例ID列、および有効作業列の内容を書き込む。
【0155】
(6)注目作業テーブル24に、クエリIDの数に等しいレコードを追加する。これらレコードの発生事象情報240には、これらクエリIDを書き込み、作業有無情報242には、全て「あり」を書き込む。
【0156】
(S4406:未処理の作業条件候補を選択)
次に、処理がステップS4406に進むと、作業条件推定部44は、作業条件テーブル12(図3参照)のレコードのうち、後述するステップS4408の処理を行っていない一つのレコードを選択する。選択したレコードを作業条件候補と呼ぶ。
【0157】
(S4408:割合算出)
次に、処理がステップS4408に進むと、作業条件推定部44は、作業条件候補について、「注目作業テーブル24(図10参照)の発生事象情報240の条件を満たす場合」に「作業有無情報242が“あり”」である割合を算出する。
【0158】
(S4410:全ての作業条件候補を処理済?)
次に処理がステップS4410に進むと、作業条件推定部44は、作業条件テーブル12の全てのレコードを作業条件候補として処理したか否かを判定する。ここで「No」と判定されると、処理はステップS4406に戻る。一方、「Yes」と判定されると、処理はステップS4412に進む。
【0159】
(S4412:割合が最大である作業条件候補を表示)
次に、処理がステップS4412に進むと、作業条件推定部44は、ステップS4408で算出した「割合」が最大である作業条件候補を、変更確認部73に表示させる。ユーザ80は、変更確認部73の表示内容を確認した上で、“肯定”、“否定”、“保留”のうち何れかの指令情報を入力する。
【0160】
(S4422:判定情報の設定)
次に、処理がステップS4414に進むと、作業条件推定部44は、入力された指令情報に応じて、信頼度テーブル13(図4参照)の、作業条件候補に係るレコードの判定情報134を設定する。すなわち、入力された指令情報が“肯定”でれば、当該判定情報134に“肯定”を書き込み、指令情報が“否定”でれば、当該判定情報134に“否定”を書き込み、指令情報が“保留”でれば、当該判定情報134に“保留”を書き込む。
【0161】
(S4424:修正・削除の変更操作あり?)
次に、処理がステップS4424に進むと、作業条件推定部44は、ユーザ80によって修正または削除の変更操作が行われたか否かを判定する。ここで「Yes」と判定されると、処理はステップS4426に進む。一方、「No」と判定されると、ステップS4426はスキップされる。
【0162】
(S4426:変更前の作業条件を否定に設定)
ステップS4426において、作業条件推定部44は、ユーザ80によって修正または削除される前の作業条件について、信頼度テーブル13(図4参照)の判定情報134に“否定”を書き込む。
【0163】
(S4428:変更対応処理が必要?)
次に、処理がステップS4428に進むと、作業条件推定部44は、追加処理が必要であるか否かを判定する。すなわち、作業条件テーブル12(図3参照)のtoID情報122が変更前の作業であるレコード(以下、要変更レコードと呼ぶ)が存在するか否かを判定する。ステップS4428において「No」と判定されると、本ルーチンの処理は終了する。
【0164】
(S4430:クエリID、変更IDの再設定)
一方、ステップS4428において「Yes」と判定されると、処理はステップS4430に進む。ここでは、作業条件推定部44は、要変更レコードのfromID情報121を上述したクエリIDに設定し、変更前の作業または作業要素のIDを変更IDに設定する。次に、処理がステップS4404に戻る。これにより、作業条件推定部44は、新たなクエリIDと、新たな変更IDと、に基づいて、ステップS4404~S4428の処理を繰り返す。
【0165】
このように、図19の処理によれば、
作業条件推定部44は、変更を受け付けた時、提案表示部71においてユーザ80が入力した発生事象のノードIDと、変更前または変更後の作業内容のノードIDを変更IDとして取得する。ここで変更IDを作業条件テーブル12のtoID情報122上で検索し、該当する行のfromIDのノード種類が事象であるノードが何件であるかの中央値などを算出する。そして、算出した値を本処理にて推定する新規作業条件の事象数とする。但し、後の処理において全ての作業条件の尤度が適当な閾値以下である場合は、事象数に位置を加算し処理をやり直してもよい。
【0166】
ここで決定した事象数の値だけ、前記入力した発生事象のノードIDから取る組合わせを列挙する。但し、変更IDが変更前のノードIDであるとき、組合わせを列挙する対象は、前記入力した発生事象のノードIDではない。すなわち、この場合、変更IDを作業条件テーブル12のtoID情報122上で検索して該当した行のfromID情報121を、組合わせを列挙する対象とする。また、列挙した組合せが作業条件テーブル12のfromID情報121と一致しており、かつ信頼度情報124が廃止フラグを含む場合には、その組合せを除外する。
【0167】
次に、列挙した組合せ毎に、作業履歴テーブル22の発生事象情報223に列挙した組合せの発生事象を全て含む事例ID情報220を取得する。そして、その事例ID毎に、変更IDを計画作業情報224に含むか否かを、注目作業テーブル24の作業有無情報242として集計する。そして、当該事例ID情報220の発生事象情報223を注目作業テーブル24に格納する。さらに、前記入力した発生事象のノードIDを発生事象情報240とし、変更IDが変更前であるとき作業有無情報242を「なし」とし、変更IDが変更後であるとき作業有無情報242を「あり」として、注目作業テーブル24に格納することができる。
【0168】
ここで、再び図10を参照し、その内容を説明する。
図10において、発生事象情報240に列挙されたノードIDが、入力した発生事象のノードIDと対応する。次に、列挙した発生事象の組合せ毎に、
A.当該発生事象の組合せ、または
B.「作業条件テーブル12にあるtoID情報122が変更IDである」レコードについて、fromID情報121の事象に係る組合せ
の何れかが注目作業テーブル24の発生事象情報240に含まれるとき、その作業有無情報242が「あり」である割合を算出する。
【0169】
そして、その割合が最大である、「列挙した発生事象の組合せ」を、変更確認部73において確認する。但し、変更IDのノード種類が「修理」または「要素」などの上位ノードIDを持つノードであった場合は、その上位ノードIDを、「列挙した発生事象の組合せ」に追加し、変更確認部73において確認する。
【0170】
変更確認部73の確認において、ユーザ80が列挙した発生事象の組合せを肯定した場合、判定情報134を肯定として信頼度テーブル13に格納する。または、これに代えて、ユーザ80が正しい作業条件を手動で入力した場合は、その作業条件を同様に信頼度テーブル13に格納する。また、ユーザ80が行った変更が作業内容の修正または削除の変更であった場合は、変更前の作業内容の推薦に用いた作業条件を、判定情報134を否定として信頼度テーブル13に格納する。
【0171】
図20図21は、提案表示部71の処理の流れを示す図である。
ユーザ80は、作業を実行しようとしている事例で発生した事象を事象入力部710に入力する(S7102、S7104)。
【0172】
この入力内容に基づいて、提案表示部71は、作業知識提案部40の作業条件検索部42の処理により、作業内容の提案を取得する(S7106、S7108)。そして、提案表示部71は、取得した提案内容を作業内容表示部711に表示する(S7110)。提案された作業内容に対して、ユーザ80は修正入力ボタン712、作業追加ボタン713、作業削除ボタン714をそれぞれ押下することで、作業内容の修正、追加、削除の変更を入力できる(S7112~S7120)。
【0173】
ここで作業内容の変更が確定されたとする(S7130)。提案表示部71は、作業条件推定部44の処理を実行し、変更確認部73に画面を遷移する(S7132~S7146)。また、作業条件検索部42の処理が完了したときや、ユーザ80が計画完了ボタン716を押下したときなど、任意のタイミングで作業条件試験部43の処理を実行し、反実仮想確認部72に画面を遷移する(S7112~S7120)。
【0174】
ユーザが作業内容表示部711の任意の作業内容を入力すると、その提案に用いた作業条件を作業条件テーブル12から参照して提案根拠表示部715に表示する(S7130~S7146)。ユーザ80が全ての作業内容を閲覧し適宜変更を行った後、計画完了ボタン716を押下することで、ユーザ80が選択した作業内容を信頼度テーブル13に格納し提案表示部71の処理は終了する(S7150)。
【0175】
図22は、コンピュータ980のブロック図である。
図1に示した作業知識記憶部10、作業履歴蓄積部20、作業知識初期化部30、作業知識提案部40および計画者端末70は、何れも図22に示すコンピュータ980を、1台または複数台備えている。図22において、コンピュータ980は、CPU981と、記憶部982と、通信I/F(インタフェース)983と、入出力I/F984と、メディアI/F985と、を備える。
【0176】
ここで、記憶部982は、RAM982aと、ROM982bと、HDD982cと、を備える。通信I/F983は、通信回路986に接続される。入出力I/F984は、入出力装置987に接続される。メディアI/F985は、記録媒体988からデータを読み書きする。ROM982bには、CPUによって実行されるIPL(Initial Program Loader)等が格納されている。HDD982cには、アプリケーションプログラムや各種データ等が記憶されている。CPU981は、HDD982cからRAM982aに読み込んだアプリケーションプログラム等を実行することにより、各種機能を実現する。
【0177】
先に図1に示した、作業知識記憶部10、作業履歴蓄積部20、作業知識初期化部30、作業知識提案部40および計画者端末70の内部は、主として、アプリケーションプログラム等によって実現される機能をブロックとして示したものである。
【0178】
[実施形態の効果]
以上のように上述の実施形態によれば、作業知識提案システム101は、保守対象設備300に作業(K10,121)を行う必要が生じた際に、必要な作業(K10,121)と、作業(K10,121)に係る部品または手順を含む作業要素(K2,122)と、を提案する作業知識提案システム101であって、作業(K10,121)と、作業要素(K2,122)と、作業(K10,121)および作業要素(K2,122)が必要になる条件である作業条件(12R1,12R2)と、を記憶する作業知識記憶部10に対してデータを入出力する機能と、何れかの発生事象情報223をユーザ80が入力すると、入力された発生事象情報223に対応する作業条件(12R1,12R2)と、作業条件(12R1,12R2)に対応して必要な作業(K10,121)と作業要素(K2,122)と、を検索する作業条件検索部42と、検索された作業条件(12R1,12R2)、作業(K10,121)および作業要素(K2,122)と、作業条件(12R1,12R2)に対応する信頼度情報124を表示し、ユーザからの作業(K10,121)または作業要素(K2,122)の追加、修正、または削除を含む変更を受け付ける提案表示部71と、変更を受け付けたときに変更前または変更後の作業(K10,121)と作業要素(K2,122)とに関する作業条件(12R1,12R2)の候補を、入力された発生事象情報223の組合せに基づいて検索し、表示する作業条件推定部44と、候補が正当か否かの回答をユーザ80から受け付け、回答が肯定であった作業条件(12R1,12R2)を作業知識記憶部10に追加する変更確認部73と、を備える。これにより、適切な保守知識をユーザに提供できる。例えば、作業(K10,121)や作業要素(K2,122)の提案や作業条件(12R1,12R2)の確認に対するユーザ80のアクションに応じて、作業条件(12R1,12R2)の信頼度情報124を更新できるため、適切な保守知識をユーザに提供できる。
【0179】
また、作業知識提案システム101は、作業条件(12R1,12R2)の信頼度情報124をさらに記憶する作業知識記憶部10に対してデータを入出力する機能を備え、変更確認部73は、回答が肯定以外であった作業条件(12R1,12R2)を、作業条件検索部42において提案する頻度が低下するように信頼度情報を更新すると一層好ましい。これにより、信頼性の低い作業条件(12R1,12R2)を提案する頻度を低下させることができる。
【0180】
また、作業知識提案システム101は、作業(K10,121)と、作業(K10,121)に係る発生日情報222と、作業(K10,121)または作業要素(K2,122)に対応する事象を表す発生事象情報223と、を含む履歴(22R1,22R2)を記憶する作業履歴蓄積部20に対してデータを入出力する機能をさらに備えると一層好ましい。これにより、作業履歴蓄積部20を適切に更新することができる。
【0181】
また、作業履歴蓄積部20は、実行した作業(K10,121)と作業要素(K2,122)とに関する履歴(22R1,22R2)と、発生事象情報223に係る事象が発生した履歴(22R1,22R2)と、を自然言語にて記録した作業内容情報214を蓄積するものであり、作業知識記憶部10は、作業内容情報214に現れ得るキーワードを示す単語情報150と、単語情報150の分類を定義した分類情報153と、を含む作業単語テーブル15を備え、作業内容情報214に対して作業単語テーブル15を用いて文章解析を行い、作業(K10,121)と、作業要素(K2,122)と、を抽出する作業内容抽出部31と、抽出した作業(K10,121)と、作業内容情報214における構造と、複数の履歴(22R1,22R2)における発生事象情報223と、作業(K10,121)と、の関係を分析して、作業条件(12R1,12R2)を推定する作業条件抽出部32と、を有することにより、作業知識記憶部10の内容を初期化する作業知識初期化部30をさらに備えると一層好ましい。
【0182】
これにより、作業知識記憶部10における知識を適切に初期化できるため、一層適切な保守知識をユーザに提供できる。
【0183】
また、作業履歴蓄積部20は、実行を計画した作業(K10,121)または作業要素(K2,122)のうち、実際に有効であったものを示す有効作業情報225を記録するものであり、作業知識記憶部10は、はユーザ80が専門とする作業分野を示す得意分野情報142を記録するものであり、作業条件(12R1,12R2)は、作業(K10,121)および作業要素(K2,122)に対応する分野を示す作業分野情報123を含むものであり、作業知識記憶部10は、作業条件(12R1,12R2)に従ってユーザ80に提案した作業の作業内容(130)、または、作業条件(12R1,12R2)の正当性をユーザ80に確認した結果を示す判定情報134を含む信頼度履歴情報(13R1,13R2)を蓄積するものであり、得意分野情報142と作業分野情報123とが一致する度合いと、ユーザ80に対する提案または確認に対して、ユーザ80が回答する頻度の高さの度合いと、に基づく重みをユーザ80に付与した上で、ユーザ80が肯定した割合が高い作業条件(12R1,12R2)ほど、高い信頼度情報124を付与する信頼度算出部41をさらに備え、提案表示部71は、提案に用いた作業条件(12R1,12R2)の信頼度情報124と、ユーザ80による作業履歴と、を表示する機能を備えると一層好ましい。これにより、ユーザ80に対する提案または確認に対して、ユーザ80が回答した結果に基づいて、信頼度算出部41が信頼度情報124を付与するため、一層適切な保守知識をユーザに提供できる。
【0184】
また、作業条件(12R1,12R2)は、関係する事象K4、作業(K10,121)または作業要素(K2,122)が作業履歴蓄積部20において発生または実行する頻度が少ない度合いに対応し、提案表示部71は、度合いが所定値以上である作業条件(12R1,12R2)と関係する事象K4の一部の入力をユーザ80に許容し、または、度合いが所定値以上である作業条件(12R1,12R2)と関係する作業(K10,121)または作業要素(K2,122)の提案の入力をユーザ80に許容するものであり、度合いが所定値以上である作業条件(12R1,12R2)と関係する事象が仮想的に全て発生した状況では関係する作業(K10,121)または作業要素(K2,122)が必要であるとする作業条件(12R1,12R2)の正当性をユーザに確認する反実仮想確認部72をさらに備え、作業履歴蓄積部20は、反実仮想確認部72における確認に対するユーザ80による回答の履歴を蓄積すると一層好ましい。これにより、反実仮想確認部72におけるユーザ80の回答の履歴に対応できるため、一層適切な保守知識をユーザに提供できる。
【0185】
また、提案表示部71は、度合いが所定値以上である作業条件(12R1,12R2)と関係する事象K4の一部をユーザ80が入力し、または、度合いが所定値以上である作業条件(12R1,12R2)と関係する作業(K10,121)または作業要素(K2,122)の提案をユーザ80が入力した場合、ユーザ80に付与した重みが所定値以上である作業要素(K2,122)と、ユーザ80との組合せに対して、反実仮想確認部72における確認を行う頻度を向上すると一層好ましい。これにより、ユーザ80に付与した重みに応じて、反実仮想確認部72における確認を行う頻度を向上できるため、一層適切な保守知識をユーザに提供できる。
【0186】
[変形例]
本発明は上述した実施形態に限定されるものではなく、種々の変形が可能である。上述した実施形態は本発明を理解しやすく説明するために例示したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、上記実施形態の構成に他の構成を追加してもよく、構成の一部について他の構成に置換をすることも可能である。また、図中に示した制御線や情報線は説明上必要と考えられるものを示しており、製品上で必要な全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。上記実施形態に対して可能な変形は、例えば以下のようなものである。
【0187】
(1)上記実施形態における作業知識記憶部10、作業履歴蓄積部20、作業知識初期化部30、作業知識提案部40、および計画者端末70のハードウエアは一般的なコンピュータによって実現できるため、上述した各ブロック図、各フローチャートに対応する処理、その他上述した各種処理を実行するプログラム等を記憶媒体(プログラムを記録したコンピュータ読み取り可能な記録媒体)に格納し、または伝送路を介して頒布してもよい。
【0188】
(2)上述した各ブロック図、各フローチャートに対応する処理、その他上述した各種処理を実行するプログラム等は、上記実施形態ではプログラムを用いたソフトウエア的な処理として説明したが、その一部または全部をASIC(Application Specific Integrated Circuit;特定用途向けIC)、あるいはFPGA(Field Programmable Gate Array)等を用いたハードウエア的な処理に置き換えてもよい。
【0189】
(3)上記実施形態において実行される各種処理は、ネットワーク60を経由して図示せぬサーバコンピュータが実行してもよく、上記実施形態において記憶される各種データも該サーバコンピュータに記憶させるようにしてもよい。
【符号の説明】
【0190】
10 作業知識記憶部
11 作業内容テーブル
12 作業条件テーブル
12R1,12R2 レコード(作業条件)
13 信頼度テーブル
13R1,13R2 レコード(信頼度履歴情報)
14 作業計画者テーブル
15 作業単語テーブル
20 作業履歴蓄積部
21 作業文書テーブル
22 作業履歴テーブル
22R1,22R2 レコード(履歴)
24 注目作業テーブル
30 作業知識初期化部
31 作業内容抽出部
32 作業条件抽出部
41 信頼度算出部
42 作業条件検索部(作業条件検索過程)
44 作業条件推定部(作業条件推定過程)
71 提案表示部(提案表示過程)
72 反実仮想確認部
73 変更確認部(変更確認過程)
80 ユーザ
101 作業知識提案システム
121 fromID情報(作業)
122 toID情報(作業要素)
123 作業分野情報
124 信頼度情報
130 ノードID情報(作業内容)
134 判定情報
142 得意分野情報
150 単語情報
153 分類情報
214 作業内容情報
222 発生日情報
223 発生事象情報
225 有効作業情報
300 保守対象設備
980 コンピュータ
K2 要素(作業要素)
K4 事象
K10 作業
MTC 行列
V71 提案表示画面
V72 反実仮想確認画面
V73 変更確認画面
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22