(57)【特許請求の範囲】
【請求項１】
監視対象のシステム内の各リソースの現在の状態に基づいて、当該各リソースの後の状態を予測し、予測結果を出力するリソース状態予測装置であって、
前記監視対象のシステムから各リソースの測定値を収集し、リソース毎に予め定められた閾値を用いてそれぞれの測定値を複数の状態のいずれかに離散化する測定値収集手段と、
前記測定値収集手段によって収集され離散化された各リソースの状態を、当該リソースが測定された時刻に対応付けて保持するリソース状態保持手段と、
連続する２つの時刻の各リソースの状態を前記リソース状態保持手段から順次読み出してそれぞれの時刻毎に１列に並べ、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、前の時刻の各リソースの状態において、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とし、後の時刻の各リソースの状態において、当該対象となるセルの状態を出力状態とする遷移ルールを、全てのセルのそれぞれを対象として抽出する遷移ルール抽出手段と、
前記遷移ルール抽出手段によって抽出された遷移ルールの中で、同一の入力状態となる遷移ルール毎に、異なる出力状態となる割合を算出し、最も高い割合となる出力状態を、当該遷移ルールにおける出力状態として採用し、採用された出力状態を含む複数の遷移ルールで構成される遷移関数を作成する遷移関数作成手段と、
現在時刻から、各リソースの状態を予測すべき時刻までの時間の入力を受け付ける受付手段と、
現在時刻から前記受付手段を介して入力された時間が経過するまでに、各リソースの測定値が測定される回数である測定回数を算出する測定回数算出手段と、
現在の各リソースの状態を前記測定値保持手段から順次読み出して１列に並べ、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とする遷移ルールを、前記遷移関数作成手段によって作成された遷移関数から抽出し、抽出した遷移ルールに含まれている出力状態を、当該対象となるセルの次の時刻における状態として算出する処理を、全てのセルのそれぞれを対象として実行する次状態予測手段と
を備え、
前記次状態予測手段は、さらに、
前記遷移関数を参照して、算出した各リソースの次の状態から、各リソースのさらに次の状態を算出する処理を、前記測定回数算出手段によって算出された測定回数−１回繰り返し、最終的に算出された各リソースの状態を、前記受付手段を介して入力された時間が経過した後の各リソースの状態として外部へ出力すること
を特徴とするリソース状態予測装置。
【請求項２】
請求項１に記載のリソース状態予測装置であって、
前記測定値収集手段は、
所定時間毎に収集した各リソースの測定値を、リソース毎に予め定められた閾値を用いて２つの状態のいずれかに離散化し、
前記遷移ルール抽出手段は、
前の時刻の各リソースの状態において、対象となるセルを中心とする、連続して隣り合う３つのセル毎に、当該３つのセルのそれぞれの状態を入力状態とし、後の時刻の各リソースの状態において、当該対象となるセルの状態を出力状態とする遷移ルールを、全てのセルのそれぞれを対象として抽出し、
前記次状態予測手段は、
対象となるセルを中心とする、連続して隣り合う３つのセル毎に、当該３つのセルのそれぞれの状態を入力状態とする遷移ルールを、前記遷移関数作成手段によって作成された遷移関数から抽出し、抽出した遷移ルールに含まれている出力状態を、当該対象となるセルの次の時刻における状態として算出する処理を、全てのセルのそれぞれを対象として実行することを特徴とするリソース状態予測装置。
【請求項３】
請求項１に記載のリソース状態予測装置であって、
前記遷移関数作成手段は、
遷移ルール毎に採用された出力状態の割合を参照し、遷移関数を構成する複数の遷移ルールの中で、予め定められた割合以上となっている出力状態を含む遷移ルールの割合を、遷移関数の確からしさを示す尤度としてさらに算出して当該遷移関数と共に出力し、
前記次状態予測手段は、
前記遷移関数作成手段によって算出された遷移関数の尤度を、前記受付手段を介して入力された時間が経過した後の各リソースの状態を示す情報と共に外部へ出力することを特徴とするリソース状態予測装置。
【請求項４】
請求項３に記載のリソース状態予測装置であって、
前記遷移ルール抽出手段は、
前記遷移関数の尤度が予め定められた値未満である場合に、前記リソース状態保持手段からさらに前の各リソースの状態を読み出し、前記連続する２つの時刻の各リソースの状態において、前の時刻の各リソースの状態を後の時刻の各リソースの状態とし、読み出したさらに前の各リソースの状態を前の時刻の各リソースの状態として、さらに遷移ルールを抽出し、
前記遷移関数作成手段は、
前記遷移関数の尤度が予め定められた値未満である場合に、前記遷移ルール抽出手段によってさらに抽出された遷移ルールをさらに用いて、同一の入力状態となる遷移ルール毎に、異なる出力状態となる割合を算出することを特徴とするリソース状態予測装置。
【請求項５】
請求項１に記載のリソース状態予測装置であって、
リソース毎に、他のリソースとの距離を示す情報を保持する距離情報保持手段をさらに備え、
前記遷移ルール抽出手段および前記次状態予測手段は、
各リソースの状態を前記リソース状態保持手段から順次読み出して１列に並べる際に、前記距離情報保持手段を参照して、隣り合うリソース間の距離が最小となるように各リソースの状態を並べることを特徴とするリソース状態予測装置。
【請求項６】
請求項１に記載のリソース状態予測装置であって、
リソースの状態が変化した場合のコスト値と、リソースの状態が変化しなかった場合のコスト値とを保持するコスト情報保持手段と、
リソース毎に、現在の各リソースの状態と、前記次状態予測手段によって算出された、前記受付手段を介して入力された時間が経過した後の各リソースの状態とから、前記コスト情報保持手段を参照して、リソース毎にコスト値を算出し、算出したコスト値を合計することによりリスク値を算出し、算出したリスク値を外部へ出力するリスク値出力手段と
をさらに備えることを特徴とするリソース状態予測装置。
【請求項７】
請求項１に記載のリソース状態予測装置であって、
リソース毎に、当該リソースが属するグループを識別するグループＩＤを保持するグループ情報保持手段をさらに備え、
前記遷移ルール抽出手段は、
前記グループ情報保持手段を参照して、同一のグループに属する複数のリソース毎に遷移ルールを抽出し、
前記遷移関数作成手段は、
前記グループ情報保持手段を参照して、同一のグループに属する複数のリソース毎に遷移関数を作成し、
前記次状態予測手段は、
前記グループ情報保持手段を参照して、同一のグループに属する複数のリソース毎に前記受付手段を介して入力された時間が経過した後の各リソースの状態を出力することを特徴とするリソース状態予測装置。
【請求項８】
監視対象のシステム内の各リソースの現在の状態に基づいて、当該各リソースの後の状態を予測し、予測結果を出力するリソース状態予測装置におけるリソース状態予測方法であって、
前記リソース状態予測装置は、
前記監視対象のシステムから各リソースの測定値を収集し、リソース毎に予め定められた閾値を用いてそれぞれの測定値を複数の状態のいずれかに離散化して、当該リソースが測定された時刻に対応付けてリソース状態保持手段に格納する測定値収集ステップと、
連続する２つの時刻の各リソースの状態を前記リソース状態保持手段から順次読み出してそれぞれの時刻毎に１列に並べ、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、前の時刻の各リソースの状態において、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とし、後の時刻の各リソースの状態において、当該対象となるセルの状態を出力状態とする遷移ルールを、全てのセルのそれぞれを対象として抽出する遷移ルール抽出ステップと、
前記遷移ルール抽出ステップにおいて抽出した遷移ルールの中で、同一の入力状態となる遷移ルール毎に、異なる出力状態となる割合を算出し、最も高い割合となる出力状態を、当該遷移ルールにおける出力状態として採用し、採用された出力状態を含む複数の遷移ルールで構成される遷移関数を作成する遷移関数作成ステップと、
現在時刻から、各リソースの状態を予測すべき時刻までの時間の入力を受け付ける受付ステップと、
現在時刻から前記受付ステップにおいて受け付けた時間が経過するまでに、各リソースの測定値が測定される回数である測定回数を算出する測定回数算出ステップと、
現在の各リソースの状態を前記測定値保持手段から順次読み出して１列に並べ、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とする遷移ルールを、前記遷移関数作成ステップにおいて作成した遷移関数から抽出し、抽出した遷移ルールに含まれている出力状態を、当該対象となるセルの次の時刻における状態として算出する処理を、全てのセルのそれぞれを対象として実行する次状態予測ステップと
を実行し、
前記リソース状態予測装置は、前記次状態予測ステップにおいて、さらに、
前記遷移関数を参照して、算出した各リソースの次の状態から、各リソースのさらに次の状態を算出する処理を、前記測定回数算出ステップにおいて算出した測定回数−１回繰り返し、最終的に算出された各リソースの状態を、前記受付ステップにおいて受け付けた時間が経過した後の各リソースの状態として外部へ出力することを特徴とするリソース状態予測方法。
【請求項９】
コンピュータを、監視対象のシステム内の各リソースの現在の状態に基づいて、当該各リソースの後の状態を予測し、予測結果を出力するリソース状態予測装置として機能させるプログラムであって、
前記コンピュータに、
前記監視対象のシステムから各リソースの測定値を収集し、リソース毎に予め定められた閾値を用いてそれぞれの測定値を複数の状態のいずれかに離散化する測定値収集機能、
前記測定値収集機能によって収集され離散化された各リソースの状態を、当該リソースが測定された時刻に対応付けて保持するリソース状態保持機能、
連続する２つの時刻の各リソースの状態を前記リソース状態保持機能から順次読み出してそれぞれの時刻毎に１列に並べ、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、前の時刻の各リソースの状態において、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とし、後の時刻の各リソースの状態において、当該対象となるセルの状態を出力状態とする遷移ルールを、全てのセルのそれぞれを対象として抽出する遷移ルール抽出機能、
前記遷移ルール抽出機能によって抽出された遷移ルールの中で、同一の入力状態となる遷移ルール毎に、異なる出力状態となる割合を算出し、最も高い割合となる出力状態を、当該遷移ルールにおける出力状態として採用し、採用された出力状態を含む複数の遷移ルールで構成される遷移関数を作成する遷移関数作成機能、
現在時刻から、各リソースの状態を予測すべき時刻までの時間の入力を受け付ける受付機能、
現在時刻から前記受付機能を介して入力された時間が経過するまでに、各リソースの測定値が測定される回数である測定回数を算出する測定回数算出機能、および、
現在の各リソースの状態を前記測定値保持機能から順次読み出して１列に並べ、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とする遷移ルールを、前記遷移関数作成機能によって作成された遷移関数から抽出し、抽出した遷移ルールに含まれている出力状態を、当該対象となるセルの次の時刻における状態として算出する処理を、全てのセルのそれぞれを対象として実行する次状態予測機能
を実現させ、
前記次状態予測機能は、さらに、
前記遷移関数を参照して、算出した各リソースの次の状態から、各リソースのさらに次の状態を算出する処理を、前記測定回数算出機能によって算出された測定回数−１回繰り返し、最終的に算出された各リソースの状態を、前記受付機能を介して入力された時間が経過した後の各リソースの状態として外部へ出力することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の計算機リソースを持つ制御対象システムから収集された各リソースの利用率を用いて、所定時間後の各リソースの利用率を予測することにより、各リソースの容量に不足が生じると予測される場合は追加分を、余剰が生じると予測される場合は返上分を算出する技術に関する。
【背景技術】
【０００２】
通信ネットワーク技術の進歩に伴って、複数の計算機システムをネットワークで連携することにより並列的に運用する統合システムが数多く存在するようになった。システムを統合することにより、処理の負荷を分散できること、計算機リソースをシステム間で互いに融通することでリソースの余剰や不足を抑制できること等のメリットがある。これらのメリットを確実に享受するには、計算機リソースに対する動的なニーズを的確に予測する必要がある。
【０００３】
なぜなら、この予測が正確でなければ、処理の負荷をシステム間で分散する比率を誤り、その結果、どこかでリソース不足が生じ、これが引き金となってシステムダウンが起きる可能性があるからである。ネットワークを介して計算機システムが連携しているとシステムダウンが連鎖的に広がることも考えられ、期待した統合のメリットが大きな損害に転じてしまうことさえあり得る。したがって、計算機リソースの動的なニーズの予測は、ネットワーク統合システムにおける中心的な課題である。
【０００４】
そのような課題に対処する技術として、例えば下記の特許文献１には、過去の計算機リソースの稼働履歴と、現在の計算機リソースの稼動状態とから、所定期間後の負荷の状態を予測している。
【０００５】
【特許文献１】特開平１１−２６１７０２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、監視対象のシステムが大規模になると、計算機リソースの数が膨大になり、監視対象システムから収集されるデータ数が膨大になる。上記の特許文献１では、それぞれの計算機リソースについて、過去に複数回測定された稼働履歴を用いて予測を行っているため、全体のデータ量が膨大な量となる。
【０００７】
また、上記の特許文献１では、１つの計算機リソースの状態について予測を行っているが、システム全体を考えると、多数の計算機リソースについて、所定期間後の状態を予測する必要がある場合がある。この場合、上記の特許文献１では、個々の計算機リソース毎に所定期間後の状態を予測することになり、処理負荷が高くなる場合がある。監視対象のシステムが大規模になると、計算機リソースの数が膨大になり、さらに処理負荷が高くなる場合がある。
【０００８】
本発明は上記事情を鑑みてなされたものであり、本発明の目的は、計算機リソースの動的なニーズを予測する際の処理負荷を低く抑えると共に、予測計算に必要なデータの量を少なくすることにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明は、連続する２つの時点の各リソースの測定値を、それぞれの測定値をリソース毎に予め定められた閾値により複数の状態のいずれかに離散化してそれぞれの時点の測定値毎に１列に並べ、それぞれのリソースの状態を１つのセルとみなして、セルオートマトンの因果関係モデルを導入し、前の時点において連続して隣り合う所定数のセル毎に、当該所定数のセルの状態から、後の時点において当該連続して隣り合う所定数のセルの中の１つのセルの状態への遷移ルールを逆算し、算出した遷移ルールを用いて所定時間後の各リソースの状態を予測する。
【００１０】
例えば、本発明は、監視対象のシステム内の各リソースの現在の状態に基づいて、当該各リソースの後の状態を予測し、予測結果を出力するリソース状態予測装置であって、
前記監視対象のシステムから各リソースの測定値を収集し、リソース毎に予め定められた閾値を用いてそれぞれの測定値を複数の状態のいずれかに離散化する測定値収集手段と、
前記測定値収集手段によって収集され離散化された各リソースの状態を、当該リソースが測定された時刻に対応付けて保持するリソース状態保持手段と、
連続する２つの時刻の各リソースの状態を前記リソース状態保持手段から順次読み出してそれぞれの時刻毎に１列に並べ、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、前の時刻の各リソースの状態において、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とし、後の時刻の各リソースの状態において、当該対象となるセルの状態を出力状態とする遷移ルールを、全てのセルのそれぞれを対象として抽出する遷移ルール抽出手段と、
前記遷移ルール抽出手段によって抽出された遷移ルールの中で、同一の入力状態となる遷移ルール毎に、異なる出力状態となる割合を算出し、最も高い割合となる出力状態を、当該遷移ルールにおける出力状態として採用し、採用された出力状態を含む複数の遷移ルールで構成される遷移関数を作成する遷移関数作成手段と、
現在時刻から、各リソースの状態を予測すべき時刻までの時間の入力を受け付ける受付手段と、
現在時刻から前記受付手段を介して入力された時間が経過するまでに、各リソースの測定値が測定される回数である測定回数を算出する測定回数算出手段と、
現在の各リソースの状態を前記測定値保持手段から順次読み出して１列に並べ、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とする遷移ルールを、前記遷移関数作成手段によって作成された遷移関数から抽出し、抽出した遷移ルールに含まれている出力状態を、当該対象となるセルの次の時刻における状態として算出する処理を、全てのセルのそれぞれを対象として実行する次状態予測手段と
を備え、
前記次状態予測手段は、さらに、
前記遷移関数を参照して、算出した各リソースの次の状態から、各リソースのさらに次の状態を算出する処理を、前記測定回数算出手段によって算出された測定回数−１回繰り返し、最終的に算出された各リソースの状態を、前記受付手段を介して入力された時間が経過した後の各リソースの状態として外部へ出力すること
を特徴とするリソース状態予測装置を提供する。
【発明の効果】
【００１１】
本発明のリソース状態予測装置によれば、計算機リソースの動的なニーズを予測する際の処理負荷を低く抑えると共に、予測計算に必要なデータの量を少なくすることができる。
【発明を実施するための最良の形態】
【００１２】
まず、本発明の第１の実施形態について説明する。
【００１３】
図１は、本発明の一実施形態に係る制御システム１０の構成を示すシステム構成図である。制御システム１０は、自律制御装置１３、監視対象システム１４、リソース変更量算出装置２０、およびリソース状態予測装置３０を備える。監視対象システム１４は、インターネット等の通信回線１２を介して複数のクライアントコンピュータ１１へ所定のサービスを提供する。自律制御装置１３、監視対象システム１４、リソース変更量算出装置２０、およびリソース状態予測装置３０は、管理用の通信回線を介して接続されている。
【００１４】
監視対象システム１４は、自律制御装置１３によって管理されるシステムであり、複数の計算機リソース（例えばサーバ１４０）が相互接続されて構成される。それぞれのサーバ１４０は、ＣＰＵ（Central Processing Unit）等の演算機能、メモリもしくはハードディスク等の記憶機能、または、通信機能等を有する複数のリソース１４３もしくはリソース１４４を備える。監視対象システム１４には、通信回線１２を介してクライアントコンピュータ１１に提供されるサービスを実現するために十分な量の計算機リソースが、システム設計者等により予め設定されて配置接続される。
【００１５】
それぞれのサーバ１４０は、稼動中のリソース１４１の他にリソースプール１４２を有し、自律制御装置１３からの指示に応じて、リソースプール１４２内のリソース１４４を稼動中のリソース１４１に追加させたり、稼動中のリソース１４１内のリソース１４３をリソースプール１４２へ返上させたりする。これにより、監視対象システム１４は、クライアントコンピュータ１１へのサービス提供を維持すると共に、監視対象システム１４内のリソースを有効活用する。なお、監視対象システム１４内には、稼動しているサーバ１４０の他に稼動していないサーバ１４０が設けられ、自律制御装置１３からの指示に応じて、サーバ１４０を稼動させたり、退避させたりしてもよい。
【００１６】
自律制御装置１３は、監視対象システム１４内の各リソースの使用率を測定値として取得し、予め定められた制御ポリシに従って、それぞれのリソースの追加／返上を監視対象システム１４に指示する。また、自律制御装置１３は、各リソースの所定時間後の状態の予測結果に基づく各リソースの変更量および当該予測結果の確からしさを示す尤度を通知された場合に、当該尤度を用いて、当該変更量を使って監視対象システム１４を制御するか否かを判定し、当該変更量を使って監視対象システム１４を制御すると判定した場合には、当該変更量に基づいて監視対象システム１４を制御する。
【００１７】
リソース状態予測装置３０は、監視対象システム１４内の各リソースの使用率を測定値として取得し、取得した測定値に基づいて、ユーザから指定された時間が経過した後の各リソースの状態を予測する。そして、リソース状態予測装置３０は、予測結果を、当該予測結果に用いられた遷移関数の尤度と共にリソース変更量算出装置２０へ送る。
【００１８】
リソース変更量算出装置２０は、リソース状態予測装置３０から受け取った予測結果に基づいて、現状を維持するために必要な各リソースの変更量を算出し、算出した変更量を、リソース状態予測装置３０から受け取った遷移関数の尤度と共に自律制御装置１３へ送る。
【００１９】
図２は、第１実施形態におけるリソース状態予測装置３０の機能構成の一例を示すブロック図である。リソース状態予測装置３０は、表示部３００、リソース状態保持部３０１、遷移ルール抽出部３０２、遷移関数作成部３０３、次状態予測部３０４、測定値収集部３０５、閾値情報保持部３０６、受付部３０７、および測定回数算出部３０８を備える。
【００２０】
閾値情報保持部３０６には、例えば図３に示すように、それぞれのリソースを識別するリソースＩＤ３０６０毎に、対応するリソースの測定値に適用される閾値３０６１が格納されている。測定値収集部３０５は、監視対象システム１４からリソース毎に測定値および当該測定値が測定された時刻を取得する。本実施形態において、測定値収集部３０５が監視対象システム１４から取得する測定値は各リソースの利用率であり、それぞれの測定値は所定の時間間隔毎（例えば１分毎）に測定される。
【００２１】
測定値収集部３０５は、リソース毎に閾値情報保持部３０６を参照して、取得した測定値を複数の状態のいずれかに離散化し、離散化した各リソースの状態を、当該状態の元となる測定値が測定された時刻を示す情報に対応付けてリソース状態保持部３０１に格納する。本実施形態において、測定値収集部３０５は、リソース毎に、監視対象システム１４から取得した測定値が閾値情報保持部３０６に格納されている閾値以上である場合には、当該リソースの状態を１とし、閾値未満である場合には、当該リソースの状態を０と離散化する。
【００２２】
リソース状態保持部３０１には、例えば図４に示すように、測定値収集部３０５によってリソースの状態が収集された時刻を示す識別子３０１１毎に、それぞれのリソースＩＤ３０１０に対応するリソースの状態を示す値が格納されている。図４に示す例において、「Ｔ０」は、現在の各リソースの状態が収集された時刻を示しており、「Ｔ−１」は、「Ｔ０」よりも前に測定値が測定された時刻を示している。
【００２３】
測定値収集部３０５は、新たな時刻に対応する各リソースの測定値を離散化すると、「Ｔ−４」の状態を削除すると共に、「Ｔ０」〜「Ｔ−３」を左へ１つずつずらし、「Ｔ０」に新たな時刻に対応する各リソースの状態を格納することにより、リソース状態保持部３０１内のデータを更新する。なお、本実施形態において、リソース状態保持部３０１には過去５つの時点の各リソースの状態が格納されているが、リソース状態保持部３０１には過去２つ以上の各リソースの状態が格納されていればよい。
【００２４】
受付部３０７は、キーボードやマウス等の入力装置１６を介して、予測すべき時点までの時間を示す予測時間、および、遷移関数を作成する時間間隔を示す作成時間を含む予測指示を、リソース状態予測装置３０のユーザから受け付けた場合に、予測時間を測定回数算出部３０８へ送ると共に、作成時間を含む遷移ルールの収集開始指示を遷移ルール抽出部３０２へ送る。
【００２５】
測定回数算出部３０８は、受付部３０７から予測時間を受け取った場合に、当該予測時間内に、各リソースの測定値が測定される回数である測定回数を算出し、算出した測定回数を次状態予測部３０４へ送る。本実施形態において、監視対象システム１４は、１分毎に各リソースの測定値を測定しており、測定回数算出部３０８は、受付部３０７から受け取った予測時間を１分で割った商を測定回数として算出する。
【００２６】
遷移ルール抽出部３０２は、遷移ルールの収集開始指示を受付部３０７から受け取った場合に、当該収集開始指示に含まれている作成時間毎に、連続する２つの時刻の各リソースの状態をリソース状態保持部３０１から順次読み出す。本実施形態において、遷移ルール抽出部３０２は、時刻Ｔ０における各リソースの状態（すなわち現在の各リソースの状態）と、時刻Ｔ−１における各リソースの状態とをリソース状態保持部３０１から読み出す。
【００２７】
そして、遷移ルール抽出部３０２は、図５に示すように、それぞれのリソースの状態をセルオートマトンにおける１つのセルとみなし、それぞれの時刻毎に各リソースの状態を示す情報を１列に並べる。図５に示した例において、無地のセルは０の状態を示し、網掛けのセルは１の状態を示している。
【００２８】
そして、遷移ルール抽出部３０２は、前の時刻の各リソースの状態において、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とすると共に、後の時刻の各リソースの状態において、当該対象となるセルの状態を出力状態とする遷移ルールを抽出する。
【００２９】
本実施形態において、遷移ルール抽出部３０２は、前の時刻の各リソースの状態において、連続して隣り合う３個のセル毎に、当該３個のセルのそれぞれの状態を入力状態とする。また、遷移ルール抽出部３０２は、対象となるセルを、当該３個のセルの中央のセルとし、後の時刻の各リソースの状態において、当該対象となるセルの状態を出力状態とする。遷移ルール抽出部３０２によって全てのセルを対象として抽出された遷移ルール４０は、例えば図６に示すようになる。遷移ルール抽出部３０２は、全てのセルを対象として抽出した遷移ルールを遷移関数作成部３０３へ送る。
【００３０】
なお、リソース１を対象として遷移ルールを抽出する場合、遷移ルール抽出部３０２は、前の時刻の各リソースの状態として、リソースｎ、リソース１、およびリソース２を用いる。また、リソースｎを対象として遷移ルールを抽出する場合、遷移ルール抽出部３０２は、時刻の各リソースの状態として、リソースｎ−１、リソースｎ、およびリソース１を用いる。
【００３１】
また、遷移ルール抽出部３０２は、遷移関数作成部３０３から遷移ルールの再抽出を指示された場合に、図７に示すように、さらに前の時刻の各リソースの状態をリソース状態保持部３０１から順次読み出し、前の時刻の各リソースの状態と、読み出したさらに前の時刻の各リソースの状態とから、それぞれのセルを対象とする遷移ルールを再度抽出し、再度抽出した遷移ルールを遷移関数作成部３０３へ送る。
【００３２】
遷移関数作成部３０３は、遷移ルール抽出部３０２から遷移ルールを受け取った場合に、例えば図８に示すように、入力状態が同一となる遷移ルール毎に、それぞれの出力状態となる割合を算出する。図８に示す例では、前の状態４２において、左のセル４２０が「０」、中央のセル４２１が「０」、右のセル４２２が「０」である場合、中央のセルの後の状態４３は全て「０」となることが示されており、前の状態４２において、左のセル４２０が「０」、中央のセル４２１が「１」、右のセル４２２が「１」である場合、中央のセルの後の状態４３は、「０」となる割合が７０％であり、「１」となる割合が３０％であることが示されている。
【００３３】
遷移関数作成部３０３は、それぞれの遷移ルールにおいて、最も高い割合となる出力状態を当該遷移ルールにおける出力状態として採用し、採用された出力状態を含む複数の遷移ルールを用いて遷移関数を作成する。遷移関数作成部３０３によって作成された遷移関数４４は例えば図９のようになる。そして、遷移関数作成部３０３は、出力状態の割合がリソース状態予測装置３０の管理者等によって予め設定された第１の閾値（例えば８０％）以上となっている遷移ルールの割合を、作成した遷移関数の確からしさを示す尤度として算出する。図８に示した例において第１の閾値が８０％である場合、遷移関数作成部３０３は、図９に示した遷移関数４４の尤度を、７÷８×１００＝８７．５％と算出する。
【００３４】
そして、遷移関数作成部３０３は、算出した遷移関数の尤度が、リソース状態予測装置３０の管理者等によって予め設定された第２の閾値（例えば７０％）以上となっているか否かを判定する。算出した遷移関数の尤度が第２の閾値以上である場合、遷移関数作成部３０３は、算出した遷移関数を、算出した尤度と共に次状態予測部３０４へ送る。
【００３５】
一方、算出した遷移関数の尤度が第２の閾値未満である場合、遷移関数作成部３０３は、遷移ルールの再抽出を遷移ルール抽出部３０２に指示する。その後、遷移ルール抽出部３０２から新たな遷移ルールを受け取った場合、遷移関数作成部３０３は、受け取った遷移ルールを、遷移ルール抽出部３０２から前回受け取った遷移ルールと統合して、入力状態が同一となる遷移ルール毎に、それぞれの出力状態となる割合を算出する。このように、遷移関数の尤度が所定値以上となるまで遷移ルールの抽出を繰り返すため、リソース状態予測装置３０は、算出される遷移関数の精度を高めることができる。
【００３６】
次状態予測部３０４は、測定回数算出部３０８から測定回数を受け取った場合に、現在の各リソースの状態をリソース状態保持部３０１から順次読み出す。そして、次状態予測部３０４は、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とする遷移ルールを、遷移関数作成部３０３から受け取った遷移関数から抽出する。
【００３７】
そして、次状態予測部３０４は、抽出した遷移ルールに含まれている出力状態を、当該対象となるセルの次の時刻における状態として算出する。次状態予測部３０４は、図１０に示すように、全てのセルのそれぞれを対象とし、現在の各リソースの状態を初期状態として、遷移関数作成部３０３から受け取った遷移関数を用いて各リソースの次の状態を求める処理を、測定回数算出部３０８から受け取った測定回数分繰り返すことにより、ユーザから指示された時点における各リソースの状態を予測する。
【００３８】
そして、次状態予測部３０４は、例えば図１１に示すような予測結果５０を作成し、作成した予測結果５０をリソース変更量算出装置２０および表示部３００へ送る。予測結果５０には、リソースＩＤ５１毎に、対応するリソースの現在の状態５２、および対応するリソースの予測状態５３が、予測状態５３の算出に用いられた遷移関数の尤度５４と共に格納されている。なお、次状態予測部３０４は、遷移関数作成部３０３によって新たな遷移関数が算出されるまでは、遷移関数作成部３０３によって前回算出された遷移関数を用いて、ユーザから指示された時点における各リソースの状態を予測する。
【００３９】
このように、本実施形態のリソース状態予測装置３０は、各リソースの状態を予測するために作成すべき遷移関数は１つでよいため、従来のように複数のリソースのそれぞれについて、それぞれのリソースの測定値の挙動を表す近似式を求めるような処理を行う必要が無く、処理負荷を低く抑えることができる。また、遷移関数を求めるためには、最低２つの異なる時刻において測定された各リソースの測定値があればよいため、従来のように、それぞれのリソースについて何十、何百という測定値の履歴を保持しておく必要が無い。従って、必要なメモリ容量を少なくすることができる。
【００４０】
表示部３００は、次状態予測部３０４によって予測された各リソースの状態と、測定値収集部３０５によって収集された各リソースの実際の状態とを、例えば図１２に示すような予測結果画面６０として表示装置１５に表示する。図１２に示す予測結果画面６０において、領域６１には、各リソースのリソースＩＤが表示され、領域６２には、各リソースの状態が表示され、領域６３には、各リソースにおいて予測された状態と実際の状態とが一致している割合を示す予測成功率が表示される。
【００４１】
予測結果画面６０において、ボタン６４またはボタン６５が操作されると、表示部３００は、より古い各リソースの状態、または、より新しい各リソースの状態を表示装置１５に表示する。また、ボタン６６またはボタン６７が操作されると、表示部３００は、画面に表示されていない他のリソースの状態を表示装置１５に表示する。
【００４２】
予測結果画面６０を閲覧することにより、リソース状態予測装置３０のユーザは、リソース状態予測装置３０による予測の精度を視覚的に認識することができる。また、リソース状態予測装置３０のユーザは、予測結果画面６０を閲覧することにより、予測が失敗しやすいリソースを見つけることができる。
【００４３】
図１３は、リソース変更量算出装置２０の機能構成の一例を示すブロック図である。リソース変更量算出装置２０は、変更量取得部２１、リソース変更量算出部２２、およびリソース情報保持部２３を備える。
【００４４】
リソース情報保持部２３には、例えば図１４に示すように、リソースＩＤ２３０毎に、当該リソースＩＤ２３０に対応するリソースの種別２３１、当該リソースの変更が可能か否かを示す制御２３２、および当該リソースの現時点での全体量２３３が格納されている。追加または返上が可能なリソースについては、制御２３２の欄に○が格納され、追加または返上が不可能なリソースについては、制御２３２の欄に×が格納される。
【００４５】
変更量取得部２１は、実際に変更したリソースの量を自律制御装置１３から受け取った場合に、対応するリソースについて、リソース情報保持部２３内の全体量２３３を更新する。
【００４６】
リソース変更量算出部２２は、図１１に示した予測結果５０をリソース状態予測装置３０から受信した場合に、現在の状態と予測状態とを比較して、状態が変化しているリソースのリソースＩＤを特定する。そして、リソース変更量算出部２２は、変化リソース抽出部２３を参照して、特定したリソースＩＤに対応するリソースが追加または返上が可能なリソースである場合に、現在の状態が「１」で、予測状態が「０」であるものについては、リソースを返上すべきと判定し、現在の状態が「０」で、予測状態が「１」であるものについては、リソースを追加すべきと判定する。
【００４７】
次に、リソース変更量算出部２２は、変化リソース抽出部２３を参照して、追加または返上させるリソースの量を、状態が変化しているそれぞれのリソースについて算出する。本実施形態において、リソース変更量算出部２２は、予め定められた割合（例えば１０％）に対応する量を、追加または返上させるリソースの量として算出する。例えば、リソース変更量算出部２２は、図１４において、リソースＩＤが「０００２」のリソースについては、５Ｇビット×１０％＝５００Ｍビットを追加するリソースの量として算出する。
【００４８】
そして、リソース変更量算出部２２は、状態が変化しており、かつ、リソースの追加または返上が可能なそれぞれのリソースについて算出した、追加または返上すべきリソースの量を、リソース状態予測装置３０から受け取った予測結果５０に含まれている尤度と共に自律制御装置１３へ送る。これを受け取った自律制御装置１３は、例えば、尤度が予め定められた値（例えば９０％）以上の場合に、リソース変更量算出装置２０から受け取った、追加または返上すべきリソースの量に基づいて監視対象システム１４を制御する。
【００４９】
ここで、本実施形態における自律制御では、監視対象システム１４が望ましい負荷状態（各リソースの利用率があまり高すぎず、多少の負荷の上昇にも対応可能な状態であると共に、各リソースの利用率があまり低すぎず、各リソースの利用効率が高い状態）で稼動している場合に、その負荷状態を維持するように制御する。すなわち、リソース状態予測装置３０のユーザは、監視対象システム１４が望ましい負荷状態にあるときに所定時間後の各リソースの負荷状態をリソース状態予測装置３０に予測させ、リソース変更量算出装置２０は、リソース状態予測装置３０の予測結果から、監視対象システム１４の負荷状態を、前記望ましい負荷状態へ戻すためのリソースの変更量を自律制御装置１３へ提供する。
【００５０】
図１５は、第１実施形態における制御システム１０の動作の一例を示すフローチャートである。各リソースの状態を予測すべき時点までの時間を示す予測時間、および、遷移関数を作成する時間間隔を示す作成時間を含む予測指示を、ユーザから受け付けた場合に、制御システム１０は、本フローチャートに示す動作を開始する。なお、リソース状態予測装置３０の測定値収集部３０５による測定値の収集、および、リソース変更量算出装置２０の変更量取得部２１によるリソースの変更量の取得に関する処理は、随時実行されているものとする。
【００５１】
まず、受付部３０７は、予測時間を測定回数算出部３０８へ送ると共に、作成時間を含む遷移ルールの収集開始指示を遷移ルール抽出部３０２へ送る。そして、遷移ルール抽出部３０２は、作成時間をカウントするためのタイマをリセットする（Ｓ１００）。
【００５２】
次に、測定回数算出部３０８は、受付部３０７から受け取った予測時間内に、各リソースの測定値が測定される回数である測定回数を算出し、算出した測定回数を次状態予測部３０４へ送る（Ｓ１０１）。そして、リソース状態予測装置３０は、予測時間が経過した後の各リソースの状態を予測する予測処理を実行し、予測結果をリソース変更量算出装置２０へ出力する（Ｓ２００）。予測処理の詳細については後述する。
【００５３】
次に、リソース変更量算出部２２は、リソース状態予測装置３０から受信した予測結果に含まれている現在の状態と予測状態とを比較して、状態が変化しているリソースのリソースＩＤを特定し、特定したリソースＩＤについて、変化リソース抽出部２３を参照して、追加または返上させるリソースの量を、状態が変化しているそれぞれのリソースについて算出する（Ｓ１０２）。そして、リソース変更量算出部２２は、状態が変化しているそれぞれのリソースについて算出した、追加または返上すべきリソースの量を、リソース状態予測装置３０から受け取った予測結果５０に含まれている尤度と共に自律制御装置１３へ送る。
【００５４】
次に、自律制御装置１３は、例えば、尤度が予め定められた値以上か否かを判定することにより、リソース変更量算出装置２０によって算出されたリソースの変更量を採用するか否かを判定する（Ｓ１０３）。リソース変更量算出装置２０によって算出されたリソースの変更量を採用する場合（Ｓ１０３：Ｙｅｓ）、自律制御装置１３は、リソース変更量算出装置２０によって算出されたリソースの変更量に従って監視対象システム１４内の各リソースの量を変更し（Ｓ１０４）、リソース状態予測装置３０は、再びステップＳ２００に示した処理を実行する。
【００５５】
一方、リソース変更量算出装置２０によって算出されたリソースの変更量を採用しない場合（Ｓ１０３：Ｎｏ）、自律制御装置１３は、制御システム１０の運用管理者によって予め設定された制御ポリシに従って監視対象システム１４内の各リソースの量を制御し（Ｓ１０５）、リソース状態予測装置３０は、再びステップＳ２００に示した処理を実行する。
【００５６】
図１６は、第１実施形態における予測処理（Ｓ２００）の一例を示すフローチャートである。
【００５７】
まず、遷移ルール抽出部３０２は、作成時間をカウントするためのタイマを参照して、遷移関数を作成するタイミングとなったか否かを判定する（Ｓ２０１）。遷移関数の作成タイミングである場合（Ｓ２０１：Ｙｅｓ）、遷移ルール抽出部３０２は、タイマをリセットする（Ｓ２０２）。そして、遷移ルール抽出部３０２は、連続する２つの時刻それぞれの各リソースの状態をリソース状態保持部３０１から順次読み出す（Ｓ２０３）。
【００５８】
次に、遷移ルール抽出部３０２は、図５で説明したように、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、それぞれの時刻毎に各リソースの状態を示す情報を１列に並べ、前の時刻の各リソースの状態において、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とすると共に、後の時刻の各リソースの状態において、当該対象となるセルの状態を出力状態とする遷移ルールを抽出する。そして、遷移ルール抽出部３０２は、全てのセルを対象として抽出した遷移ルール（図６参照）を遷移関数作成部３０３へ送る（Ｓ２０４）。
【００５９】
次に、遷移関数作成部３０３は、図８で説明したように、入力状態が同一となる遷移ルール毎に、それぞれの出力状態となる割合を算出する。そして、遷移関数作成部３０３は、それぞれの遷移ルールにおいて、最も高い割合となる出力状態を当該遷移ルールにおける出力状態として採用し、採用された出力状態を含む複数の遷移ルールを用いて遷移関数を作成する（Ｓ２０５）。
【００６０】
次に、遷移関数作成部３０３は、出力状態の割合がリソース状態予測装置３０の管理者等によって予め設定された第１の閾値（例えば８０％）以上となっている遷移ルールの割合を、作成した遷移関数の確からしさを示す尤度として算出する。そして、遷移関数作成部３０３は、算出した遷移関数の尤度が、リソース状態予測装置３０の管理者等によって予め設定された第２の閾値（例えば７０％）以上となっているか否かを判定する（Ｓ２０６）。
【００６１】
算出した遷移関数の尤度が第２の閾値以上である場合（Ｓ２０６：Ｙｅｓ）、遷移関数作成部３０３は、算出した遷移関数を、算出した尤度と共に次状態予測部３０４へ送る。次状態予測部３０４は、それぞれのリソースをセルオートマトンにおける１つのセルとみなし、対象となるセルを含む、連続して隣り合う所定数のセル毎に、当該所定数のセルのそれぞれの状態を入力状態とする遷移ルールを、遷移関数作成部３０３から受け取った遷移関数から抽出する。
【００６２】
そして、次状態予測部３０４は、抽出した遷移ルールに含まれている出力状態を、当該対象となるセルの次の時刻における状態として算出する。次状態予測部３０４は、図１０で説明したように、全てのセルのそれぞれを対象とし、現在の各リソースの状態を初期状態として、遷移関数作成部３０３から受け取った遷移関数を用いて各リソースの次の状態を求める処理を、測定回数算出部３０８から受け取った測定回数分繰り返すことにより、ユーザから指示された時点における各リソースの状態を予測する（Ｓ２０７）。
【００６３】
次に、次状態予測部３０４は、図１１に例示した予測結果５０を作成し、作成した予測結果５０をリソース変更量算出装置２０および表示部３００へ送る（Ｓ２０８）。表示部３００は、次状態予測部３０４によって予測された各リソースの状態と、測定値収集部３０５によって収集された各リソースの実際の状態とを、図１２に示したような予測結果画面６０として表示装置１５に表示し（Ｓ２０９）、リソース状態予測装置３０は、本フローチャート示す予測処理（Ｓ２００）を終了する。
【００６４】
なお、ステップＳ２０１において、遷移関数の作成タイミングではない場合（Ｓ２０１：Ｎｏ）、次状態予測部３０４は、遷移関数作成部３０３によって前回作成された遷移関数を用いて、ユーザから指示された時点における各リソースの状態を予測し（Ｓ２１３）、次状態予測部３０４は、ステップＳ２０８に示した処理を実行する。
【００６５】
また、ステップＳ２０６において、算出した遷移関数の尤度が第２の閾値未満である場合（Ｓ２０６：Ｎｏ）、遷移関数作成部３０３は、遷移ルールの再抽出を遷移ルール抽出部３０２に指示する。そして、遷移ルール抽出部３０２は、さらに前の時刻における各リソースの測定値がリソース状態保持部３０１内に存在するか否かを判定する（Ｓ２１０）。
【００６６】
さらに前の時刻における各リソースの測定値がリソース状態保持部３０１内に存在する場合（Ｓ２１０：Ｙｅｓ）、遷移ルール抽出部３０２は、図７で説明したように、さらに前の時刻の各リソースの状態をリソース状態保持部３０１から順次読み出す（Ｓ２１２）。そして、遷移ルール抽出部３０２は、ステップＳ２０４において、前の時刻の各リソースの状態と、さらに前の時刻の各リソースの状態とから、それぞれのセルを対象とする遷移ルールを再度抽出する。
【００６７】
一方、さらに前の時刻における各リソースの測定値がリソース状態保持部３０１内に存在しない場合（Ｓ２１０：Ｎｏ）、遷移ルール抽出部３０２は、表示装置１５等を介してユーザにエラーを通知し（Ｓ２１１）、リソース状態予測装置３０は、本フローチャート示す予測処理（Ｓ２００）を終了する。なお、さらに前の時刻における各リソースの測定値がリソース状態保持部３０１内に存在しない場合（Ｓ２１０：Ｎｏ）、今回の処理において遷移関数は作成されないが、次状態予測部３０４は前回作成された遷移関数を引き続き用いて所定時間後の各リソースの状態を予測することができる。
【００６８】
以上、本発明の第１の実施形態について説明した。
【００６９】
上記説明から明らかなように、本実施形態のリソース状態予測装置３０によれば、計算機リソースの動的なニーズを予測する際の処理負荷を低く抑えると共に、予測計算に必要なデータの量を少なくすることができる。
【００７０】
次に、本発明の第２の実施形態について説明する。
【００７１】
図１７は、第２実施形態におけるリソース状態予測装置３０の機能構成の一例を示すブロック図である。リソース状態予測装置３０は、表示部３００、リソース状態保持部３０１、遷移ルール抽出部３０２、遷移関数作成部３０３、次状態予測部３０４、測定値収集部３０５、閾値情報保持部３０６、受付部３０７、測定回数算出部３０８、および機器構成情報保持部３０９を備える。
【００７２】
なお、以下に説明する点を除き、図１７において、図２と同じ符号を付した構成は、図２における構成と同一または同様の機能を有するため説明を省略する。本実施形態のリソース状態予測装置３０は、機器構成情報保持部３０９を備える点が第１の実施形態のリソース状態予測装置３０とは異なる。
【００７３】
機器構成情報保持部３０９には、例えば図１８に示すように、リソースＩＤ３０９０毎に、当該リソースＩＤ３０９０に対応するリソースの名称３０９１、および、当該リソースに隣接している他のリソースのＩＤを示す隣接リソースＩＤ３０９２が格納されている。機器構成情報保持部３０９内のデータは、監視対象システム１４の設計者等によって予め設定される。
【００７４】
ここで、隣接しているとは、同一基板上に配置されたＣＰＵとメモリのように物理的に近い位置に配置されている状態だけでなく、物理的に離れた場所に配置されていたとしても、通信回線を介して互いに通信するサーバ等のように、一方の状態が他方の状態に与える影響が大きい状態にあることを意味する。リソース間の隣接関係は、例えば図１９に示すように、それぞれのリソースを示すノード７０と、リソースどうしが隣接していることを示すリンク７１とで表される。なお、図１９に示したリソース間の隣接関係を示す図は、監視対象システム１４の設計者によって予め定められている。
【００７５】
遷移ルール抽出部３０２は、遷移ルールの収集開始指示を受付部３０７から受け取った場合に、機器構成情報保持部３０９を参照して、リソースを１列に並べたときにリソース間の距離が最小となるように、各リソースの位置を入れ替える。例えば、図１９に示したリソースの関係を、１つのリンク７１を距離１としてマトリクス７２を作ると、例えば図２０のようになる。リソースＡ〜Ｆを１列に並べたときにリソース間の距離が最小となるようにするためには、距離が０のみで構成される対角成分の右隣の成分（図２０の点線の成分）の距離の合計が最小となるようにリソースの位置を入れ替えればよい。
【００７６】
図２０の例では、リソースＢとリソースＥとを入れ替えた後に、リソースＢとリソースＤとを入れ替え、その後に、リソースＦとリソースＤとを入れ替えることにより、対角成分の右隣の成分の距離の合計を最小にすることができる。このような操作により、対角成分の右隣の成分の距離の合計が最小となったマトリクス７３を図示すると、例えば図２１のようになる。
【００７７】
遷移ルール抽出部３０２は、リソース間の距離が最小となるようにリソースの位置を入れ替えた後に、遷移ルールの収集開始指示に含まれている作成時間毎に、連続する２つの時刻の各リソースの状態をリソース状態保持部３０１から順次読み出して遷移ルールを抽出する。その後のリソース状態予測装置３０の処理については、第１の実施形態と同様である。
【００７８】
このように、関連性の高いリソースを近い位置に配置してセルオートマトンを適用することにより、現実のシステムの挙動により近い状態遷移を再現することができる。これにより、作成される遷移関数の精度を高めることができる。
【００７９】
図２２は、第２実施形態における制御システム１０の動作の一例を示すフローチャートである。なお、以下に説明する点を除き、図２２において、図１５と同じ符号を付した処理は、図１５における処理と同一または同様であるため説明を省略する。
【００８０】
ステップＳ１０１において、測定回数算出部３０８が測定回数を算出した後、遷移ルール抽出部３０２は、機器構成情報保持部３０９を参照して、リソースを１列に並べたときにリソース間の距離が最小となるように、各リソースの位置を入れ替え（Ｓ１１０）、リソース状態予測装置３０は、予測処理を実行する（Ｓ２００）。
【００８１】
以上、本発明の第２の実施形態について説明した。
【００８２】
次に、本発明の第３の実施形態について説明する。
【００８３】
図２３は、第３実施形態におけるリソース状態予測装置３０の機能構成の一例を示すブロック図である。リソース状態予測装置３０は、表示部３００、リソース状態保持部３０１、遷移ルール抽出部３０２、遷移関数作成部３０３、次状態予測部３０４、測定値収集部３０５、閾値情報保持部３０６、受付部３０７、測定回数算出部３０８、リスク値算出部３１０、およびコスト情報保持部３１１を備える。
【００８４】
なお、以下に説明する点を除き、図２３において、図２と同じ符号を付した構成は、図２における構成と同一または同様の機能を有するため説明を省略する。本実施形態のリソース状態予測装置３０は、リスク値算出部３１０およびコスト情報保持部３１１を備える点が第１の実施形態のリソース状態予測装置３０とは異なる。
【００８５】
コスト情報保持部３１１には、例えば図２４に示すように、リソースの状態変化の有無を示す状態変化３１１０毎に、コスト値３１１１が格納されている。コスト値とは、リソースの状態に変化があった場合については、当該変化を是正するように制御する際に発生するコストであり、リソースの状態が変化しなかった場合には、当該状態を維持する際に発生するコストである。
【００８６】
次状態予測部３０４は、作成した予測結果（図１１参照）を、リソース変更量算出装置２０、表示部３００、およびリスク値算出部３１０へ送る。リスク値算出部３１０は、次状態予測部３０４から予想結果を受け取った場合に、コスト情報保持部３１１を参照して、リソース毎に、現在の状態と予測状態とからコスト値を算出する。そして、リスク値算出部３１０は、算出したコスト値を全てのリソースについて合計することによりリスク値を算出し、算出したリスク値をリソース変更量算出装置２０へ送る。
【００８７】
リソース変更量算出装置２０のリソース変更量算出部２２は、次状態予測部３０４から受け取ったリスク値を、状態が変化しているそれぞれのリソースについて算出した、追加または返上すべきリソースの量、および、次状態予測部３０４から受け取った遷移関数の尤度と共に自律制御装置１３へ送る。
【００８８】
これを受け取った自律制御装置１３は、例えば、下記のような（１）式を用いて、パラメータｋを算出し、算出したパラメータｋが予め定められた値（例えば３０）以上の場合に、リソース変更量算出装置２０から受け取った、追加または返上すべきリソースの量に基づいて監視対象システム１４を制御する。
【００８９】
【数１】
0004932749.tif 000002
例えば、予測結果に従ってリソースの変更を行ったとしても、遷移関数の尤度が低ければ、予測が外れて無駄な制御を行ってしまう場合がある。また、遷移関数の尤度がそれほど低くない場合であっても、リスク値が高ければ、予測結果が誤っていた場合の損失が大きくなる場合がある。リソース状態予測装置３０は、予測結果に従って監視対象システム１４のリソースの量を変更するか否かを判定するための判断材料として、遷移関数の尤度だけでなく、リスク値も算出して自律制御装置１３に提供する。これにより自律制御装置１３は、より多くの観点で、リソース変更量算出装置２０からのリソースの変更量を採用するか否かを判定することができる。
【００９０】
図２５は、第３実施形態における予測処理（Ｓ２００）の一例を示すフローチャートである。なお、以下に説明する点を除き、図２５において、図１６と同じ符号を付した処理は、図１６における処理と同一または同様であるため説明を省略する。
【００９１】
ステップＳ２０７またはＳ２１３に示した処理が実行された後、リスク値算出部３１０は、コスト情報保持部３１１を参照して、リソース毎に、現在の状態と予測状態とからコスト値を算出する（Ｓ２２０）。そして、次状態予測部３０４は、作成した予測結果をリソース変更量算出装置２０および表示部３００へ送り、リスク値算出部３１０は、算出したコスト値をリソース変更量算出装置２０へ送る（Ｓ２２１）。その後、表示部３００は、ステップＳ２０９に示した処理を実行する。
【００９２】
以上、本発明の第３の実施形態について説明した。
【００９３】
次に、本発明の第４の実施形態について説明する。
【００９４】
第４の実施形態におけるリソース状態予測装置３０は、図１７を用いて説明した第２の実施形態におけるリソース状態予測装置３０と同様の構成である。ただし、機器構成情報保持部３０９に格納されるデータの内容が一部異なっており、それに伴って、遷移ルール抽出部３０２、遷移関数作成部３０３、および次状態予測部３０４の処理が一部異なっている。
【００９５】
機器構成情報保持部３０９には、例えば図２６に示すように、リソースＩＤ３０９０毎に、当該リソースＩＤ３０９０に対応するリソースの名称３０９１、および、当該リソースが属するグループを識別するグループＩＤ３０９３が格納されている。グループとは、例えば、サーバ等の１台の装置に組み込まれているリソース群、同一の業務過程に割り当てられているリソース群、あるいは、同一のサービスの実行に割り当てられているリソース群等である。機器構成情報保持部３０９内のデータは、監視対象システム１４の設計者等によって予め設定される。
【００９６】
遷移ルール抽出部３０２は、遷移ルールの収集開始指示を受付部３０７から受け取った場合に、遷移ルールの収集開始指示に含まれている作成時間毎に、機器構成情報保持部３０９を参照して、同一のグループＩＤに対応付けられているリソース毎に、連続する２つの時刻の各リソースの状態をリソース状態保持部３０１から順次読み出して遷移ルールを抽出する。そして、遷移ルール抽出部３０２は、抽出した遷移ルールを、同一のグループＩＤに対応付けられているリソース毎に遷移関数作成部３０３へ送る。
【００９７】
遷移関数作成部３０３は、同一のグループＩＤに対応付けられているリソース毎に、遷移関数を作成し、作成した遷移関数を、次状態予測部３０４へ送る。次状態予測部３０４は、同一のグループＩＤに対応付けられているリソース毎に、遷移関数作成部３０３によって作成された遷移関数を用いて、ユーザから指示された時点における各リソースの状態を予測する。
【００９８】
関連性の高いリソースを同一のグループとすることにより、現実のシステムの挙動により近い状態遷移を再現することができる。これにより、作成される遷移関数の精度を高めることができる。
【００９９】
図２７は、第４実施形態における予測処理（Ｓ２００）の一例を示すフローチャートである。なお、以下に説明する点を除き、図２７において、図１６と同じ符号を付した処理は、図１６における処理と同一または同様であるため説明を省略する。
【０１００】
ステップＳ２０２においてタイマをリセットした後、遷移ルール抽出部３０２は、機器構成情報保持部３０９を参照して、未選択のグループを１つ選択し（Ｓ２３０）、選択したグループに属するリソースについて、連続する２つの時刻それぞれの各リソースの状態をリソース状態保持部３０１から順次読み出す（Ｓ２０３）。
【０１０１】
また、ステップＳ２０６において、遷移関数作成部３０３によって算出された遷移関数の尤度が第２の閾値以上である場合（Ｓ２０６：Ｙｅｓ）、遷移関数作成部３０３は、作成した遷移関数を、対応するグループのグループＩＤおよび算出した尤度と共に次状態予測部３０４へ送る。次状態予測部３０４は、リソース状態保持部３０１を参照して、遷移関数作成部３０３から受け取ったグループＩＤに対応付けられているリソースについて、遷移関数作成部３０３から受け取った遷移関数を用い、ユーザから指示された時点における各リソースの状態を予測する（Ｓ２３１）。
【０１０２】
ステップＳ２３１において、選択中のグループに属するリソースの状態が予測されるか、または、ステップＳ２１１において、遷移ルール抽出部３０２によってエラーが通知された後、遷移ルール抽出部３０２は、リソース状態保持部３０１を参照して、全てのグループを選択したか否かを判定する（Ｓ２３２）。
【０１０３】
全てのグループが選択された場合（Ｓ２３２：Ｙｅｓ）、次状態予測部３０４は、ユーザから指示された時点における各リソースの状態および遷移関数の尤度を含む予測結果を作成する（Ｓ２０８）。いずれかのグループが選択されていない場合（Ｓ２３２：Ｎｏ）、遷移ルール抽出部３０２は、再びステップＳ２３０に示した処理を実行する。
【０１０４】
また、ステップＳ２０１において、遷移関数の作成タイミングではない場合（Ｓ２０１：Ｎｏ）、次状態予測部３０４は、リソース状態保持部３０１を参照し、グループ毎に、遷移関数作成部３０３によって前回作成された遷移関数を用いて、ユーザから指示された時点における各リソースの状態を予測し（Ｓ２３３）、ステップＳ２０８に示した処理を実行する。
【０１０５】
以上、本発明の第４の実施形態について説明した。
【０１０６】
なお、上記した各実施形態におけるリソース状態予測装置３０は、例えば図２８に示すような構成のコンピュータ８０によって実現される。図２８は、リソース状態予測装置３０の機能を実現するコンピュータ８０の一例を示すハードウェア構成図である。コンピュータ８０は、ＣＰＵ（Central Processing Unit）８１、ＲＡＭ（Random Access Memory）８２、ＲＯＭ（Read Only Memory）８３、ＨＤＤ（Hard Disk Drive）８４、通信インターフェイス（Ｉ／Ｆ）８５、入出力インターフェイス（Ｉ／Ｆ）８６、およびメディアインターフェイス（Ｉ／Ｆ）８７を備える。
【０１０７】
ＣＰＵ８１は、ＲＯＭ８３またはＨＤＤ８４に格納されたプログラムに基づいて動作し、各部の制御を行う。ＲＯＭ８３は、コンピュータ８０の起動時にＣＰＵ８１が実行するブートプログラムや、コンピュータ８０のハードウェアに依存するプログラム等を格納する。ＨＤＤ８４は、ＣＰＵ８１によって実行されるプログラムを格納する。通信インターフェイス８５は、通信回線を介して他の機器からデータを受信してＣＰＵ８１へ送ると共に、ＣＰＵ８１が生成したデータを、通信回線を介して他の機器へ送信する。
【０１０８】
ＣＰＵ８１は、入出力インターフェイス８６を介して、表示装置１５および入力装置１６を制御する。ＣＰＵ８１は、入出力インターフェイス８６を介して、入力装置１６からデータを取得する。また、ＣＰＵ８１は、生成したデータを、入出力インターフェイス８６を介して表示装置１５へ出力する。
【０１０９】
メディアインターフェイス８７は、記録媒体８８に格納されたプログラムまたはデータを読み取り、ＲＡＭ８２を介してＣＰＵ８１に提供する。ＣＰＵ８１は、当該プログラムを、メディアインターフェイス８７を介して記録媒体８８からＲＡＭ８２上にロードし、ロードしたプログラムを実行する。記録媒体８８は、例えばＤＶＤ（Digital Versatile Disk）、ＰＤ（Phase change rewritable Disk）等の光学記録媒体、ＭＯ（Magneto-Optical disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【０１１０】
コンピュータ８０が第１の実施形態のリソース状態予測装置３０として機能する場合、コンピュータ８０のＣＰＵ８１は、ＲＡＭ８２上にロードされたプログラムを実行することにより、表示部３００、リソース状態保持部３０１、遷移ルール抽出部３０２、遷移関数作成部３０３、次状態予測部３０４、測定値収集部３０５、閾値情報保持部３０６、受付部３０７、および測定回数算出部３０８の各機能を実現する。また、ＲＡＭ８２またはＨＤＤ８４には、リソース状態保持部３０１および閾値情報保持部３０６内のデータが格納される。
【０１１１】
また、コンピュータ８０が第２または第４の実施形態のリソース状態予測装置３０として機能する場合、コンピュータ８０のＣＰＵ８１は、ＲＡＭ８２上にロードされたプログラムを実行することにより、表示部３００、リソース状態保持部３０１、遷移ルール抽出部３０２、遷移関数作成部３０３、次状態予測部３０４、測定値収集部３０５、閾値情報保持部３０６、受付部３０７、測定回数算出部３０８、および機器構成情報保持部３０９の各機能を実現する。また、ＲＡＭ８２またはＨＤＤ８４には、リソース状態保持部３０１、閾値情報保持部３０６、および機器構成情報保持部３０９内のデータが格納される。
【０１１２】
また、コンピュータ８０が第３の実施形態のリソース状態予測装置３０として機能する場合、コンピュータ８０のＣＰＵ８１は、ＲＡＭ８２上にロードされたプログラムを実行することにより、表示部３００、リソース状態保持部３０１、遷移ルール抽出部３０２、遷移関数作成部３０３、次状態予測部３０４、測定値収集部３０５、閾値情報保持部３０６、受付部３０７、測定回数算出部３０８、リスク値算出部３１０、およびコスト情報保持部３１１の各機能を実現する。また、ＲＡＭ８２またはＨＤＤ８４には、リソース状態保持部３０１、閾値情報保持部３０６、およびコスト情報保持部３１１内のデータが格納される。
【０１１３】
コンピュータ８０は、これらのプログラムを、記録媒体８８から読み取って実行するが、他の例として、他の装置から、通信媒体を介してこれらのプログラムを取得してもよい。通信媒体とは、通信回線、または、当該通信回線を伝搬するディジタル信号もしくは搬送波を指す。
【０１１４】
なお、本発明は、上記した実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
【０１１５】
例えば、上記した各実施形態において、測定値収集部３０５は、各リソースを２つの状態に離散化したが、本発明はこれに限られず、３つ以上の状態に離散化してもよい。また、上記した各実施形態において、リソース状態予測装置３０は、２つの時刻の各リソースの状態において、前の各リソースの状態において、連続して隣り合う３個のセルを用いて、当該３個のセルの中央のセルの後の状態を予測したが、本発明はこれに限られず、前の各リソースの状態において、連続して隣り合う２ｎ＋１個（ｎ≧２）以上のセルを用いて、当該２ｎ＋１個のセルの中央のセルの後の状態を予測するようにしてもよい。
【０１１６】
また、上記した各実施形態において、遷移関数作成部３０３によって算出された遷移関数の尤度が第２の閾値未満である場合、遷移ルール抽出部３０２は、さらに前の時刻における各リソースの測定値を用いて、遷移ルールをさらに抽出したが、本発明はこれに限られない。例えば、遷移ルール抽出部３０２は、各リソースの過去の状態をさかのぼることにより遷移ルールの抽出対象を増やす他に、遷移ルールの抽出対象となるリソース数を増やすことにより、遷移ルールの抽出対象を増やすようにしてもよい。
【図面の簡単な説明】
【０１１７】
【図１】本発明の一実施形態に係る制御システム１０の構成を示すシステム構成図である。
【図２】第１実施形態におけるリソース状態予測装置３０の機能構成の一例を示すブロック図である。
【図３】閾値情報保持部３０６に格納されているデータの構造の一例を示す図である。
【図４】リソース状態保持部３０１に格納されているデータの構造の一例を示す図である。
【図５】セルオートマトンとして扱うセルのまとまりの一例を示す概念図である。
【図６】遷移ルール抽出部３０２によってリソース毎に収集された遷移ルールの一例を示す図である。
【図７】遷移ルールを再度抽出する場合のセルのまとまりの一例を示す概念図である。
【図８】前のセルの状態が同一の遷移ルールについて、中央のセルにおける後の状態の割合を示す図である。
【図９】遷移関数作成部３０３によって算出された遷移関数の一例を示す図である。
【図１０】遷移関数作成部３０３によって算出された遷移関数を用いて所定時間後の各リソースの状態が予測される過程を示す概念図である。
【図１１】次状態予測部３０４から出力されるデータの構造の一例を示す図である。
【図１２】表示部３００によって表示装置１５に表示される予測結果画面６０の一例を示す概念図である。
【図１３】リソース変更量算出装置２０の機能構成の一例を示すブロック図である。
【図１４】変化リソース抽出部２３に格納されているデータの構造の一例を示す図である。
【図１５】第１実施形態における制御システム１０の動作の一例を示すフローチャートである。
【図１６】第１実施形態における予測処理（Ｓ２００）の一例を示すフローチャートである。
【図１７】第２実施形態におけるリソース状態予測装置３０の機能構成の一例を示すブロック図である。
【図１８】第２実施形態において機器構成情報保持部３０９に格納されているデータの構造の一例を示す図である。
【図１９】各リソースの接続関係の一例を示す概念図である。
【図２０】各リソース間の距離を示すマトリクス７２の一例を示す図である。
【図２１】隣り合うリソース間の距離が最小となるように各リソースを配置した場合のマトリクス７３の一例を示す図である。
【図２２】第２実施形態における制御システム１０の動作の一例を示すフローチャートである。
【図２３】第３実施形態におけるリソース状態予測装置３０の機能構成の一例を示すブロック図である。
【図２４】コスト情報保持部３１１に格納されているデータの構造の一例を示す
【図２５】第３実施形態における予測処理（Ｓ２００）の一例を示すフローチャートである。
【図２６】第４実施形態において機器構成情報保持部３０９に格納されているデータの構造の一例を示す図である。
【図２７】第４実施形態における予測処理（Ｓ２００）の一例を示すフローチャートである。
【図２８】リソース状態予測装置３０の機能を実現するコンピュータ８０の一例を示すハードウェア構成図である。
【符号の説明】
【０１１８】
１０・・・制御システム、１１・・・クライアントコンピュータ、１２・・・通信回線、１３・・・自律制御装置、１４・・・監視対象システム、１５・・・表示装置、１６・・・入力装置、２０・・・リソース変更量算出装置、２１・・・変更量取得部、２２・・・リソース変更量算出部、２３・・・リソース情報保持部、３０・・・リソース状態予測装置、３００・・・表示部、３０１・・・リソース状態保持部、３０２・・・遷移ルール抽出部、３０３・・・遷移関数作成部、３０４・・・次状態予測部、３０５・・・測定値収集部、３０６・・・閾値情報保持部、３０７・・・受付部、３０８・・・測定回数算出部、３０９・・・機器構成情報保持部、３１０・・・リスク値算出部、３１１・・・コスト情報保持部、４０・・・遷移ルール、４２・・・前の状態、４３・・・後の状態、４４・・・遷移関数、５０・・・予測結果、５１・・・リソースＩＤ、５２・・・現在の状態、５３・・・予測状態、５４・・・尤度、６０・・・予測結果画面、８０・・・コンピュータ、８１・・・ＣＰＵ、８２・・・ＲＡＭ、８３・・・ＲＯＭ、８４・・・ＨＤＤ、８５・・・通信インターフェイス、８６・・・入出力インターフェイス、８７・・・メディアインターフェイス、８８・・・記録媒体
【図１】
0004932749.tif 000003
【図２】
0004932749.tif 000004
【図３】
0004932749.tif 000005
【図４】
0004932749.tif 000006
【図５】
0004932749.tif 000007
【図６】
0004932749.tif 000008
【図７】
0004932749.tif 000009
【図８】
0004932749.tif 000010
【図９】
0004932749.tif 000011
【図１０】
0004932749.tif 000012
【図１１】
0004932749.tif 000013
【図１２】
0004932749.tif 000014
【図１３】
0004932749.tif 000015
【図１４】
0004932749.tif 000016
【図１５】
0004932749.tif 000017
【図１６】
0004932749.tif 000018
【図１７】
0004932749.tif 000019
【図１８】
0004932749.tif 000020
【図１９】
0004932749.tif 000021
【図２０】
0004932749.tif 000022
【図２１】
0004932749.tif 000023
【図２２】
0004932749.tif 000024
【図２３】
0004932749.tif 000025
【図２４】
0004932749.tif 000026
【図２５】
0004932749.tif 000027
【図２６】
0004932749.tif 000028
【図２７】
0004932749.tif 000029
【図２８】
0004932749.tif 000030