(57)【要約】【課題】派遣するサービスマンを容易に選定可能にする。【解決手段】印刷装置のエラー情報、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した印刷装置の保守のために派遣したサービスマンと、を対応付けた教師データを用いて機械学習した学習済モデルを記憶する記憶部と、印刷装置においてエラーが発生すると、前記サービスマン選定情報を取得し、取得した前記サービスマン選定情報と前記学習済モデルとを用いて、エラーが発生した印刷装置の保守のために派遣するサービスマンを選定する制御部と、を備えるサービスマン選定装置を構成する。【選択図】図１
2020129246.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置のエラー情報、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した印刷装置の保守のために派遣したサービスマンと、を対応付けた教師データを用いて機械学習した学習済モデルを記憶する記憶部と、
印刷装置においてエラーが発生すると、前記サービスマン選定情報を取得し、取得した前記サービスマン選定情報と前記学習済モデルとを用いて、エラーが発生した印刷装置の保守のために派遣するサービスマンを選定する制御部と、
を備えるサービスマン選定装置。
【請求項２】
前記推定所要時間情報は、サービスマンが利用できる交通手段と、サービスマンの現在地から印刷装置の所在地までの前記交通手段に関連する交通情報と、を含む、
請求項１に記載のサービスマン選定装置。
【請求項３】
前記推定所要時間情報は、サービスマンが保守作業中である場合には、サービスマンが保守作業を完了するまでの推定残時間を含む、
請求項１または請求項２に記載のサービスマン選定装置。
【請求項４】
選定されたサービスマンへの派遣要請に対する承諾結果に基づいて、前記学習済モデルが再び機械学習される、
請求項１〜請求項３のいずれかに記載のサービスマン選定装置。
【請求項５】
派遣されたサービスマンの保守対応結果に基づいて、派遣されたサービスマンの前記スキル情報が更新される、
請求項１〜請求項４のいずれかに記載のサービスマン選定装置。
【請求項６】
印刷装置のエラー情報、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した印刷装置の保守のために派遣したサービスマンと、を対応付けた教師データを取得し、前記サービスマン選定情報を入力しエラーが発生した印刷装置の保守のために派遣するサービスマンを出力するモデルを前記教師データに基づいて機械学習する制御部を備える機械学習装置。
【請求項７】
印刷装置のエラー情報、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した印刷装置の保守のために派遣したサービスマンと、を対応付けた教師データを取得し、
前記サービスマン選定情報を入力し、エラーが発生した印刷装置の保守のために派遣するサービスマンを出力するモデルを、前記教師データに基づいて機械学習する、
機械学習方法。
【請求項８】
コンピューターを、
印刷装置のエラー情報、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した印刷装置の保守のために派遣したサービスマンと、を対応付けた教師データを用いて機械学習した学習済モデルを記憶する記憶部、
印刷装置においてエラーが発生すると、前記サービスマン選定情報を取得し、取得した前記サービスマン選定情報と前記学習済モデルとを用いて、エラーが発生した印刷装置の保守のために派遣するサービスマンを選定する制御部、
として機能させるサービスマン選定プログラム。
【請求項９】
電子機器のエラー情報、エラーが発生した電子機器の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した電子機器の保守のために派遣したサービスマンと、を対応付けた教師データを用いて機械学習した学習済モデルを記憶する記憶部と、
電子機器においてエラーが発生すると、前記サービスマン選定情報を取得し、取得した前記サービスマン選定情報と前記学習済モデルとを用いて、エラーが発生した電子機器の保守のために派遣するサービスマンを選定する制御部と、
を備えるサービスマン選定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービスマン選定装置、機械学習装置、機械学習方法、サービスマン選定プログラムに関する。
【背景技術】
【０００２】
従来、障害が発生した電子機器にサービスマンを派遣するシステムが知られている。例えば特許文献１には、当該電子機器において発生した障害への対応履歴や対応状況に基づいて、支援要求の通知先（出動対応するサービスマン、電話対応するオペレーター）を決定することが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−２２５４０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、複数のサービスマンの中から、保守作業のために派遣するサービスマンを選定するのが困難であった。
本発明は、派遣するサービスマンを容易に選定可能にすることを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するためのサービスマン選定装置は、印刷装置のエラー情報、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した印刷装置の保守のために派遣したサービスマンと、を対応付けた教師データを用いて機械学習した学習済モデルを記憶する記憶部と、印刷装置においてエラーが発生すると、サービスマン選定情報を取得し、取得したサービスマン選定情報と学習済モデルとを用いて、エラーが発生した印刷装置の保守のために派遣するサービスマンを選定する制御部と、を備える。
【０００６】
本構成における学習済モデルは、サービスマン選定情報と、当該サービスマン選定情報が示す環境において実際に派遣されたサービスマンと、を対応付けた教師データを用いた機械学習によって生成される。本構成によれば、印刷装置においてエラーが発生すると、発生した際に取得したサービスマン選定情報と、学習済モデルとを用いて、複数のサービスマンの中から派遣するサービスマンを容易に選定することができる。
なお、機械学習に用いられる教師データに含まれるサービスマン選定情報と、エラーが発生した際にこれからサービスマンを選定するために取得されるサービスマン選定情報とは、データの構成は共通であるが、データの中身はもちろん異なりうる。
【０００７】
さらに、推定所要時間情報は、サービスマンが利用できる交通手段と、サービスマンの現在地から印刷装置の所在地までの交通手段に関連する交通情報と、を含む構成であってもよい。
本構成によれば、サービスマンが現在地から印刷装置の所在地まで移動するのに要する推定所要時間の精度を高めることができる。
【０００８】
さらに、推定所要時間情報は、サービスマンが保守作業中である場合には、サービスマンが保守作業を完了するまでの推定残時間を含む構成であってもよい。
本構成によれば、サービスマンの現在地（保守作業中の印刷装置の所在地）から印刷装置（保守作業中の印刷装置ではなく、新たに保守作業を必要とする別の印刷装置）の所在地に移動するのに要する推定所要時間の精度を高めることができる。
【０００９】
さらに、選定されたサービスマンへの派遣要請に対する承諾結果に基づいて、学習済モデルが再び機械学習される構成であってもよい。
本構成によれば、サービスマン選定情報がある特徴を有する場合に、あるサービスマンは派遣要請を承諾しないが別のサービスマンは派遣要請を承諾することを学習することができる。その結果、サービスマン選定情報がある特徴を有する場合に、派遣要請を承諾しない可能性があるサービスマンを選定する可能性を低減でき、実際に派遣するサービスマンの決定までに要する時間を短縮可能である。
【００１０】
さらに、派遣されたサービスマンの保守対応結果に基づいて、派遣されたサービスマンのスキル情報が更新される構成であってもよい。
本構成によれば、スキル情報が保守対応結果に基づいて更新されることにより、次回以降のサービスマンの選定の際に、更新されたスキル情報に基づいたサービスマンの選定が可能となる。
【００１１】
さらに、上記目的を達成するための機械学習装置は、印刷装置のエラー情報、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した印刷装置の保守のために派遣したサービスマンと、を対応付けた教師データを取得し、サービスマン選定情報を入力しエラーが発生した印刷装置の保守のために派遣するサービスマンを出力するモデルを教師データに基づいて機械学習する制御部を備える。
本構成によれば、印刷装置の保守のために派遣するサービスマンをサービスマン選定情報に基づいて選定する機械学習モデルを得ることができる。
【００１２】
さらに、上記目的を達成するための機械学習方法は、印刷装置のエラー情報、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した印刷装置の保守のために派遣したサービスマンと、を対応付けた教師データを取得し、サービスマン選定情報を入力し、エラーが発生した印刷装置の保守のために派遣するサービスマンを出力するモデルを、教師データに基づいて機械学習する。
この方法によれば、印刷装置の保守のために派遣するサービスマンをサービスマン選定情報に基づいて選定する機械学習モデルを得ることができる。
【００１３】
さらに、上記目的を達成するためのサービスマン選定プログラムは、コンピューターを、印刷装置のエラー情報、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した印刷装置の保守のために派遣したサービスマンと、を対応付けた教師データを用いて機械学習した学習済モデルを記憶する記憶部、印刷装置においてエラーが発生すると、サービスマン選定情報を取得し、取得したサービスマン選定情報と学習済モデルとを用いて、エラーが発生した印刷装置の保守のために派遣するサービスマンを選定する制御部、として機能させる。
本プログラムを実行することにより、コンピューターは、印刷装置の保守のために派遣するサービスマンをサービスマン選定情報に基づいて選定することができる。
【００１４】
さらに、上記目的を達成するためのサービスマン選定装置は、電子機器のエラー情報、エラーが発生した電子機器の保守作業をサービスマンが実施するまでの推定所要時間に関連するサービスマン毎の推定所要時間情報、サービスマン毎のスキル情報、サービスマン毎の保有部品情報のうちの少なくとも１つのサービスマン選定情報と、エラーが発生した電子機器の保守のために派遣したサービスマンと、を対応付けた教師データを用いて機械学習した学習済モデルを記憶する記憶部と、電子機器においてエラーが発生すると、サービスマン選定情報を取得し、取得したサービスマン選定情報と学習済モデルとを用いて、エラーが発生した電子機器の保守のために派遣するサービスマンを選定する制御部と、を備える。
本構成によれば、電子機器においてエラーが発生すると、発生した際に取得したサービスマン選定情報と、学習済モデルとを用いて、複数のサービスマンの中から派遣するサービスマンを容易に選定することができる。
【図面の簡単な説明】
【００１５】
【図１】サービスマン選定装置（機械学習装置）のブロック図。
【図２】印刷装置ＤＢの一例を示す図。
【図３】サービスマン選定ＤＢの一例を示す図。
【図４】機械学習モデルの入出力の一例を示す模式図。
【図５】機械学習処理のフローチャート。
【図６】保守シーケンスを示すシーケンス図。
【図７】保守シーケンスを示すシーケンス図。
【発明を実施するための形態】
【００１６】
ここでは、下記の順序に従って本発明の実施の形態について説明する。
（１）サービスマン選定装置（機械学習装置）の構成：
（２）サービスマン選定情報の収集：
（３）機械学習処理：
（４）保守シーケンス：
（５）他の実施形態：
【００１７】
（１）サービスマン選定装置（機械学習装置）の構成：
図１は、本発明の実施形態にかかるサービスマン選定装置および機械学習装置としてのサーバー１の構成を示すブロック図である。サーバー１は、インターネット等のネットワークを介して複数の印刷装置と通信可能なコンピューターである。図１では印刷装置１００として図示している。また、サーバー１は、ネットワークを介して複数の携帯端末と通信可能である。携帯端末は、印刷装置の保守作業を行うサービスマンが携帯する端末である。サービスマンは複数人おり、各サービスマンが１台ずつ携帯端末を携帯する。図１では携帯端末２００として図示している。本実施形態においてサーバー１は、いずれかの印刷装置でエラーが発生したことを検知すると、複数のサービスマンの中から当該印刷装置の設置場所に当該印刷装置の保守作業のために派遣するサービスマンを選定する機能を有する。
【００１８】
上述の機能を実現するため、サーバー１は、制御部１０と、記憶部２０と、通信部３０とを含む。制御部１０は、ＣＰＵ，ＲＯＭ，ＲＡＭ等を備え、記憶部２０に記憶された図示しないサービスマン選定プログラムや機械学習プログラム等を含む各種のプログラムを実行することができる。機械学習プログラムを実行することにより、制御部１０は、機械学習に関連した機能を実現することができる。また、サービスマン選定プログラムを実行することにより、制御部１０は、派遣するサービスマンを選定する機能を実現することができる。制御部１０は、ＡＳＩＣやＧＰＵを含む構成であっても良い。
【００１９】
通信部３０は、インターネット等のネットワークを介して他の装置と通信を行うための通信インターフェース回路を含む。制御部１０は、機械学習プログラムやサービスマン選定プログラムを実行することにより、通信部３０を介して、印刷装置１００を含む複数の印刷装置と、携帯端末２００を含む複数の携帯端末と通信することができる。
【００２０】
記憶部２０には、印刷装置ＤＢ２０ａ、サービスマンＤＢ２０ｂが記憶される。印刷装置ＤＢ２０ａは、印刷装置の機体毎の情報を管理するデータベースであり、図２に示すように、機体ＩＤ、型番、所在地、稼働状況、ユーザーＩＤ等が記憶される。サービスマンＤＢ２０ｂは、サービスマン毎の情報を管理するデータベースであり、本実施形態においては、図３に示すように、スキル情報、保有部品情報、ステータス情報を含んでいる。印刷装置ＤＢ２０ａ、サービスマンＤＢ２０ｂの詳細は後述する。また、後述する機械学習に用いられる教師データ２０ｄと、機械学習によって生成される学習済モデル２０ｃが記憶部２０に記憶される。
【００２１】
（印刷装置の構成）
続いて、印刷装置１００の構成について説明する。印刷装置１００は、プロセッサー１１０と、不揮発性メモリー１２０と、通信部１３０と、ＵＩ（User Interface）部１４０と、印刷部１５０と、を備える。プロセッサー１１０は、図示しないＣＰＵ，ＲＯＭ，ＲＡＭ等を備え、不揮発性メモリー１２０に記録された種々のプログラムを実行し印刷装置１００の各部を制御することができる。なお、プロセッサー１１０は、単一のチップで構成されていても良いし、複数のチップで構成されていても良い。また、例えばＣＰＵに変えてＡＳＩＣが採用されても良いし、ＣＰＵとＡＳＩＣとが協働する構成であっても良い。
【００２２】
通信部１３０は、印刷装置１００に装着された各種のリムーバブルメモリーや、有線または無線で印刷装置１００に接続された他の装置と各種の通信プロトコルに従って通信するための通信インターフェース回路を含む。プロセッサー１１０は、通信部１３０を介してサーバー１と通信可能である。
【００２３】
ＵＩ部１４０は、タッチパネル式のディスプレイや、各種のキーやスイッチ等を含む。プロセッサー１１０は、ＵＩ部１４０を介してユーザー（印刷装置１００のユーザー）の操作内容を取得することができる。また、プロセッサー１１０は、ＵＩ部１４０のディスプレイに各種の情報を表示しユーザーに通知することができる。印刷部１５０は、インクジェット方式や電子写真方式等の周知の印刷方式で種々の印刷媒体に印刷を実行するためのアクチュエーターやセンサー、駆動回路、機械部品等を備えている。
【００２４】
（携帯端末の構成）
次に、携帯端末２００の構成について説明する。携帯端末２００は、サービスマンが携帯する端末であり、タブレット端末やスマートフォン等を想定してよい。携帯端末２００は、制御部２１０と、不揮発性メモリー２２０と、通信部２３０と、ＵＩ部２４０と、ＧＮＳＳ受信部２５０と、カメラ２６０を備える。制御部２１０は、図示しないＣＰＵ，ＲＡＭ，ＲＯＭ等を備え、不揮発性メモリー２２０に記録された種々のプログラムを実行し携帯端末２００の各部を制御することができる。通信部２３０は、携帯端末２００に装着された各種のリムーバブルメモリーや、有線または無線で携帯端末２００に接続された他の装置と各種の通信プロトコルに従って通信するための通信インターフェース回路を含む。制御部２１０は、通信部２３０を介してサーバー１と通信可能である。
【００２５】
ＵＩ部２４０は、タッチパネル式のディスプレイや、各種のキーやスイッチ、マイク、スピーカー等を含む。制御部２１０は、ＵＩ部２４０を介してサービスマンの操作内容を取得することができる。また、制御部２１０は、ＵＩ部２４０のディスプレイに各種の情報を表示しサービスマンに通知することができる。また、制御部２１０は、マイクによって集音された音を示す入力音データを取得することができる。また、制御部２１０は、スピーカーから各種の音を発生させることができる。
【００２６】
ＧＮＳＳ受信部２５０は、ＧＮＳＳ（Global Navigation Satellite System）衛星からの電波を受信し、図示しないインターフェースを介して携帯端末の現在地を算出するための信号を出力する。制御部２１０は、ＧＮＳＳ受信部２５０から出力された信号に基づいて携帯端末２００の現在地を定期的に取得する。なお、図示しない無線ＬＡＮアクセスポイントから送信される情報に基づいて現在地が補正されてもよい。制御部２１０は、通信部２３０を介してサーバー１に携帯端末２００の現在地を通知する。カメラ２６０は、携帯端末２００の周囲の画像を撮影することができる。制御部２１０は、サービスマンの操作に応じてカメラ２６０に画像を撮影させる。制御部２１０は、カメラ２６０によってバーコードや２次元コード等を読み取って、バーコードや２次元コードが示す情報に対応する処理を行うことができる。
【００２７】
（２）サービスマン選定情報の収集：
次に、サーバー１の記憶部２０に記憶される印刷装置ＤＢ２０ａやサービスマンＤＢ２０ｂの更新について説明する。印刷装置ＤＢ２０ａにおいては、印刷装置の機体毎に固有の機体ＩＤを割り振され管理されている。サーバー１の制御部１０は、機体ＩＤによって、当該機体の型番や所在地、稼働状況、機体を使用するユーザーのユーザーＩＤ等を取得可能である。例えば、印刷装置のユーザーが保守サービスのユーザー登録をする際に、当該機体の機体ＩＤや型番、所在地、ユーザーＩＤ等が、印刷装置ＤＢ２０ａに登録される。印刷装置の所在地は、住所の形式であってもよいし、座標の形式であってもよい。ユーザー登録等の手続を経て、印刷装置１００はサーバー１と通信が可能となる。例えば、印刷装置１００においてエラーが発生した場合等に印刷装置１００はサーバー１に情報を送信することができる。また例えば、サーバー１は印刷装置１００に対してサービスマンの派遣に関する情報等を通知することができる。
【００２８】
印刷装置１００において障害が発生すると、印刷装置１００の各部の状態をセンシングするセンサーによってプロセッサー１１０はエラーを検知することができる。センシングの結果に応じて、プロセッサー１１０は、エラーの内容を示すエラーコードを特定することができる。エラーコードは、当該エラーコードが示すエラーの保守対応に必要なスキルの分野、保守作業の標準作業時間、保守作業に必要な部品等と相関する。プロセッサー１１０は、特定したエラーコードと印刷装置１００の機体ＩＤを、通信部１３０を介してサーバー１に通知する。機体ＩＤは、印刷装置の機体毎に割り振られた機体の識別情報である。印刷装置１００の機体ＩＤや型番は、ＲＯＭまたは不揮発性メモリー１２０に予め記録されている。
【００２９】
サーバー１の制御部１０は、印刷装置１００から送信されたエラーコードや機体ＩＤを受信すると、印刷装置ＤＢ２０ａ（図２を参照）において、機体ＩＤに対応する稼働状況を更新する。エラーが発生中の機体の稼働状況としては、例えば、発生中のエラーコード、エラーに対する対応状況（サービスマン手配中、機体の所在地に向けてサービスマンが移動中、サービスマンが保守作業中）等を想定してよい。
【００３０】
サービスマンＤＢ２０ｂは、図３に示すように、スキル情報、保有部品情報、サービスマン状態情報を含んでいる。サービスマンＩＤはサービスマンの識別情報である。スキル情報、保有部品情報、サービスマン状態情報は、サービスマンＩＤ毎に記録されている。
【００３１】
印刷装置の型番毎に、印刷装置の保守作業を実施することを認める認定資格が設けられている。例えばサービスマンＳ１が型番ＰＡの認定資格を保有し型番ＰＢの認定資格を保有していない場合、サービスマンＳ１は型番がＰＡの印刷装置の保守作業を行うことができるが型番がＰＢの印刷装置の保守作業を行うことができないことが定められている。本実施形態においては、スキル情報として、サービスマン毎に、印刷装置の型番と、当該型番の認定資格を保有しているか否かを示す情報と、当該型番の印刷装置の保守対応件数と、当該型番の印刷装置の解決件数とが記録される。
【００３２】
保守対応件数は、サービスマンが実際に派遣されて保守作業を行った件数である。解決件数は、サービスマンが実際に派遣されて保守作業を行い、その保守作業によって障害が解決した（エラーが解消した）件数を示している（保守対応件数≧解決件数）。例えば、ある印刷装置の保守のためにあるサービスマンが訪問したが当該訪問時に行った作業では解決できず、後日再訪問して保守作業を行ったことにより解決した場合を例に説明する。この場合、本実施形態においては、保守対応件数は２件（２回分）、解決件数は１件（再訪問分）として扱う。また、本実施形態においては、保守対応件数に占める解決件数の割合を解決率として算出し、後述する機械学習モデルの入力値の１つとする。上述の例の場合、解決率は０．５（５０％）である。
【００３３】
なお、本実施形態において、保守対応件数や解決件数は、型番毎、さらに、当該型番の印刷装置の分野（Ｂ１〜Ｂ３）毎に集計される。分野は、例えば、印刷媒体の搬送機構の分野、印刷ヘッドやキャリッジの分野、ネットワークや通信の分野、等を想定してよい。なお、説明を簡便にするため、本実施形態においては、サービスマンの人数や、印刷装置の型番数、分野数、部品の種類等の数値を３〜５としているが、この数値はあくまで一例であり、実際にはさらに多い数値を想定してよい。
【００３４】
また、保有部品情報として、サービスマンＩＤ毎さらに部品コード毎に、当該部品コードが示す部品の保有数が記録される。サービスマンは自身が携帯する携帯端末を操作して、保有（所持）している部品の部品コードおよび数を入力することができる。保有部品情報において対象とする部品は、印刷装置の保守作業において使用される部品であればよい。例えば印刷装置の交換用の部品、印刷装置を修理するために必要な工具類、印刷装置の動作確認に必要な物品（例…インク、印刷媒体）等を想定してよい。
【００３５】
サービスマンは、部品の補給、保守作業による部品の消費等によって保有部品数が変化すると、各サービスマンは自身が携帯する携帯端末から保有部品数の増減数を入力することで、サービスマンＤＢ２０ｂの保有部品情報が更新される。なおこの入力作業は、例えば部品に印字されたバーコードを携帯端末のカメラ２６０で読み取る等によって自動化されてよい。また、サービスマンが明示的に保有部品数の増減数を入力しなくても、保有部品数の変化が反映される構成であってもよい。例えば、エラーを解消するために使用される（消費される）部品コードおよび数が予め決められており、エラーを解消したことをサービスマンが携帯端末２００を介してサーバー１に通知すると、当該サービスマンの保有部品情報において上述の部品コードの部品数が上述の数だけ減少する構成であってもよい。なお、保有部品情報は、１日に１回更新される構成であってもよい。
【００３６】
また、サービスマン状態情報として、サービスマンＩＤ毎に、現在地、作業状況、交通手段が記録される。サービスマン状態情報における現在地は、サービスマンが携帯する携帯端末２００から現在地を示す情報を受信したことに応じて制御部１０が随時更新する。また制御部１０は、作業状況として、サービスマンの現在の状況と今後の予定を随時更新する。例えば、サービスマンが待機中（派遣要請待機中）の状態で、サーバー１が通知した派遣要請を当該サービスマンが承諾すると、制御部１０は、当該サービスマンの作業状況を、「次の派遣先に向けて移動中」と更新する。また、制御部１０は次の派遣先での対応予定エラーコードも合わせて記録する。
【００３７】
また例えば、サービスマンが派遣先に到着し保守作業を開始したことを検知すると、制御部１０は、当該サービスマンの作業状況を「作業中」に更新する。また制御部１０は、作業中のエラーコードも合わせて記録する。なお、サービスマンが保守作業を開始したか否かは、例えばサービスマンの現在地が次の派遣先の印刷装置の所在地となったことを検知したことによって判定されてもよい。なお、保守作業が開始されると次の派遣先が現派遣先として扱われる。
【００３８】
なお、エラーコード毎に、保守作業の標準作業時間が予め定められている。制御部１０は、サービスマンのスキルレベルに応じた係数を標準作業時間に乗算することによって、当該サービスマンが当該エラーコードのエラーの保守作業に要する予想作業時間を推定する。具体的には例えば、スキルレベルが標準以上のサービスマンの係数を１とし、標準未満のサービスマンの係数を１より大きい値（例えば１．３等）とする。このようにすることで、スキルレベルに応じてサービスマンが保守作業に要する予想作業時間の精度を向上させることができる。なお、エラーコードに応じた標準作業時間は、型番とエラーコードとに応じて過去の実績の時間を収集しておき、その統計値から標準作業時間を設定するようにしてもよい。
【００３９】
例えば、上述の解決率が予め決められた値未満の場合、スキルレベルが標準未満であるとしてもよい。また例えば、上述の保守対応件数が予め決められた値未満の場合に、スキルレベルが標準未満であるとしてもよい。対応件数と解決率との組み合わせに応じて係数が設定されてもよい。このようにして推定した予想作業時間は、派遣要請するサービスマンに通知され、サービスマンが派遣要請を承諾するか否かの判断材料の１つとなる。また、保守作業中のサービスマンについて、次の派遣先への推定所要時間を算出する際に、現派遣先での保守作業の推定残時間の算出に用いられる。例えば、制御部１０は、サービスマンが現派遣先に到着し保守作業を開始したことを検知した時刻から現在時刻までの経過時間を算出し、予想作業時間から経過時間を減算することで、現派遣先での推定残時間を算出する。制御部１０は、推定残時間と、後述する移動時間とを加算することで、当該サービスマンの推定所要時間を算出する。
【００４０】
また、サービスマン状態情報（図３を参照）において、交通手段は、サービスマンが利用可能な交通手段を示す情報である。利用可能な交通手段は、サービスマンが次の派遣先（印刷装置の所在地）に移動するのに要する移動時間を算出するために利用される。なお当該移動時間は、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に含まれる。本実施形態においては自転車と車（四輪）を例として挙げているが、その他にも例えば二輪車、徒歩、公共交通手段（電車等）が含まれてもよい。サービスマンが利用する交通手段に応じて、サービスマンの現在地から派遣先（印刷装置の所在地）への移動時間が異なる。また、交通手段に応じて、移動時間の算出に影響を受けうる交通情報（道路の渋滞情報、公共交通機関の遅延情報等）が異なる。
【００４１】
サービスマンが利用可能な交通手段は、例えば、出動中のサービスマンについては、サービスマンが利用している交通手段であってよい。サービスマンが利用している交通手段は、例えばサービスマンが予め入力する構成であってもよいし、サービスマンの現在地の軌跡と移動速度に基づいて決定する構成であってもよい。なお、例えば、営業所で待機中のサービスマンについては、営業所に残存している交通手段が選択されてよい（自転車が残存していれば自転車、車が残存していれば車、両方残存していれば両方）。また例えば、サービスマンが保持する運転免許の種類に応じて予め制限されてよい。
【００４２】
本実施形態においては、制御部１０は、図示しない経路探索サーバーに経路探索を依頼して上述の移動時間を取得する。制御部１０は、経路探索サーバーに、サービスマンの現在地と、エラーが発生した印刷装置の所在地と、サービスマンの利用可能な交通手段と、を送信して経路探索を依頼する。経路探索サーバーは、交通手段が車の場合、図示しない交通情報センターから受信した渋滞情報（交通情報）に基づいて、サービスマンの現在地から印刷装置の所在地までの経路を探索し、移動時間を取得する。交通手段が公共交通の場合、経路探索サーバーは、公共交通機関から取得した遅延情報（交通情報）に基づいて経路を探索し、移動時間を取得する。なお、利用可能な交通手段が複数ある場合、複数の交通手段の移動時間を取得し、例えば最短の移動時間を採用する構成であってもよい。
【００４３】
なお、上述の経路探索をニューラルネットワークで実装し、移動時間を取得する構成であってもよい。また、サービスマンが利用できる交通手段や、サービスマンの現在地から印刷装置の所在地までの交通手段に関連する交通情報そのものが、ニューラルネットワークモデルの入力データとなる構成であってよい。入力する交通情報としては例えば、サービスマンの現在地周辺の渋滞度（渋滞、混雑、空き）や、印刷装置の所在地周辺の渋滞度（渋滞、混雑、空き）等を想定してよい。
【００４４】
なお、休暇中の（出勤していない）サービスマンについては、次回出勤日および勤務開始時刻までの時間と、出勤場所（例…営業所）から印刷装置の所在地までの移動時間とを加算した時間が推定所要時間として算出される構成であってもよい。このようにすることで、推定所要時間が出勤中の他のサービスマンと比較して長くなるため、休暇中のサービスマンは後述する学習済モデルによって選出されにくくなり、派遣対象外のサービスマンに派遣要請する可能性を低減できる。
【００４５】
印刷装置１００でエラーが発生したことを示す通知を印刷装置１００から受信すると、サーバー１の制御部１０は、以上で説明した各情報に基づいてサービスマン選定情報を生成する。生成されたサービスマン選定情報は、後述する機械学習モデルの入力データとなる。図４は、本実施形態における機械学習モデルの入出力を示す模式図である。本実施形態においては、このような機械学習モデルは、印刷装置の型番毎に生成される。例えば型番がＰＡの印刷装置についてのモデル、型番がＰＢの印刷装置についてのモデル、型番がＰＣの印刷装置についてのモデル等を想定してよい。型番によって認定資格を保持しているサービスマンが異なりうる。図４は、ある型番の印刷装置の認定資格をＳ１〜Ｓ５の５人が保持していた場合の例を示している。この場合、入力層Ｌｉの各ノードに、発生したエラーの内容を示すエラーコードと、Ｓ１〜Ｓ５の各サービスマンについて情報（推定所用時間、分野毎の対応件数と解決率、部品毎の保有数）とが入力される。入力層Ｌｉに入力されるデータがサービスマン選定情報に相当する。またこの場合、出力層Ｌｏの各ノードは、各サービスマン（Ｓ１〜Ｓ５）がそれぞれ対応付けられる。
【００４６】
もちろん、別の型番の印刷装置の認定資格をＳ１〜Ｓ４の４人が保持している場合、当該別の型番の印刷装置についてのモデルには、エラーコードと、Ｓ１〜Ｓ４の各サービスマンについての情報が入力される。出力層Ｌｏのノード数はＳ１〜Ｓ４の４個となる。
【００４７】
（３）機械学習処理：
図５は機械学習処理を示すフローチャートである。機械学習処理は、既定量の教師データ２０ｄが蓄積された後、任意のタイミングで実行されてよい。教師データ２０ｄは、過去にエラーが発生した際に、エラーが発生した印刷装置に実際に派遣されたサービスマンと、エラーが発生した際の当該印刷装置や他のサービスマンを含めたサービスマン全員（エラーが発生した印刷装置の型番の認定資格を保持するサービスマン全員）の状況を示すデータ（すなわちサービスマン選定情報）と、を対応付けたデータである。教師データは、ニューラルネットワークモデルによるサービスマンの選定が導入される以前に蓄積されたデータが含まれてよい。また導入後においては、後述するように、派遣要請の承諾結果や、保守対応結果に応じた再学習のために教師データがさらに蓄積されてよい。
【００４８】
機械学習処理が開始されると、制御部１０は、訓練モデル（不図示）を取得する（ステップＳ３００）。ここで、モデルとは、推定対象のデータと推定結果のデータとの対応関係を導出する式を示す情報である。本実施形態においては、図４に示すように、推定対象のデータがサービスマン選定情報であり、サービスマンが推定結果のデータであるモデルを例にして説明する。
【００４９】
入力データを出力データに変換する限りにおいて、モデルは種々の定義が可能である。図４は本実施形態において利用されるモデルの一例を模式的に示した図である。本実施形態においては、ニューラルネットワークを用いる。同図においては、ニューラルネットワークのノードを白丸で示している。
【００５０】
本実施形態のモデルは、サービスマン選定情報を入力層Ｌｉへの入力データとし、出力層Ｌｏからサービスマンを出力する。出力層Ｌｏの各ノードは、各サービスマン（Ｓ１，Ｓ２，Ｓ３，Ｓ４，Ｓ５）に対応している。出力層Ｌｏの各ノードの出力値の和は１になるように規格化される。出力層Ｌｏにおいて出力値が最も大きいノードに対応するサービスマンが、入力層Ｌｉに入力されたサービスマン選定情報の各データが取得された場合に派遣されるべきサービスマンであると推定可能である。
【００５１】
図４に示すフローチャートにおけるステップＳ１００では、訓練モデルを取得する。ここで、訓練とは、学習対象であることを示す。すなわち、訓練モデルにおいては、サービスマン選定情報の各データを入力し、サービスマンを出力するが、上述のサービスマン選定情報とサービスマンとの対応関係は初期において正確ではない。すなわち、訓練モデルにおいては、ノードが構成する層の数やノードの数は決められるが、入出力の関係を規定するパラメーター（重みやバイアス等）は最適化されていない。これらのパラメーターは、機械学習の過程で最適化される（すなわち、訓練される）。
【００５２】
訓練モデルは、予め決定されていても良いし、サーバー１を操作するオペレーターが、サーバー１が備えるＵＩ部（不図示）を操作して入力することによって取得されても良い。いずれにしても、制御部１０は、図５に示す例のように、サービスマン選定情報に基づいて派遣すべきサービスマンを出力するニューラルネットワークのパラメーターを訓練モデルとして取得する。
【００５３】
次に、制御部１０は、教師データを取得する（ステップＳ３０５）。本実施形態においては、教師データ２０ｄが記憶部２０に記録されている。そこで、制御部１０は、記憶部２０を参照して教師データ２０ｄを取得する。次に、制御部１０は、テストデータを取得する（ステップＳ３１０）。本実施形態においては、教師データ２０ｄから、その一部が抽出されてテストデータになる。テストデータは訓練に利用されない。
【００５４】
次に、制御部１０は、初期値を決定する（ステップＳ３１５）。すなわち、制御部１０は、ステップＳ３００で取得した訓練モデルのうち、可変のパラメーターに対して初期値を与える。初期値は、種々の手法で決定されて良い。例えば、ランダム値や０等を初期値とすることができ、重みとバイアスとで異なる思想で初期値が決定されても良い。むろん、学習の過程でパラメーターが最適化されるように初期値が調整されても良い。
【００５５】
次に、制御部１０は、学習を行う（ステップＳ３２０）。すなわち、制御部１０は、ステップＳ３００で取得した訓練モデルにステップＳ３０５で取得した教師データ２０ｄにおけるサービスマン選定情報を入力し、出力層Ｌｏの出力値を計算する。また、制御部１０は、出力されたサービスマンと教師データ２０ｄが示すサービスマンとの誤差を示す損失関数によって誤差を特定する。そして、制御部１０は、損失関数のパラメーターによる微分に基づいてパラメーターを更新する処理を既定回数繰り返す。例えば、過去にサービスマン（Ｓ１）が派遣された際のサービスマン選定情報と、サービスマン（Ｓ１）と、が対応付けられた教師データがある場合、サービスマン（Ｓ１）が派遣された際のサービスマン選定情報をモデルに入力して得られる出力（Ｓ１，Ｓ２，Ｓ３，Ｓ４，Ｓ５）が（１，０，０，０，０）に近づくようにパラメーターが更新される。
【００５６】
むろん、損失関数は、種々の関数を採用可能であり、例えば、交差エントロピー誤差などを採用可能である。以上のような損失関数を算出する処理は、教師データ２０ｄに含まれるサービスマン選定情報の全てまたは一部について実施され、その平均や総和によって１回の学習における損失関数が表現される。１回の学習における損失関数が得られたら、制御部１０は、既定の最適化アルゴリズム、例えば、確率的勾配降下法等によってパラメーターを更新する。
【００５７】
以上のようにして、既定回数のパラメーターの更新が行われると、制御部１０は、訓練モデルの汎化が完了したか否かを判定する（ステップＳ３２５）。すなわち、制御部１０は、ステップＳ３１０で取得したテストデータが示すサービスマン選定情報を訓練モデルに入力して設定を示す出力を取得する。そして、制御部１０は、出力された設定と、テストデータに対応づけられた設定とが一致している度合いを取得する。本実施形態において、制御部１０は、当該一致している度合いが閾値以上である場合に汎化が完了したと判定する。
【００５８】
なお、汎化性能の評価に加え、ハイパーパラメーターの妥当性の検証が行われてもよい。すなわち、重みとバイアス以外の可変量であるハイパーパラメーター、例えば、ノードの数等がチューニングされる構成において、制御部１０は、検証データに基づいてハイパーパラメーターの妥当性を検証しても良い。検証データは、ステップＳ３１０と同様の処理により、教師データから抽出されても良い。むろん、検証データもテストデータと同様に、訓練には使用されない。
【００５９】
ステップＳ３２５において、訓練モデルの汎化が完了したと判定されない場合、制御部１０は、ステップＳ３２０を繰り返す。すなわち、さらに重みおよびバイアスを更新する。一方、ステップＳ３２５において、訓練モデルの汎化が完了したと判定された場合、制御部１０は、学習済モデルを記録する（ステップＳ３３０）。すなわち、制御部１０は、訓練モデルを学習済モデル２０ｃとして記憶部２０に記録する。以上の構成によれば、印刷装置の保守作業のために派遣すべきサービスマンを選定するためのモデル（学習済モデル２０ｃ）を生産することができる。
【００６０】
（４）保守シーケンス：
次に、図６のシーケンス図を参照しながら、エラー発生からサービスマンの選定と派遣要請を経て保守対応結果を記憶するまでのシーケンスの一例を説明する。印刷装置１００において、プロセッサー１１０がエラーの発生を検知すると（ステップＳ１００）、プロセッサー１１０はエラーコードと機体ＩＤを、サーバー１に送信する（ステップＳ１０５）。すなわちプロセッサー１１０は、センサーの出力に基づいて発生したエラーの内容を示すエラーコードを特定する。プロセッサー１１０は、不揮発性メモリー１２０に記憶された機体ＩＤを取得する。プロセッサー１１０は、エラーコードと機体ＩＤを、通信部１３０を介してサーバー１に送信する。
【００６１】
サーバー１の制御部１０は、印刷装置１００から通信部３０を介してエラーコードと機体ＩＤを受信すると（ステップＳ１１０）、サービスマン選定情報を取得する（ステップＳ１１５）。すなわち、制御部１０は印刷装置ＤＢ２０ａ（図２を参照）を参照し機体ＩＤから印刷装置の型番と所在地を特定する。そして、制御部１０は、サービスマンＤＢ２０ｂ（図３を参照）の各サービスマンのスキル情報を参照し、当該型番の印刷装置の認定資格を保持しているサービスマンを選別する。選別したサービスマンのそれぞれについて、制御部１０は、推定所用時間を算出する。すなわち制御部１０は、サービスマンの現在地から印刷装置の所在地までの経路（サービスマンが利用可能な交通手段による経路）の探索を経路探索サーバーに依頼し、移動時間を取得する。
【００６２】
サービスマンの作業状況（図３を参照）が現派遣先で作業中である場合は、さらに、サービスマンが現派遣先に到着し保守作業を開始したことを検知した時刻から現在時刻までの経過時間を取得する。制御部１０は、現派遣先で作業中のエラーコードに応じた標準作業時間と、サービスマンのスキルレベルとから、当該サービスマンが当該エラーコードの保守作業に要する予想作業時間を算出する。制御部１０は予想作業時間から経過時間を減算して推定残時間を算出する。作業状況が現派遣先で作業中であるサービスマンについては、推定残時間と移動時間とを加算した時間を推定所要時間として算出する。
【００６３】
また制御部１０は、選別したサービスマンのそれぞれについて、スキル情報（図３を参照）を参照し、分野別の保守対応件数と、解決率を取得する。また制御部１０は、選別したサービスマンのそれぞれについて、保有部品情報（図３を参照）を参照し、部品コード毎の保有数を取得する。制御部１０は以上のようにしてサービスマン選定情報を取得する。
【００６４】
続いてサーバー１の制御部１０は、派遣するサービスマンを、学習済モデル２０ｃを用いて選定する（ステップＳ１２０）。すなわち制御部１０は、ステップＳ１１５で取得したサービスマン選定情報を、学習済モデル２０ｃの入力層Ｌｉの各ノードに入力して、出力層Ｌｏの各ノードの出力値を算出する。制御部１０は最も大きい値が出力されたノードに対応するサービスマンを派遣するサービスマンとして選定する。また制御部１０は、選定したサービスマンのスキル情報（図３を参照）を参照し、スキルレベルを取得する。制御部１０は、ステップＳ１１０で受信したエラーコードに対応する標準作業時間とスキルレベルとに基づいて当該サービスマンが当該エラーコードの保守作業を行う場合の予想作業時間を算出する。
【００６５】
続いてサーバー１の制御部１０は、選定したサービスマンの携帯端末に派遣要請を送信する（ステップＳ１２５）。具体的には制御部１０は、ステップＳ１１０で受信した機体ＩＤの印刷装置の所在地、エラーコード（およびエラーの説明）、予想作業時間とともに派遣要請を示す通知をサービスマンの携帯端末に送信する。この例では、サービスマンＳ１が選定されたとして説明を行う。従ってステップＳ１２５では、サービスマンＳ１が携帯する携帯端末２００に派遣要請が送信される。
【００６６】
携帯端末２００の制御部２１０は、サーバー１から派遣要請を受信すると、受信した情報をＵＩ部２４０のディスプレイに表示する（ステップＳ１３０）。すなわち、派遣先の印刷装置の所在地・当該印刷装置で発生しているエラーコード（およびエラーの説明）・予想作業時間等が携帯端末２００のディスプレイに表示される。また、ディスプレイには、この派遣要請を承諾するか否かを選択するための選択部（例…「承諾」ボタンと「断る」ボタン）も表示される。
【００６７】
ディスプレイの表示内容を確認しサービスマンが派遣要請を承諾すると、制御部２１０はその旨をサーバー１に送信する（ステップＳ１４０）。サーバー１の制御部１０は、派遣要請したサービスマンの携帯端末２００から「承諾」を示す通知を受信すると、当該サービスマンの到着予想時刻を算出し、印刷装置に通知する（ステップＳ１４５）。すなわち、制御部１０は、当該サービスマンについてステップＳ１１５で算出した推定所要時間を現在時刻に加算して、到着予想時刻を算出する。制御部１０は、算出した到着予想時刻を、通信部３０を介して印刷装置に送信する。
【００６８】
なお、ステップＳ１２０においては、予想作業時間の他にも到着予想時刻が算出されてもよく、その場合、ステップＳ１２５〜Ｓ１３０では、到着予想時刻も携帯端末に送信されてもよい。また、到着予想時刻や、到着予想時刻に到着するための交通手段がディスプレイに表示されてもよい。こうすることで、利用可能な交通手段が複数あるサービスマンは、どの交通手段で派遣先に移動すればよいかを容易に把握することが可能である。
【００６９】
印刷装置１００のプロセッサー１１０は、サーバー１から受信した到着予想時刻をＵＩ部１４０のディスプレイに表示する（ステップＳ１５０）。従って、印刷装置１００のユーザーは、サービスマンの到着予想時刻を把握することができる。
【００７０】
一方、サービスマンは派遣要請の「承諾」を選択すると、要請された派遣先に向けて移動し（利用可能な交通手段で）、派遣先に到着すると保守作業を開始する。保守作業を完了すると、サービスマンは保守対応結果を携帯端末２００に入力する。保守対応結果が入力されると、携帯端末２００の制御部２１０は、派遣されたサービスマン（当該携帯端末を携帯するサービスマンでありこの例の場合はＳ１）の識別情報とともに保守対応結果をサーバー１に送信する（ステップＳ１５５）。保守対応結果とは、今回の訪問でエラーが解消したか否かを示す情報と、実際の作業時間を示す情報を含む。さらに、消費した部品数等の情報が含まれても良い。
【００７１】
サーバー１の制御部１０は、実際に派遣されたサービスマンとその保守対応結果を受信すると、記憶部２０に記憶する（ステップＳ１６０）。すなわち制御部１０は、受信した保守対応結果に基づいて、印刷装置ＤＢ２０ａの当該印刷装置の稼働状況を「正常稼働中」に更新する。また制御部１０は、サービスマンＤＢ２０ｂにおいて派遣されたサービスマンのスキル情報や保有部品情報を保守対応結果に基づいて更新する。スキル情報や保有部品情報が保守対応結果に基づいて更新されることにより、次回以降のサービスマンの選定の際に、更新されたスキル情報や保有部品情報に基づいたサービスマンの選定が可能となる。
【００７２】
また制御部１０は、サービスマンＤＢ２０ｂにおいて派遣されたサービスマンの作業状況を「作業中」から次の状態に更新する。また制御部１０は、当該サービスマンが選定された際のサービスマン選定情報と、実際に派遣された当該サービスマンと、を対応づけたデータを教師データの１つとして記憶部２０に記憶する。
【００７３】
以上のように、印刷装置においてエラーが発生すると、発生した際に取得したサービスマン選定情報と、学習済モデルとを用いて、複数のサービスマンの中から派遣するサービスマンを容易に選定することができる。
【００７４】
（５）他の実施形態：
以上の実施形態は本発明を実施するための一例であり、印刷装置においてエラーが発生すると、サービスマン選定情報を取得し、取得したサービスマン選定情報と学習済モデルとを用いて、エラーが発生した印刷装置の保守のために派遣するサービスマンを選定する限りにおいて、他にも種々の実施形態を採用可能である。例えば、保守対象の装置は、印刷機能に加えて、画像読取機能やＦＡＸ通信機能等を備えた複合機であってもよい。
【００７５】
上記実施形態においては、学習済モデルからの出力値が最大であったノードに対応するサービスマンに派遣要請し当該サービスマンが派遣要請を承諾した場合のシーケンスを説明した。図７は、派遣要請したサービスマンが派遣要請を承諾しなかった場合のシーケンスの一例を示すシーケンス図である。図７のシーケンス図において、ステップＳ２００〜Ｓ２３０は、図６のステップＳ１００〜Ｓ１３０と共通であるので説明を省略する。ステップＳ２３０では、サービスマンＳ１の携帯端末が、派遣要請と付随する情報をディスプレイに表示する。サービスマンＳ１が携帯端末に「不承諾」を入力すると、サービスマンＳ１の携帯端末の制御部２１０は、サービスマンの「不承諾」を示す通知をサーバー１に送信する（ステップＳ２３５）。
【００７６】
サーバー１の制御部１０は、「不承諾」を受信すると、サービスマンを再選定する（ステップＳ２４０）。すなわち制御部１０は、ステップＳ２２０において選定したサービスマンに対応するノードの出力値の次に大きい値（２番目に大きい値）が出力されているノードに対応するサービスマンを新たに選出する。この例の場合サービスマンＳ２が選定されたとして説明を行う。続くステップＳ２４５〜Ｓ２７５は、新たに選出されたサービスマンＳ２が派遣要請を承諾した場合のシーケンスであり、サーバー１との通信相手は異なるが図６のステップＳ１２５〜Ｓ１５５と同様の流れである。
【００７７】
ステップＳ２７５では、実際に派遣されたサービスマン（すなわちこの場合、Ｓ１ではなくＳ２）と、ステップＳ２１５で取得されたサービスマン選定情報との対応関係が新たな教師データの１つとして記憶部２０に記憶される。この教師データを用いて再学習が実施されてもよい。すなわち、選定されたサービスマンへの派遣要請に対する承諾結果に基づいて、学習済モデルが再び機械学習される構成であってもよい。具体的には、ステップＳ２１５で取得したサービスマン選定情報を学習済モデルに入力した場合に、１番目に選定されたサービスマン（学習済モデルの出力値が最大であったサービスマン（この例の場合Ｓ１））に対応するノードの出力値が０、２番目に選定されたサービスマン（学習済モデルの出力値が２番目に大きかったサービスマン（この例の場合Ｓ２））に対応するノードの出力値が１、その他のサービスマンに対応するノードの出力値が０となるように再学習されてもよい。
【００７８】
このようにすることで、サービスマン選定情報がある特徴を有する場合に、あるサービスマンは派遣要請を承諾しないが別のサービスマンは派遣要請を承諾することを学習することができる。例えば、ある特定のエラーコードの保守作業の派遣要請を、あるサービスマンは断る傾向にある等が学習されることとなる。その結果、サービスマン選定情報がある特徴を有する場合に、派遣要請を承諾しない可能性があるサービスマンを選定する可能性を低減でき、実際に派遣するサービスマンの決定までに要する時間を短縮可能である。
【００７９】
なお、派遣されたサービスマンの保守対応結果に基づいて、学習済モデルが再び機械学習される構成であってもよい。例えば、今回の訪問でエラーが解消しなかった場合や、予想作業時間よりも実際の作業時間が大幅に長かった場合等に、再学習する構成であってもよい。具体的には、ステップＳ２１５で取得したサービスマン選定情報を学習済モデルに入力した場合に、実際に派遣されたサービスマンの次に学習済モデルによって選出されるサービスマンに対応するノードの出力値が１、実際に派遣されたサービスマンに対応するノードの出力値が０、その他のサービスマンに対応するノードの出力値が０となるように再学習されてもよい。このようにすることで、１回の訪問において予想作業時間内でエラーを解消できる可能性が低いサービスマンが選定される可能性を低減することができる。
【００８０】
なお、図４に示す機械学習モデルの入出力は一例であり、エラー発生時のサービスマン選定情報に基づいて派遣するサービスマンを選定することができれば、どのような構成であってもよい。図４の例では、この型番の印刷装置の認定資格を保持するサービスマンが現状５人である場合を想定して５人分の情報を入力し５人のいずれかを出力するモデルが構成されているが今後この型番の印刷装置の認定資格を保有するサービスマンが増加することを想定して、モデルの入力層には、例えば１００人分のサービスマンについての情報を入力層に入力し（現状はいない９５人分については０やＮＵＬＬ等を入力）、出力層の１００個の各ノードには１００人分のサービスマンをそれぞれ対応付けるようにモデルを構成してもよい。
また例えば、モデルは、印刷装置の型番とエラーコードの組み合わせ毎に構築されてもよい。また例えば、モデルは、印刷装置の型番と、エラーコードが属する分野の組み合わせ毎に構築されてもよい。これらの場合、エラーコードはモデルの入力データに含まれなくてもよい。
また例えば、出力層の各ノードにおいて、出力値が閾値（例えば０．９）以上のノードに対応するサービスマンだけを派遣要請の対象とする構成であってもよい。出力値が閾値以上のノードが存在しない場合は、一定時間待機してもよい（誰にも派遣要請しない）。そして待機後に再び取得したサービスマン選定情報をモデルに入力し、その結果、閾値以上の出力値が得られた場合、閾値以上の出力値が得られたノードのうち最も大きい値が出力されたノードに対応するサービスマンに派遣要請する構成であってもよい。
【００８１】
また例えば、モデルの入力層には、任意の１人分のサービスマンの推定所要時間・スキル情報・保有部品情報を入力する構成であってもよい。その場合のモデルの出力ノードは派遣するか否か（１：派遣する、０：派遣しない）を示す値を出力する１個のノードで構成されてもよい。
【００８２】
モデルがこのような構成である場合、印刷装置にエラーが発生すると、サーバー１の制御部１０は、当該印刷装置の認定資格を保持するサービスマンを選別し、さらにそのうち出勤中のサービスマンを選別する。そして制御部１０は、選別した各サービスマンについて推定所要時間、分野別の対応件数・解決率、部品コードごとの保有数を取得する。制御部１０は取得したこれらの情報をサービスマン毎に上述のモデルに入力し、出力値を得る。そして、最も大きい値が出力ノードに出力された場合の、入力層への入力情報に対応するサービスマンを派遣するサービスマンとして選定してもよい。
【００８３】
また例えば、モデルの入力層には、任意の１人分のサービスマンの推定所要時間・スキル情報・保有部品情報を入力する構成であってもよい。その場合の出力層は、各サービスマン（エラーが発生した印刷装置の型番の認定資格を有する各サービスマン）に対応するノードで構成されてもよい。
【００８４】
また、推定所要時間情報は、エラーが発生した印刷装置の保守作業をサービスマンが実施するまでの推定所要時間に関連する情報であればよく、種々の構成を想定可能である。例えば、図４に示すように推定所要時間そのものであってもよいし、推定所要時間を間接的に示す情報であってもよい。例えば、モデルの入力データには、印刷装置の所在地や所在地が含まれるエリア（地区）を示す情報が含まれても良い。また、モデルの入力データには、推定所要時間のうちの移動時間を算出するための交通手段を示す情報やサービスマンの現在地が含まれても良い。またモデルの入力データには、推定残時間が含まれてもよい。なお、推定所要時間には、移動時間や、作業中の保守作業の推定残時間以外の時間が含まれてもよい。例えば、休憩中のサービスマンについては、休憩時間の残時間が含まれてもよい。
【００８５】
また、エラー情報には、エラーコード以外にも、例えばエラーが発生した際の状況（例えば、直近のユーザーの操作履歴、印刷装置の動作履歴、使用頻度、気温、湿度、エラー発生時刻等）を示す情報等が含まれてもよい。また、これらの情報がモデルの入力データに含まれてもよい。
【００８６】
さらに、本発明のように、印刷装置においてエラーが発生すると、サービスマン選定情報を取得し、取得したサービスマン選定情報と学習済モデルとを用いて、エラーが発生した印刷装置の保守のために派遣するサービスマンを選定する手法は、プログラムや方法としても適用可能である。また、以上のようなシステム、プログラム、サービスマン選定方法、機械学習方法は、単独の装置として実現される場合もあれば、複数の装置が備える部品を利用して実現される場合もあり、各種の態様を含むものである。また、一部がソフトウェアであり一部がハードウェアであったりするなど、適宜、変更可能である。さらに、システムを制御するプログラムの記録媒体としても発明は成立する。むろん、そのプログラムの記録媒体は、磁気記録媒体であってもよいし半導体メモリーであってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。
【００８７】
なお、上述の実施形態においては、印刷装置を保守対象の装置としているが、プロジェクターやロボットなど他の電子機器において発生したエラーに対しても本発明を適用してサービスマンを派遣し保守を行うようにしてもよい。
【符号の説明】
【００８８】
１…サーバー、１０…制御部、２０…記憶部、２０ｃ…学習済モデル、２０ｄ…教師データ、３０…通信部、１００…印刷装置、１１０…プロセッサー、１２０…不揮発性メモリー、１３０…通信部、１４０…ＵＩ部、１５０…印刷部、２００…携帯端末、２１０…制御部、２２０…不揮発性メモリー、２３０…通信部、２４０…ＵＩ部、２５０…ＧＮＳＳ受信部、２６０…カメラ、２０ａ…印刷装置ＤＢ、２０ｂ…サービスマンＤＢ
【図１】
2020129246.tif 000003
【図２】
2020129246.tif 000004
【図３】
2020129246.tif 000005
【図４】
2020129246.tif 000006
【図５】
2020129246.tif 000007
【図６】
2020129246.tif 000008
【図７】
2020129246.tif 000009