(57)【特許請求の範囲】
【請求項１】
電子データが出力可能な電子機器の出力値が所定の出力条件に該当することで、時間と共にイベントデータを抽出するイベント抽出部と、
該イベント抽出部で抽出した複数のイベントの時系列データから構成される作業の、複数の時系列情報のサンプルを用いて、個々のイベントの内容とその滞在時間から、確率変数が変化する状態遷移の遷移確率密度関数を算出する学習部と、
一連の作業手順である正規作業手順についての状態及びその前後制約と、前記イベント抽出部で抽出したイベントデータの時系列情報とから、前記状態に対する事後確率を前記学習部で算出した遷移確率密度関数を用いて求める作業推定部と
と備えたことを特徴とする作業内容推定装置。
【請求項２】
前記学習部は、制限付最適化問題の解として得られた係数を、各々のイベント滞在時間のサンプル度数分布に対して乗じることで前記遷移確率密度関数を算出することを特徴とする請求項１に記載の作業内容推定装置。
【請求項３】
前記学習部は、各々のイベント滞在時間のサンプル度数分布に対し、実際のイベント滞在時間が複数サンプルの平均から所定以上のばらつきがあるときには、前記遷移確率密度関数を０より大きい一定値とすることを特徴とする請求項１または２に記載の作業内容推定装置。
【請求項４】
前記正規作業手順について前記状態と、その前後制約を示す遷移とで示される作業グラフと、現在推定されている作業とから、次に前記作業推定部に事後確率を求めさせるための作業候補を、前記作業グラフ中から選択する候補選択部を備えたことを特徴とする請求項１乃至３のいずれかに記載の作業内容推定装置。
【請求項５】
前記候補選択部が選択した前記作業推定部に事後確率を求めさせるための前記作業候補を用いて、前記作業推定部によって求められた事後確率が最大となる作業について、前記事後確率が最大となる作業の事後確率が所定の閾値以下であった場合、前記候補選択部は、前回選択した前記作業候補よりも多い作業候補を、前記作業グラフ中から選択することを特徴とする請求項４に記載の作業内容推定装置。
【請求項６】
前記正規作業手順に示され、同じ作業について重複実施できない前後制約を有する遷移をもつ前記作業グラフから、前記作業推定部によって求められた事後確率が最大となる作業について、前記事後確率が最大となる作業の事後確率が所定の閾値以下であった場合、または、所定の閾値を超えているが、前記作業グラフから現在推定されている作業と次の作業との間が一つ遷移のみではなく、かつ前記作業グラフから現在推定されている作業から次の作業へ到達できない場合は、手順誤りであると判定する作業判定部を備えたことを特徴とする請求項１乃至５に記載の作業内容推定装置。
【請求項７】
前記正規作業手順に示され、同じ作業について重複実施できない前後制約を有する遷移をもつ前記作業グラフから、前記作業推定部によって求められた事後確率が最大となる作業について、前記事後確率が最大となる作業の事後確率は、所定の閾値を超えているが、前記作業グラフから現在推定されている作業と次の作業との間が一つ遷移のみではなく、前記作業グラフから現在推定されている作業から次の作業へ到達できる場合は、作業ぬけであると判定する作業判定部を備えたことを特徴とする請求項１乃至５に記載の作業内容推定装置。
【請求項８】
前記正規作業手順に示され、同じ作業について重複実施できない前後制約を有する遷移をもつ前記作業グラフから、前記作業推定部によって求められた事後確率が最大となる作業について、前記事後確率が最大となる作業の事後確率は、所定の閾値を超えているが、前記作業グラフから現在推定されている作業と次の作業とが重複する場合は、作業重複であると判定する作業判定部を備えたことを特徴とする請求項１乃至５に記載の作業内容推定装置。
【請求項９】
前記正規作業手順に示され、同じ作業について重複実施できない前後制約を有する遷移をもつ前記作業グラフから、前記作業推定部によって求められた事後確率が最大となる作業について、前記事後確率が最大となる作業の事後確率は、所定の閾値を超えており、かつ前記作業グラフから現在推定されている作業と次の作業との間が一つ遷移のみである場合は、正常作業であると判定する作業判定部を備えたことを特徴とする請求項１乃至５に記載の作業内容推定装置。
【請求項１０】
電子データが出力可能な電子機器の出力値が所定の出力条件に該当することで、時間と共にイベントデータを、イベント抽出部が抽出するイベント抽出ステップと、
複数のイベントの時系列データから構成される作業の、複数の時系列情報のサンプルを用いて、個々のイベントの内容とその滞在時間から、確率変数が変化する状態遷移の遷移確率密度関数を、学習部が算出する学習ステップと、
一連の作業手順である正規作業手順についての状態及びその前後制約と、実際のイベントデータの時系列情報とから、前記状態に対する事後確率を前記学習部で算出した遷移確率密度関数を用いて、作業推定部が求める作業推定ステップと
を有することを特徴とする作業内容推定方法。
【請求項１１】
前記学習ステップにおいて、制限付最適化問題の解として得られた係数を、各々のイベント滞在時間のサンプル度数分布に対して乗じることで前記遷移確率密度関数を有することを特徴とする請求項１０に記載の作業内容推定方法。
【請求項１２】
前記学習ステップにおいて、各々のイベント滞在時間のサンプル度数分布に対し、実際のイベント滞在時間が複数サンプルの平均から所定異常のばらつきがあるときには、前記遷移確率密度関数を０より大きい一定値とすることを特徴とする請求項１０または１１に記載の作業内容推定方法。
【請求項１３】
前記正規作業手順について前記状態と、その前後制約を示す遷移とで示される作業グラフと、現在推定されている作業とから、次に前記作業推定部に事後確率を求めさせるための作業候補を、前記作業グラフ中から選択する候補選択ステップを有することを特徴とする請求項１０乃至１２のいずれかに記載の作業内容推定方法。
【請求項１４】
前記候補選択ステップが選択した前記作業推定部に事後確率を求めさせるための前記作業候補を用いて、前記作業推定部によって求められた事後確率が最大となる作業について、前記事後確率が最大となる作業の事後確率が所定の閾値以下であった場合、前記候補選択部は、前回選択した前記作業候補よりも多い作業候補を、前記作業グラフ中から選択することを特徴とする請求項１３に記載の作業内容推定方法。
【請求項１５】
前記正規作業手順に示され、同じ作業について重複実施できない前後制約を有する遷移をもつ前記作業グラフから、前記作業推定ステップによって求められた事後確率が最大となる作業について、前記事後確率が最大となる作業の事後確率が所定の閾値以下であった場合、または、所定の閾値を超えているが、前記作業グラフから現在推定されている作業と次の作業との間が一つ遷移のみではなく、かつ前記作業グラフから現在推定されている作業から次の作業へ到達できない場合は、手順誤りであると判定する作業判定ステップを有することを特徴とする請求項１０乃至１４に記載の作業内容推定方法。
【請求項１６】
前記正規作業手順に示され、同じ作業について重複実施できない前後制約を有する遷移をもつ前記作業グラフから、前記事後確率が最大となる作業推定ステップによって求められた事後確率が最大となる作業について、前記作業の事後確率は、所定の閾値を超えているが、前記作業グラフから現在推定されている作業と次の作業との間が一つ遷移のみではなく、前記作業グラフから現在推定されている作業から次の作業へ到達できる場合は、作業ぬけであると判定する作業判定ステップを有することを特徴とする請求項１０乃至１４に記載の作業内容推定方法。
【請求項１７】
前記正規作業手順に示され、同じ作業について重複実施できない前後制約を有する遷移をもつ前記作業グラフから前記作業推定ステップによって求められた事後確率が最大となる作業について、前記事後確率が最大となる作業の事後確率は、所定の閾値を超えているが、前記作業グラフから現在推定されている作業と次の作業とが重複する場合は、作業重複であると判定する作業判定ステップを有することを特徴とする請求項１０乃至１４に記載の作業内容推定方法。
【請求項１８】
前記正規作業手順に示され、同じ作業について重複実施できない前後制約を有する遷移をもつ前記作業グラフから、前記作業推定ステップによって求められた事後確率が最大となる作業について、前記事後確率が最大となる作業の事後確率は、所定の閾値を超えており、かつ前記作業グラフから現在推定されている作業と次の作業との間が一つ遷移のみである場合は、正常作業であると判定する作業判定ステップを有することを特徴とする請求項１０乃至１４に記載の作業内容推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、作業内容推定方法、及び作業内容推定装置に関するものである。
【背景技術】
【０００２】
決められた作業を決められた手順で実施する必要がある分野、例えば昇降機の保守作業では、これまで作業員の書面による報告を元に実施確認が行われてきた。しかし、この場合不注意による作業抜けを完全に防ぐことは難しい。
【０００３】
予め配布されている標準作業マニュアル等に従って作業を遂行しなければならない作業現場では、標準作業マニュアルに従って作業が行われないと、様々な問題を生ずることがある。例えば、昇降機の保守作業では、標準作業マニュアルは保守作業の効率化を目指して策定されているため、標準作業マニュアルに則らない作業は非効率である。
【０００４】
特許文献１には、保全作業の内容を確認する手段として、予め記憶した保全作業で発生する作業予定動作と、保全作業時の昇降機制御装置から得る昇降機の動作履歴と、携帯端末からの入力情報から成る操作履歴とを自動的に記憶し、前記作業予定動作と前記動作履歴並びに前記操作履歴を作業後に照合することによって、保全作業内容に不備がないか確認する保全作業評価手段が述べられている。
【０００５】
特許文献２には、保守作業ごとに対応する昇降機の運行情報を保存することで、作業を実施したことを確認すると共に保守作業の作業時間を求め、予め定められている保守作業の標準時間と比較して実施された保守作業を評価する、昇降機保守作業チェックシステムが述べられている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−１５４１０６号公報
【特許文献２】特開２００６−１５１５２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
先行技術は共に、作業項目と発生する電子データを対応付け、作業員が作業を正しく実施したかどうかを確認する手段が述べられている。しかし、実施した作業項目から作業項目に対応する電子データを照会するため、どの作業項目を実施したかは外から入力しなければならない。このため、入力された作業項目以外の作業を実施していた場合に、この作業が実施された事実を認識することができない。また入力を人手で行うのであれば、使用者の負担となる。
【０００８】
この発明は上記のような問題点を解決するためになされたものであり、電子データから作業内容を推定するにあたり、作業環境に存在するセンサや各種電子機器より得られる電子データから、作業員が実施した作業を推定することと、その結果を元に、作業手順の誤りや抜けを自動検知することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、所定のセンサなどの電子機器が所定の出力条件に該当することで、時間と共にイベントデータを抽出するイベント抽出部と、複数のイベントの時系列データから構成される作業の、複数の時系列情報のサンプルを用いて、個々のイベントの内容とその滞在時間から、セミマルコフモデルに基づく遷移確率密度関数を算出する学習部と、一連の作業手順である正規作業手順について状態と遷移で示される作業グラフと、実際のイベントデータの時系列情報とから、前記状態に対する事後確率を求める作業推定部と
を備えたものである。
【発明の効果】
【００１０】
本発明によれば、所定のセンサなどの電子機器が所定の出力条件に該当することで、時間と共にイベントデータを抽出するイベント抽出部と、複数のイベントの時系列データから構成される作業の、複数の時系列情報のサンプルから算出される統計情報を用いて、個々のイベント滞在時間から、セミマルコフモデルに基づく遷移確率密度関数を算出する学習部と、一連の作業手順である正規作業手順について状態と遷移で示される作業グラフと、実際のイベントデータの時系列情報とから、前記状態に対する事後確率を求める作業推定部とを備えたことにより、正規作業手順に基づく作業を実施した際に、作業内容を推定することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１における作業内容推定装置の構成図。
【図２】実施の形態１における作業内容推定装置でのイベントデータとして抽出する抽出条件を示す例。
【図３】実施の形態１における作業内容推定装置でのイベントデータを示す例。
【図４】実施の形態１における正規作業手順データベース９に格納されている作業グラフの例。
【図５】実施の形態１における実施の形態１における作業完了フラグの例。
【図６】実施の形態１におけるイベント抽出部３のフローチャート。
【図７】実施の形態１における学習部６のフローチャート。
【図８】実施の形態１におけるイベントデータをモデル化する際の、セミマルコフモデルへの対応付けを表した図。
【図９】実施の形態１における２つのイベントの組の間の遷移時間の分布を表したヒストグラムである。
【図１０】実施の形態１における作業推定部８、作業進捗管理部１０が行う推定・診断処理の動作フローチャート。
【図１１】実施の形態１における候補選択部１０１の動作を示すフローチャート。
【図１２】本実施の形態における正規作業手順を示す作業グラフで、現在の作業状態も示した図
【図１３】図１２での作業グラフでの現在の作業状態に基づいて、候補選択部１０１が作業推定候補を選択するために用いる判断基準を示す図。
【図１４】実施の形態１における作業推定部８が行う作業推定のフローチャート。
【図１５】実施の形態１における作業判定部１０２の処理におけるフローチャート。
【発明を実施するための形態】
【００１２】
実施の形態１．
実施の形態１では、ある決められた作業内容を作業員が実施するにあたり、作業環境に存在するセンサなどの各種電子機器から電子データが得られ、これにより、作業員が実施した作業内容と、その手順を推定する方法について説明する。
【００１３】
ある決められた作業内容を作業員が実施するにあたり、作業中に得られる、作業環境に存在するセンサなどの各種電子機器からの電子データの時系列データから作業内容を推定する方法としては、いくつかの実現方法が考えられるが、本実施形態では例として、セミマルコフモデルを用いた推定を利用した形態について説明する。
セミマルコフモデルはマルコフモデルの一種であり、ある状態から次の状態に至る遷移確率が、状態に滞在した時間の関数として表される確率モデルである。
例えば、昇降機の保守作業を念頭に置いた場合、１つの作業項目をとってみると、ある程度順番が決まっており、マルコフモデルの状態遷移のような順序を表現できるモデルにより照合することが可能である。
また、昇降機の保守作業では、人が行う作業であるため、イベントの発生時刻にブレが存在するが、ボタンを押した時間の長さによって意味が変わるイベントのブロックサインなど、動作の時間に関する制約がある一方で、時間の制約のない作業もあり、時間ばらつきはイベントごとに異なる。
一方で、マルコフモデルではイベント毎の時間的なブレは表現できず、イベントの発生をトリガとして状態遷移を行い時間には依存しない。そのため、時間に関する制約をマルコフモデルの外部で別途、付随的に考慮する必要があるのに対して、セミマルコフで表現できるイベント毎の時間的なブレは、一般の遷移確率関数に拡張できるため、イベントごとの時間的なブレをモデル化するには、セミマルコフモデルが適している。
したがって、作業環境に存在するセンサなどの各種電子機器から電子データの時系列データと、その時間ばらつきから、作業内容を推定する方法としてはセミマルコフモデルを用いた推定が適している。
セミマルコフモデルにより、作業を実施した際の、イベントの順序と、イベントの間隔のパターンを学習し、推定時にその類似度と見なせる事後確率を測ることで、作業内容を推定することができる。
【００１４】
図１は、実施の形態１における作業内容推定装置の構成図である。
【００１５】
イベント抽出部３は、センサや制御盤などの電子データが取得可能な電子機器１と、時刻情報が取得可能なタイマー２の両方に接続されている。電子機器１と、タイマー２から、取得した電子データを用いてイベントを抽出し、イベントデータとしてイベントデータ保存部４に保存させる。
【００１６】
図２は、実施の形態１における作業内容推定装置でのイベントデータとして抽出する抽出条件を示す例である。
イベントとは、所定のセンサの値が閾値を越えた、特定の範囲に収まった、といった、電子データの値の変化のことである。つまり、イベントデータは所定のセンサの値が閾値を越えた、特定の範囲に収まった、といった、電子データの値の変化を示すデータである。図２においても、イベントＩＤごとに、所定のセンサに対応する電子データ系列が、所定の抽出ルールに基づいて判断するためのテーブルとして示されている。
このセンサの値の変化は、例えば昇降機保守作業確認に適用する場合であれば、扉を閉めた、昇降機を動かしたなどの人間の動作と操作に対応している。イベントの発生は、その種類ごとに、予め定められたルールに従って判断される。
【００１７】
図３は、実施の形態１における作業内容推定装置でのイベントデータを示す例である。
イベントデータ保存部４に保存されるイベントデータは、ＩＤ（種類）と発生時刻との情報からなる。
図３のデータは、例えば、時刻１２：１５：００にセンサＡが反応するイベントＩＤ２のイベントが起こり、次に１２：１８：３２にスイッチがＯＮとなって、イベントＩＤ４のイベントが起こり、１２：２０：０２にスイッチＳはＯＦＦとなってイベントＩＤ５のイベントが起こり、１２：２２：２０にセンサＢが反応して、イベントＩＤ３のイベントが起こり、という内容のイベントデータである。
上記例では、ひとつの発生時刻にひとつのイベントＩＤが対応している場合を示したが、実際には同じ発生時刻に複数のイベントＩＤが発生することもある。また作業とは、複数のイベントによって構成される。ゆえに作業の推定は、その複数のイベント時系列の各々の時間間隔に基づいて行われ、イベントの検出のみで作業内容を決定できるわけではない。
【００１８】
特殊なイベントの種類として、全作業完了イベントと、作業完了イベントを利用する。
全作業完了イベントは作業の終了を表し、保守作業スイッチのＯＦＦなどによって発生する。全作業完了イベントをもって、推定・診断処理を終了する。
作業完了イベントは、作業項目がひとつ完了したことを表すイベントである。作業完了イベントを、作業内容の推定を開始するための合図として利用する。必ず作業項目の最後にしか発生しないイベントが存在すれば、それらを作業完了イベントとして利用する。前記条件が満たせない場合、保守作業員が装着しているマイクに何らかの音声を入力することで、作業完了イベントとすることも可能である。
【００１９】
図１における、教師データ保存部５では、学習部６が前記パラメータを算出するために必要な教師データを保存する。必要な教師データは、イベントデータ保存部４に保存された各々のイベントデータに対応する、あらかじめ同じ複数のイベントを含む一つの作業内容について記録したサンプルデータ集である。
このために、教師データ保存部５では、作業内容によって各センサが示す値と、その作業を実施した複数のサンプルが示す時間帯の組と、を一つの教師データ項目として保存する。複数のサンプルが示す実施時間帯とそのばらつきを与えることで、対応するイベントデータ系列からセミマルコフモデルによって作業が特定可能となる。
【００２０】
学習部６は、まず教師データ保存部５から複数の教師データを取得し、次にイベントデータ保存部４から教師データに対応するイベントデータを取得する。その後、作業推定部８が作業を推定するために必要な推定用パラメータを、学習部６が算出して推定用パラメータ保存部７に保存する。推定用パラメータの算出手法については後述する。
【００２１】
作業推定部８は作業進捗管理部１０から作業推定候補を受け取り、作業推定結果を返す。作業推定を行うためにイベントデータ保存部４と推定用パラメータ保存部７から情報を読み出す。具体的作業推定方法については後述する。
【００２２】
作業進捗管理部１０は、入力として正規作業手順を格納した正規作業手順データベース９から正規作業手順を読み出し、作業推定部８に、呼び出して実施した作業手順を推定させる。
【００２３】
正規作業手順データベース９は、一連の作業手順である正規作業手順を、一意に表記可能な作業グラフという形式で保存する。作業グラフは、「ノード（作業）が一つの作業単位、エッジ（遷移）が作業の前後制約を表す有向グラフで、同じ作業は２度実行されない」と定義する。
図４は実施の形態１における正規作業手順データベース９に格納されている作業グラフの例である。ノード４０１は作業Ｂという作業状態が存在すること表しており、例えばエッジ４０２は作業Ｂの次に作業Ｅが遷移して実施されうることを表している。
【００２４】
作業進捗管理部１０は、推定した作業手順と正規作業手順とを比較し、手順に間違いがあれば、作業エラーとして検出する。加えて作業進捗管理部１０は、作業手順と作業エラー情報を作業ログ保存部１２の作業手順保存部１２１、作業エラー情報保存部１２２に保存する。
また、作業進捗管理部１０は、動作の際の一時的なデータとして作業進捗情報保存部１１に、作業状態・作業候補リストを作業状態保存部１１１に保存させ、作業状態・作業完了フラグを作業完了フラグ保存部１１２に保存させ、作業完了フラグを作業完了フラグ保存部１１２に保存させ、推定ステータスを推定ステータス保存部１１３に保存させ、最新の推定結果を推定結果保存部１１４に保存させ、また利用する。
【００２５】
作業進捗情報保存部１１では、作業進捗管理部１０が利用する保存情報として、作業状態と最新の推定結果、作業完了フラグ、推定ステータスを保持する。
【００２６】
作業進捗情報保存部１１における作業状態保存部１１１では、現在の作業状態として、過去の作業推定の結果を保存する。初期状態では、特殊な「初期作業」を保存しておく。  初期作業とは、前の作業を持たず、かつ次の作業として、作業グラフ上で最初に実施される作業を持つような作業である。ただし、初期作業は実際の作業に対応するものではなく、アルゴリズムの動作上必要となるために作業進捗管理部１０でのみ使用される。
【００２７】
作業完了フラグは、作業ごとに実施済みか未実施かを表したものであり、作業完了フラグ保存部１１２に保存される。
図５は実施の形態１における作業完了フラグの例を示す。作業完了フラグは、実施済みあるいは未実施のいずれかの値をとるものであり、初期状態では全て未実施である。
【００２８】
推定ステータスは、推定に失敗した回数をカウントしたものであり、推定ステータス保存部１１３に保存される。推定ステータスは、後述する候補選択部１０１で必要となる。初期状態では、０回とする。
推定結果保存部１１４では、作業推定部８によって推定された最新の推定結果を保存する。
【００２９】
次に図１を用いつつ、動作について説明する。
図６は、実施の形態１におけるイベント抽出部３のフローチャートである。前提条件として、図２に例示したイベント抽出ルールは事前に与えられているものとする。
Ｓ６０１において、電子機器１より取得した電子データを常に観測し、Ｓ６０２にて前記イベント抽出ルール内のいずれかの条件が満たされたときに、Ｓ６０３においてタイマー２から時刻を取得し、Ｓ６０４にてイベントのＩＤと時刻の組をイベントデータ記憶部４に保存する。
イベント抽出部３では、前記ルールに基づいて、電子データからイベントを抽出する。イベント抽出部の処理は、センサ・制御盤からデータが取得可能な期間中すなわち、保守作業の実施中は常に繰り返し実行し続ける。
【００３０】
次に学習部６の動作について説明する。学習部６は、作業推定部８が作業内容を推定するためのパラメータとして、作業ごとに、セミマルコフモデルの遷移確率密度関数ｆを算出し、その遷移確率密度関数ｆを、推定用パラメータ保存部７に保存する。遷移確率密度関数ｆは、後述する推定・診断処理に必要であるため、学習部６の処理は推定・診断処理よりも前に実行しておく必要がある。
図７は実施の形態１における学習部６のフローチャートである。
Ｓ７０１において、教師データ保存部５から教師データである、例えば作業Ｗとその作業Ｗに要した時間帯の情報を複数、取得するとともに、Ｓ７０２において、当該時間帯に発生したイベントデータをイベントデータ記憶部４から取得する。この教師データ保存部５から取得する教師データは、遷移確率密度関数ｆを求めるために同作業であっても複数のサンプルが必要なので、同じ作業を何回か繰り返し実行してデータをあらかじめ取得しておく必要がある。
【００３１】
作業Ｗを実施した際に観測されるイベントデータをモデル化する。
図８は、実施の形態１におけるイベントデータをモデル化する際の、セミマルコフモデルへの対応付けを表した図である。ここではイベント発生を状態遷移、イベント発生間隔を各状態の滞在時間としてモデル化を行う。
このとき、セミマルコフモデルを特徴付けるためのパラメータとして、推定用パラメータ保存部７に保存しておく必要があるのは、作業中の各状態間の遷移確率密度関数ｆである。セミマルコフモデルは作業ごとに作成する必要があり、また、遷移確率密度関数ｆはイベントの組み合わせごとに設定する必要がある。
【００３２】
遷移の遷移確率密度関数の設定方法については、さまざまな実現方式が考えられるが、本実装形態では、最大エントロピー原理（「時間付きマルコフモデルを用いた事象駆動系の故障診断」計測自動制御学会論文集  ｖｏｌ.４２、ｎｏ９、１８８〜１９４頁参照）によって行う。最大エントロピー原理を用いる場合、遷移確率密度関数は数１のようになる。
【００３３】
【数１】
0005463964.tif 000002
【００３４】
図８も用いて説明すると、作業Ａにおける状態ｘからｙへのイベントのサンプルのうち、滞在時間の平均値μ、標準偏差σとする。
εは、例えば、イベント滞在時間の平均値μから±３σ以上はなれている場合の所定値として定義される。これは、非通常的な作業行為・時間に対する推定をおこなうために、推定項目から排除しないために必要な所定値である。例えば、上記式ではεとなる境界を±３σとしたが、イベント間の内容などによってばらつきの量を所定の量に調整することもできる。
λ（λ0〜λmのベクトル）は、遷移確率関数ｆの形を特徴付ける係数列であり、教師データのサンプル数、ばらつきなどによって変化する。後にλの求め方も説明する。
ｍは、係数λの次数である。ｍを大きくすることで、遷移確率関数ｆをより複雑な形状（ピークが複数ある、など）の確率分布も表現できるようになる。
推定用パラメータ保存部７が保存するのは、λ、平均値μ、標準偏差σである。
【００３５】
図７に戻り、次に、Ｓ７０３において、学習部６は、取得したイベントデータから、連続して発生する２つのイベントの組を抽出する。例えば、図３におけるイベントＩＤ２とイベントＩＤ４、イベントＩＤ４とイベントＩＤ５である。そしてＳ７０４において、イベントの組ごとに、イベント発生間隔を集計してヒストグラムを作成する。
図９は、実施の形態１における２つのイベントの組の間のイベント間隔である遷移時間の分布を表したヒストグラムである。
Ｓ７０４において、作成した各イベントの組ごとのヒストグラムから、階級値ｗｉ（ｉ＝１〜ｎの自然数）、及び度数ｐｉ（ｉ＝１〜ｎの自然数）、平均値μ、標準偏差σを算出する。
【００３６】
その後、パラメータλ（λ0〜λmのベクトル）をＬｅｖｅｎｂｅｒｇ−Ｍａｒｑｕａｒｄ法（Ｗｅｉｓｓｔｅｉｎ、Ｅｒｉｃ  Ｗ”Ｌｅｖｅｎｂｅｒｇ−Ｍａｒｑｕａｒｄ  Ｍｅｔｈｏｄ  Ｆｒｏｍ  ＭａｔｈＷｏｒｌｄ−−Ａ  Ｗｏｌｆ  Ｗｅｂ  Ｒｅｓｏｕｒｃｅ”参照）によって算出する。
Ｓ７０５において、λを適切な値に初期化した後、Ｓ７０６において、数２の式にしたがって、λを更新する。
【００３７】
【数２】
0005463964.tif 000003
【００３８】
ここで、ＪはＲのヤコビ行列であり、Ｉは単位行列である。
Ｓ７０７において、λの値が収束したら、処理完了である。
その後、λ0を数３で算出し、λ0〜λmを保存する。収束条件として、パラメータδを用いる。λの変化量の２次ユークリッドノルムがδ未満となったら、すなわち数４が成立したら、収束したと判定する。
【００３９】
【数３】
0005463964.tif 000004
【００４０】
【数４】
0005463964.tif 000005
【００４１】
図７において、Ｓ７０８において、学習部６は、数４が成立し、収束後、λ、μ、σを、推定用パラメータ保存部７に、作業の種類及びイベントの組と対応付けて保存させる。
Ｓ７０９において、未だパラメータを算出していないイベント組があれば、すべてのイベントの組に対して行い、Ｓ７１０にて終了する。
学習部６の処理は、推定したい作業がＮ個あれば、それぞれに対して実行する必要がある。例えば図４の例であれば、作業Ａ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆ、Ｇそれぞれ計７回実行する。
【００４２】
次に、作業推定部８、作業進捗管理部１０が行う作業の推定・診断処理の動作について説明する。
図１０は、実施の形態１における作業推定部８、作業進捗管理部１０が行う推定・診断処理の動作フローチャートである。この動作により、本発明の目的である、以下が達成できる。すなわち、イベントデータから作業内容を推定し、推定結果から作業内容が正しいかどうか診断する。
事前処理として、学習部６の処理はすでに実行され、作業ごとにセミマルコフモデルのパラメータは推定用パラメータ保存部７に記憶されているものとする。また、推定・診断時にはイベント抽出部は独立に動作し続け、電子データから抽出したイベントデータをイベントデータ保存部４に保存し続けているものとする。
【００４３】
図１０のＳ１０００において動作が開始したら、Ｓ１００１において、まず、作業進捗管理部１０の候補選択部１０１が、作業推定候補の選択を行う。
図１１は、実施の形態１における候補選択部１０１の動作を示すフローチャートである。
候補選択部１０１の機能は、作業の進捗状態と正規作業手順の作業グラフの情報を元に作業推定部８の動作に必要な作業推定候補を選択することである。
Ｓ１１００において、候補選択部１０１が候補選択のフローを開始すると、まず、Ｓ１１０１において、候補選択部１０１は、作業状態保存部１１１に保存されている現在の作業状態を取得する。
現在の作業状態は、初期状態では、初期作業が保存されている。
Ｓ１１０２において、候補選択部１０１は、推定ステータス保存部１１３に保存されている推定ステータスも取得する。
推定ステータスは、初期状態では０とし、作業推定が失敗するごとに増加する。また、作業推定が成功するごとに０にリセットする。
【００４４】
Ｓ１１０３において、正規作業手順データベース９から正規作業手順を入手する。
図１２は、本実施の形態における正規作業手順を示す作業グラフで、現在の作業状態も示した図である。
Ｓ１１０４において、候補選択部１０１は、図１２の正規作業手順の作業グラフ中に含まれる作業候補群と現在の作業状態とから作業推定候補を選択する。
図１３は、図１２での作業グラフでの現在の作業状態に基づいて、候補選択部１０１が作業推定候補を選択するために用いる判断基準を示す図である。
図１３において、左欄には、正規作業手順の作業グラフ中に含まれる候補群のＩＤがあり、それぞれのＩＤに該当する条件が示されている。そしてその候補群のＩＤに対して優先度が付与されている。
そして、候補選択部１０１は、図１３に示される候補群の内、優先度の値が推定ステータスの値と一致する作業候補群を選択する。つまり作業推定の失敗がない場合は、推定ステータスは０なので、図１３においては、候補群ＩＤの０と１である、図１２における作業Ｃ，作業Ｄ，作業Ｅ，作業Ｆが作業候補群として選択される。
選択した作業候補群に該当する作業を、作業推定の候補として、作業推定部８に受け渡す。ただし、この際に、候補が１作業だけとなってしまう場合には、推定ステータスの値を１増やし、次の優先度を持つ作業も候補に加える。
【００４５】
上記の候補選択部１０１の機能は、作業推定の前に毎回呼び出される。また、作業推定が失敗するごとに、推定ステータスは１ずつ増加していく。従い、作業候補は、作業推定が失敗するごとに、優先度に応じて段階的に選択されていく。
以上のごとく、一度に照会すべき作業の数を絞り込むことで、余計な作業に対する推定を考慮しなくてよいことによる、推定精度の改善と、計算量の削減を成し遂げる。
【００４６】
次に図１０のＳ１００２において、作業推定部８は、作業推定を実施する。
図１４は、実施の形態１における作業推定部８が行う作業推定のフローチャートである。Ｓ１４００において、作業推定部８は候補選択部１０１より作業推定の候補を受け取ることで動作を開始する。作業推定部８の機能は、受け取った作業推定候補に含まれる作業それぞれについて、推定用パラメータを元に、イベントデータに対する事後確率を計算することで、どの作業を実施したかを推定することである。
【００４７】
作業推定部８の動作が開始したら、Ｓ１４０１において、まず候補となった全ての作業ｒ（ｒは自然数）について事後確率ｐＭ（ｒ）を等しい値に初期化する。値は、合計が１となるよう設定する。例えば図１２、図１３の場合に推定ステータスが０であるならば、候補選択部１０１から受け取る候補は作業Ｃ、Ｄ，Ｅ，Ｆの４つとなるため、ＰＭ（Ｃ）、ＰＭ（Ｄ）、ＰＭ（Ｅ）、ＰＭ（Ｆ）をそれぞれ０．２５に初期化する。
【００４８】
次に、Ｓ１４０２において、イベントデータ保存部４からイベントデータを１項目取得する。イベントデータ取得の動作は、保守作業実施中に保守作業と並行して診断している場合と、バッチ処理のように保全作業が全て終了した後でその結果を診断している場合で若干異なる。どちらも、未取得のイベントデータ１項目を取得するが、保全作業と並行して実施している場合は、未取得のイベントデータが存在しない可能性があるため、ここでイベントデータが取得できるまで待つ。
【００４９】
Ｓ１４０３において、取得したイベントと、その1つ前のイベントを元に、候補内の各作業ｒについて、事後確率ｐＭ（ｒ）を更新する。更新式を数５に示す。
【００５０】
【数５】
0005463964.tif 000006
ここで、ｐＭ（ｒ）＿ｏｌｄは更新前のｐＭ（ｒ）の値であり、関数ｆは式１に示した遷移確率密度関数ｆである。また、ｅＨ＋１は、今取得したイベントの種類であり、ｅＨはその１つ前に取得したイベントの種類である。遷移確率密度関数ｆの値を算出するために必要なパラメータλ、μ、σは、推定用パラメータ保存部７から取得する。
ここでイベントデータの値から、例えば図１２、図１３の場合において、作業Ｂが終わって作業Ｃ、Ｄ、Ｅのいずれかの作業に入ったことを示した場合で、イベントデータの種類ｅＨ＋１と、前のイベントｅＨからの時間間隔から、作業Ｃ，Ｄの該当可能性が高く、作業Ｅ，Ｆの該当可能性が低い場合、遷移確率密度関数ｆの値は、作業Ｅ，Ｆよりも作業Ｃ，Ｄのほうが高くなるため、更新後の作業Ｃ，作業Ｄに対する事後確率は０．２５からそれぞれ上昇し、Ｅ，Ｆは減少するといった処理がなされる。
また、その後、次のイベントデータの種類ｅＨ＋２を抽出したときに、作業Ｃ及び作業Ｄにかかった時間によって示す遷移確率密度関数ｆが異なるため、その際に、作業Ｃ、作業Ｄに対する事後確率がさらに更新されて、最後に、作業Ｆとなるイベントデータを取得したときに、作業の推定の基礎となる事後確率が確定する。
また、イベントの組み合わせによっては、学習時に該組み合わせが存在しなかったために、パラメータが保存されていない場合がある。例えば、図８における、Ｓｔａｔｅ０からＳｔａｔｅ３などのように存在しなかった遷移の組み合わせの場合などである。
このときは遷移確率密度関数ｆの値の代わりに定数ζを用いる。ζはシステムで共通のパラメータであるが、学習時に該組み合わせが存在しない場合を想定しているので、その値は、学習時に該組み合わせが存在している場合と比べて低く設定される。
【００５１】
事後確率を更新した後に、Ｓ１４０４において、取得したイベントの種類を確認する。作業完了イベントでも全作業完了イベントでもない通常のイベントの場合には、図１４のＳ１４０２である「イベントデータを取得」の直前に戻る。
作業完了イベントもしくは全作業完了イベントを取得した場合には、Ｓ１４０５において、事後確率が最大となる作業Ｗを選択する。全作業完了イベントを取得した場合には、さらに、作業進捗管理部１０に通知する。
【００５２】
全作業完了イベントを取得した場合には、作業進捗管理部１０に通知する。Ｓ１４０６において、事後確率最大の作業Ｗの事後確率が閾値ξよりも大きいか否かを判断する。この閾値ξはパラメータであり、事前に定数を指定するか、作業推定の候補となった作業数の関数として指定する。
Ｓ１４０７において、事後確率最大の作業Ｗの事後確率が閾値ξよりも大きい場合、推定は成功であり、その場合は、作業Ｗを推定結果保存部１１４に保存する。同時に、推定ステータスの値を０に設定する。
Ｓ１４０８において、作業Ｗの事後確率が閾値ξを超えなかった場合、どの作業の事後確率も閾値ξを超えなかったということであり、推定失敗である。推定失敗は候補内のどの作業にも該当しなかったという結果を示す。この場合は、推定失敗という情報を推定結果保存部１１４に保存する。同時に、推定ステータスの値に１を加算する。これにより、次回の候補選択部１０１の動作において、選択される候補群が変更され、他の候補群について推定を行うことができる。
【００５３】
図１０における推定・診断処理のフローチャートのＳ１００３において、図１４のフローチャートに基づいて得られた推定の結果（成功、失敗）を確認する。
推定結果が推定成功だった場合には、Ｓ１００４における作業判定部１０２の処理に移る。推定失敗だった場合にはＳ１００１からの処理である候補選択部１０１の処理からもう一度やり直す。ただし、全ての作業（図1３の候補群ＩＤ４）が作業推定の候補のときに推定失敗だった場合には、ここで推定を打ち切り、作業判定部１０２の処理、すなわちＳ１００４に移る。
【００５４】
図１５は、実施の形態１における作業判定部１０２の処理におけるフローチャートである。作業判定部１０２では、作業が正常な手順で行われているかどうかを判定する。作業状態保存部１１１に保存されている作業状態と、推定結果保存部１１４に保存されている推定結果と、正規作業手順データベース９に保存されている作業グラフで示された正規作業手順を用いることで、作業のチェックを可能とする。
【００５５】
Ｓ１５０１において、作業判定部１０２の動作が開始したら、まず、推定結果保存部１１４と作業状態保存部１１１を参照し、直前の推定結果となった作業と現在の作業状態を取得する。現在の作業状態とは、１つ前の推定結果となった作業である。以降、これらをそれぞれ作業Ｗ、作業Ｗ’とおく。
Ｓ１５０２において、取得した作業Ｗが推定失敗か否かを判断し、作業Ｗが推定失敗だった場合、Ｓ１５０３において、前述の全ての作業を候補としても推定失敗した場合と判断できるため、作業誤りを出力する。そして、Ｓ１５１１において、１１３の推定ステータスを０に設定し、終了する。すると、図１０のＳ１００４作業判定の直後であるＳ１００５へ進むことなる。
【００５６】
次に、取得した作業Ｗが推定失敗ではなかったときは、作業が重複していないかをチェックする。Ｓ１５０４において、作業完了フラグ保存部１１２に保存されている作業完了フラグを調べ、作業Ｗの項目が実施済となっているかを調べる。作業完了フラグの作業Ｗの項目が実施済となっている場合は、Ｓ１５０５において、作業重複を出力する。
【００５７】
Ｓ１５０４にて作業重複チェックの結果が未実施であった場合、Ｓ１５０６において、さらに作業抜けのチェックを行う。具体的には、正規作業手順を表した作業グラフ上で、作業Ｗから作業Ｗ’との間に一つのエッジ（遷移）のみがあるか否かを調べる。
無かった場合には、Ｓ１５０７において、作業Ｗ’から作業Ｗにエッジを辿って到達することが可能かを調べる。到達することが可能であれば、Ｓ１５０８において、作業抜けを出力し、到達不可能であれば、Ｓ１５０９において、手順誤りを出力する。作業Ｗと作業Ｗ’に一つのエッジ（遷移）のみがあった場合は、Ｓ１５１０において、正常手順で作業が進められたと判定する。
【００５８】
作業判定処理の最後である、Ｓ１５１２において、作業Ｗが推定失敗でなかった場合には、作業状態保存部１１１を最新の推定結果に更新する。同時に、作業完了フラグ保存部１１２の作業Ｗの項目を完了に設定する。
【００５９】
作業判定後は、推定・診断処理のフローチャート図１０の作業判定の直後へ戻り、Ｓ１００５において、推定した作業を出力する。この際、推定結果保存部１１４に保存された推定結果が推定失敗だった場合には、「不明な作業」を出力する。
Ｓ１００６において、推定結果の出力後、全作業完了をしていない場合には、フローチャートの先頭であるＳ１００１に戻って、次の推定を行う。
推定・診断処理の動作は、作業推定部８から、全作業完了イベントが発生した通知を受け取るまで、繰り返し実行され続ける。作業推定部８から全作業完了イベント発生の通知があった場合、Ｓ１００７において、全体の処理を終了する。
【００６０】
したがって、本実施の形態では、所定のセンサなどの電子機器１が所定の出力条件に該当することで、時間と共にイベントデータを抽出するイベント抽出部３と、複数のイベントの時系列データから構成される作業の、複数の時系列情報のサンプルを用いて、個々のイベントの内容とその滞在時間から、セミマルコフモデルに基づく遷移確率密度関数を算出する学習部６と、一連の作業手順である正規作業手順について状態と遷移で示される作業グラフと、実際のイベントデータの時系列情報とから、前記状態に対する事後確率を求める作業推定部８とを備えたことにより、正規作業手順に基づく作業を実施した際に、作業内容を推定することができるとともに、作業抜けや推定の打ち切りも検出することができる。
【００６１】
また、例えば昇降機保守作業確認に適用する場合、昇降機に取り付けられたセンサや昇降機の運行を制御する運行制御装置などの電子機器と接続される。該方式、及び装置は、電子機器によって取得できる電子データと時刻情報から、電子データの変化を抽出し、その種類と発生時刻をイベントとして保存するイベント抽出部３と、イベントの時系列データ及びその時間帯にどの作業が実施されていたかを示す教師データから推定用パラメータを算出し保存する学習部６と、推定用パラメータを元に時系列イベントデータから作業内容を推定する作業推定部８と、作業の完了確認状況及び現在の作業状態を管理することで正規手順情報から次に実施されうる作業の候補を選択する候補選択部１０１と、推定結果が正規手順に則っているかを判定する作業判定部１０２からなり、出力として、作業員が実施した作業の手順と、正規手順に則っていなければどの部分に誤りがあるかを出力することができる。
【００６２】
また、作業中に電子データからイベントを抽出し、これを用いて、作業員が実施した作業を順次推定することで、正規手順に従って作業を実施しているかを確認する。同時に作業手順を作業履歴として出力する。
作業環境に存在するセンサなどの各種電子機器から電子データが得られ、これにより、作業員が実施した作業内容と、その手順が推定できる。推定結果を利用して、保守作業の抜けや手順の間違いが自動検知できる。また、推定した手順を作業ログとすることで、作業の証拠や作業効率改善のための資料として利用できる。
【符号の説明】
【００６３】
１  電子機器
２  タイマー
３  イベント抽出部
４  イベントデータ保存部
５  教師データ保存部
６  学習部
７  推定用パラメータ保存部
８  作業推定部
９  正規作業手順データベース
１０  作業進捗管理部
１０１  候補選択部
１０２  作業判定部
１１  作業進歩情報保存部
１１１  作業状態保存部
１１２  作業完了フラグ保存部
１１３  推定ステータス保存部
１１４  推定結果保存部
１２  作業ログ保存部
１２１  実施作業手順保存部
１２２  作業エラー情報保存部
【図１】
0005463964.tif 000007
【図２】
0005463964.tif 000008
【図３】
0005463964.tif 000009
【図４】
0005463964.tif 000010
【図５】
0005463964.tif 000011
【図６】
0005463964.tif 000012
【図７】
0005463964.tif 000013
【図８】
0005463964.tif 000014
【図９】
0005463964.tif 000015
【図１０】
0005463964.tif 000016
【図１１】
0005463964.tif 000017
【図１２】
0005463964.tif 000018
【図１３】
0005463964.tif 000019
【図１４】
0005463964.tif 000020
【図１５】
0005463964.tif 000021