(57)【要約】【課題】  複数の機能を有する端末装置において、端末装置の機能を制御する制御要求が複数あり、それら制御要求間に競合がある場合に、この競合を解決して順に機能を実行・制御する。【解決手段】  競合解決システムは、機能複合関係、機能競合関係、機能重要度、を記憶し、受信した複数の機能制御情報について、実行条件を参照して前後関係を解決して順序付けを行い、機能複合関係データを参照して、複合機能を単機能に分解し、機能競合関係、機能重要度、優先度を参照して排他的な競合とリソース制限上の競合を解決することにより、機能制御情報の実行有無と順序付けを行い、機能を順に実行する。さらに競合関係、順序関係を機能制御情報と関連付けて機能相関関係として記憶し、競合関係、順序関係が更新される機能制御情報以外は、競合解決の再処理を行わずに効率的に競合解決する。【選択図】  図１
2006236259.tif 000002
【特許請求の範囲】
【請求項１】
個々に実行及び停止が可能な複数の機能を備えた情報処理端末装置に対する複数の機能制御要求の競合を解決する競合解決装置であって、
前記情報処理端末装置の各機能の実行又は停止を要求する機能制御情報を受信する制御情報受信部と、
前記制御情報受信部にて受信した複数の機能制御情報によって要求されている機能の実行及び停止に関する競合を検出する競合検出部と、
前記競合検出部にて検出した競合に基づいて、前記複数の機能制御情報によって要求されている機能要求制御のそれぞれについて実行可能なものと実行不可能なものに判別すると共に、実行可能と判別された機能制御要求の実行順序を決定する競合解決部と、
前記複数の機能制御要求の競合関係、前記機能制御要求の実行可否の判別結果、及び前記機能制御要求の実行順序を記憶する機能制御情報記憶部と、
前記機能制御要求の実行順序に従って機能制御を実行する機能実行部と、
を有することを特徴とする競合解決装置。
【請求項２】
前記情報処理端末装置の各機能の組み合わせについて競合するか否かを示す機能競合関係を記録する機能競合関係記憶手段をさらに有し、
前記競合検出部は、前記機能競合関係記憶手段を参照して、前記複数の機能制御情報によって要求されている機能の競合を検出することを特徴とする請求項１記載の競合解決装置。
【請求項３】
前記機能制御要求の対象となる機能のそれぞれについて、前記情報処理端末装置のユーザに与える影響の大きさ、前記ユーザの嗜好、及び前記ユーザの操作履歴に基づいて定義された重要度を記憶する機能重要度記憶手段をさらに有し、
前記競合解決部は、前記機能重要度記憶手段を参照して、前記複数の機能制御要求の重要度をそれぞれ決定し、前記重要度を比較することによって前記機能制御要求の実行可否を判別することを特徴とする請求項１又は２記載の競合解決装置。
【請求項４】
前記機能制御情報記憶部は、前記制御情報受信部にて受信した前記機能制御情報の時間的な受信順序を記憶する受信順序記憶手段を有し、
前記競合解決部は、前記受信順序記憶手段を参照して、受信順序を利用して競合を解決することを特徴とする請求項１から３のいずれか１項に記載の競合解決装置。
【請求項５】
複数の単機能に対する制御を伴う複合機能について、各複合機能を構成する単機能を定義した機能複合関係を記録する機能複合関係記憶手段をさらに有し、
前記競合検出部は、前記機能複合関係記憶手段を参照して、前記機能制御情報に含まれる複合機能について、前記複合機能を構成する複数の単機能に分解して単機能同士の競合関係を検出し、
前記競合解決部は、前記複合機能を構成する単機能に基づいて複合度を算出し、前記複合度に応じて競合を解決することを特徴とする請求項１から４のいずれか１項に記載の競合解決装置。
【請求項６】
別の機能制御情報を前提条件とする記述を含む条件付きの機能制御情報を受信した際に、前記条件付きの機能制御情報と、条件となる機能制御情報の間の順序関係を記録する順序関係記憶手段をさらに有し、
前記競合解決部は、前記順序関係記憶手段を参照して、前記条件となる機能制御情報に含まれる機能制御が前記条件付きの機能制御情報に含まれる機能制御に先立って行われるように実行順序を決定し、前記複数の機能制御情報間に予め順序付けを行うことを特徴とする請求項１から５のいずれか１項に記載の競合解決装置。
【請求項７】
前記機能制御情報で制御対象として示された複数の機能間の、複合関係、競合関係、及び順序関係を記録する機能相関関係記憶手段をさらに有し、
所定の機能制御情報が時間経過に伴って無効化される、あるいは、新規の受信によって別の機能制御情報が有効になるといった、有効な機能制御情報が動的に変更されうる状況において、前記競合検出部は、前記機能相関関係記憶手段を参照して、無効化された機能制御情報については、関連する競合関係、順序関係を無効にし、新たに有効になった機能制御情報については、関連する複合関係、競合関係、順序関係を追加するように、前記機能相関関係記憶手段を更新し、前記競合解決部は、前記機能相関関係記憶手段の更新された部分に関してのみあらためて競合解決を行うことを特徴とする請求項１から６のいずれか１項に記載の競合解決装置。
【請求項８】
請求項１から６のいずれか１項に記載の競合解決装置を有することを特徴とする情報処理端末装置。
【請求項９】
個々に実行及び停止が可能な複数の機能を備えた情報処理端末装置に対する複数の機能制御要求の競合を解決する競合解決方法であって、
前記情報処理端末装置の各機能の実行又は停止を要求する機能制御情報を受信する制御情報受信ステップと、
前記制御情報受信ステップにて受信した複数の機能制御情報によって要求されている機能の実行及び停止に関する競合を検出する競合検出ステップと、
前記競合検出ステップにて検出した競合に基づいて、前記複数の機能制御情報によって要求されている機能要求制御のそれぞれについて実行可能なものと実行不可能なものに判別すると共に、実行可能と判別された機能制御要求の実行順序を決定する競合解決ステップと、
前記機能制御要求の実行順序に従って機能制御を実行する機能実行ステップと、
を有することを特徴とする競合解決方法。
【請求項１０】
前記複数の機能制御要求の競合関係、前記機能制御要求の実行可否の判別結果、及び前記機能制御要求の実行順序を記憶する機能制御情報記憶ステップをさらに有することを特徴とする請求項９記載の競合解決方法。
【請求項１１】
前記情報処理端末装置の各機能の組み合わせについて競合するか否かを示す機能競合関係を記憶する機能競合関係記憶ステップをさらに有し、
前記競合解決ステップにて、前記機能競合関係に基づいて前記機能制御情報の実行順序を決定することを特徴とする請求項９又は１０記載の競合解決方法。
【請求項１２】
前記機能制御要求の対象となる機能のそれぞれについて、前記情報処理端末装置のユーザに与える影響の大きさ、前記ユーザの嗜好、及び前記ユーザの操作履歴に基づいて定義された重要度を記憶する機能重要度記憶ステップをさらに有し、
前記競合解決ステップにて、前記重要度を参照して前記複数の機能制御要求の重要度をそれぞれ決定し、前記重要度を比較することによって前記機能制御要求の実行可否を判別することを特徴とする請求項９から１１のいずれか１項に記載の競合解決方法。
【請求項１３】
前記制御情報受信ステップにて受信した前記機能制御情報の時間的な受信順序を記憶する受信順序記憶ステップを有し、
前記競合解決ステップにて、前記受信順序を参照して競合を解決することを特徴とする請求項９から１２のいずれか１項に記載の競合解決方法。
【請求項１４】
複数の単機能に対する制御を伴う複合機能について、各複合機能を構成する単機能を定義した機能複合関係を記録する機能複合関係記憶ステップをさらに有し、
前記競合検出ステップにて、前記機能複合関係を参照して、前記機能制御情報に含まれる複合機能について、前記複合機能を構成する複数の単機能に分解して単機能同士の競合関係を検出し、
前記競合解決ステップにて、前記複合機能を構成する単機能に基づいて複合度を算出し、前記複合度に応じて競合を解決することを特徴とする請求項９から１３のいずれか１項に記載の競合解決方法。
【請求項１５】
別の機能制御情報を前提条件とする記述を含む条件付きの機能制御情報を受信した際に、前記条件付きの機能制御情報と、条件となる機能制御情報の間の順序関係を記録する順序関係記憶ステップをさらに有し、
前記競合解決ステップにて、前記順序関係を参照して、前記条件となる機能制御情報に含まれる機能制御が前記条件付きの機能制御情報に含まれる機能制御に先立って行われるように実行順序を決定し、前記複数の機能制御情報間に予め順序付けを行うことを特徴とする請求項９から１４のいずれか１項に記載の競合解決方法。
【請求項１６】
前記機能制御情報で制御対象として示された複数の機能間の、複合関係、競合関係、及び順序関係を含む機能相関関係を記録する機能相関関係記憶ステップをさらに有し、
所定の機能制御情報が時間経過に伴って無効化される、あるいは、新規の受信によって別の機能制御情報が有効になるといった、有効な機能制御情報が動的に変更されうる状況において、前記競合検出ステップにて、前記機能相関関係を参照して、無効化された機能制御情報については、関連する競合関係、順序関係を無効にし、新たに有効になった機能制御情報については、関連する複合関係、競合関係、順序関係を追加するように、前記機能相関関係を更新し、前記競合解決ステップにて、前記機能相関関係の更新された部分に関してのみあらためて競合解決を行うことを特徴とする請求項９から１５のいずれか１項に記載の競合解決方法。
【請求項１７】
個々に実行及び停止が可能な複数の機能を備えた情報処理端末装置に対する複数の機能制御要求の競合を解決するためのプログラムであって、
前記情報処理端末装置の各機能の実行又は停止を要求する機能制御情報を受信する制御情報受信処理と、
前記制御情報受信処理にて受信した複数の機能制御情報によって要求されている機能の実行及び停止に関する競合を検出する競合検出処理と、
前記競合検出処理にて検出した競合に基づいて、前記複数の機能制御情報によって要求されている機能要求制御のそれぞれについて実行可能なものと実行不可能なものに判別すると共に、実行可能と判別された機能制御要求の実行順序を決定する競合解決処理と、
前記機能制御要求の実行順序に従って機能制御を実行する機能実行処理と、
をコンピュータに実行させるプログラム。
【請求項１８】
前記複数の機能制御要求の競合関係、前記機能制御要求の実行可否の判別結果、及び前記機能制御要求の実行順序を記憶する機能制御情報記憶処理をさらにコンピュータに実行させる請求項１７記載のプログラム。
【請求項１９】
前記情報処理端末装置の各機能の組み合わせについて競合するか否かを示す機能競合関係を記憶する機能競合関係記憶処理をさらにコンピュータに実行させ、
前記競合解決処理にて、前記機能競合関係に基づいて前記機能制御情報の実行順序を決定する処理をコンピュータに実行させる請求項１７又は１８記載のプログラム。
【請求項２０】
前記機能制御要求の対象となる機能のそれぞれについて、前記情報処理端末装置のユーザに与える影響の大きさ、前記ユーザの嗜好、及び前記ユーザの操作履歴に基づいて定義された重要度を記憶する機能重要度記憶処理をさらにコンピュータに実行させ、
前記競合解決処理にて、前記重要度を参照して前記複数の機能制御要求の重要度をそれぞれ決定し、前記重要度を比較することによって前記機能制御要求の実行可否を判別する処理をコンピュータに実行させる請求項１７から１９のいずれか１項に記載のプログラム。
【請求項２１】
前記制御情報受信処理にて受信した前記機能制御情報の時間的な受信順序を記憶する受信順序記憶処理をさらにコンピュータに実行させ、
前記競合解決処理にて、前記受信順序を参照して競合を解決する処理をコンピュータに実行させる請求項１７から２０のいずれか１項に記載のプログラム。
【請求項２２】
複数の単機能に対する制御を伴う複合機能について、各複合機能を構成する単機能を定義した機能複合関係を記録する機能複合関係記憶処理をさらにコンピュータに実行させ、
前記競合検出処理にて、前記機能複合関係を参照して、前記機能制御情報に含まれる複合機能について、前記複合機能を構成する複数の単機能に分解して単機能同士の競合関係を検出し、
前記競合解決処理にて、前記複合機能を構成する単機能に基づいて複合度を算出し、前記複合度に応じて競合を解決する処理をコンピュータに実行させる請求項１７から２１のいずれか１項に記載のプログラム。
【請求項２３】
別の機能制御情報を前提条件とする記述を含む条件付きの機能制御情報を受信した際に、前記条件付きの機能制御情報と、条件となる機能制御情報の間の順序関係を記録する順序関係記憶処理をさらにコンピュータに実行させ、
前記競合解決処理にて、前記順序関係を参照して、前記条件となる機能制御情報に含まれる機能制御が前記条件付きの機能制御情報に含まれる機能制御に先立って行われるように実行順序を決定し、前記複数の機能制御情報間に予め順序付けを行う処理をコンピュータに実行させる請求項１７から２２のいずれか１項に記載のプログラム。
【請求項２４】
前記機能制御情報で制御対象として示された複数の機能間の、複合関係、競合関係、及び順序関係を含む機能相関関係を記録する機能相関関係記憶処理をさらにコンピュータに実行させ、
所定の機能制御情報が時間経過に伴って無効化される、あるいは、新規の受信によって別の機能制御情報が有効になるといった、有効な機能制御情報が動的に変更されうる状況において、前記競合検出処理にて、前記機能相関関係を参照して、無効化された機能制御情報については、関連する競合関係、順序関係を無効にし、新たに有効になった機能制御情報については、関連する複合関係、競合関係、順序関係を追加するように、前記機能相関関係を更新し、前記競合解決処理にて、前記機能相関関係の更新された部分に関してのみあらためて競合解決を行う処理をコンピュータに実行させる請求項１７から２３のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の機能を有する端末装置において、端末の機能を制御する複数の制御要求間に競合がある場合に、この競合を解決する競合解決装置、情報処理端末装置、競合解決方法及びプログラムに関する。
【背景技術】
【０００２】
現在、情報処理端末装置の諸機能について、ユーザによる操作などだけでなく、無線通信ネットワークを介した操作などにより端末装置外部から制御できるようになりつつある。そのために、例えば、携帯電話機などの端末装置を制御するための機能制御情報を機能制御情報発信機が発信する方式がある。この方式では、機能制御情報に実行条件を加え、そこに他の機能制御情報を記述することにより、機能制御情報の実行順序を決定することができる。
【０００３】
このような方式では、端末装置が複数の機能制御情報を同時に受信した際に、複数の要求を同時に満たすことができないという競合問題が発生することがある。そのため、機能制御情報に評価情報を加えることにより、それをもとに機能制御情報を順序付けすることにより競合問題を解決していた。また、端末装置自体に、端末装置の機能の実行順位を記憶しておくことにより、機能制御処理を順序付けして競合問題を解決していた。
【０００４】
また、タスクの競合を制御する携帯情報端末として、競合マネージャを備える方式がある（例えば、特許文献１参照）。この方式では、各タスクは、起動時に競合マネージャに問い合わせを行い、競合マネージャがそれぞれのタスクに指示を通知していた。
【０００５】
また、競合問題についての別の従来技術例として、ローカルタスクは内線からのイベントを検出し、内線の呼状態とイベント内容に基づき他のイベントとの競合関係を判定するもの（例えば、特許文献２参照）、受信情報の重要度に応じて、アプリケーションプログラムの実行と受信情報の出力や着信通知との間の競合を調整するもの（例えば、特許文献３参照）、タスクの実行要求を受け付けた際に、起動中のタスクが登録されているタスクリストを参照してタスク同士の有無を検出するもの（例えば、特許文献４参照）などがある。
【特許文献１】特開２００３−１７７９２６号公報
【特許文献２】特開２００３−２４８５９２号公報
【特許文献３】特開２００３−２５８９５０号公報
【特許文献４】特開２００５−００５９０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来技術例では、以下のような複数の問題が生じる。
機能制御情報に評価情報を加えて競合問題を解決する方式では、競合問題を解決できない場合がある点である。その理由は、機能制御情報の評価情報が同じ場合には順序付けができないからである。
【０００７】
端末装置自体に端末装置の機能の実行順位を記憶しておく方式では、外部から要求する機能の実行順序を変更できない点である。その理由は、あらかじめ定められた機能の実行順位に従ってのみ順序付けを行うからである。
【０００８】
端末装置に端末装置の機能の実行順位を記憶しておく方式では、競合解決が困難である点である。その理由は、競合を解決するためには全ての機能の順位は同じものがないように定めなければならず、そのため全ての機能の順位付けは、例えば携帯電話のように機能が多いと、数が膨大になるため、現実的には困難であるか、不可能であるからである。
【０００９】
特許文献１記載の発明を例とする競合マネージャを備える方式では、動作しないタスクも実行しなければならない点である。その理由は、タスクを実行して競合マネージャに問い合わせないと競合の判定ができないからである。
【００１０】
特許文献２記載の発明は、内線の呼状態と検出イベントの競合を調べる、すなわち、特許文献２での表現を用いると、状態とイベントの競合関係をチェックするものであり、イベントとイベントの競合関係のチェックを行うものではない。また、特許文献２の目的は、競合するイベントの処理が並列に処理されることを未然に防ぎ、レーシングによるデッドロックを防ぎ、競合の解決は実行ビットを「オン」「オフ」することで排他を行い、実行中の場合は実行が完了するまで待つか、空いているタスクに割り当てるかを決定するものであり、同じ場所で複数の制御要求を受信した際に、順に機能を実行・制御することを目的としたものではなく、また、競合の解決について優先度および重要度を用いていないため、制御要求に優先度をつけることができない。
【００１１】
特許文献３記載の発明は、「情報送信元から送信されてくる情報の出力を制御するアプリケーションプログラム実行可能な情報通信端末の制御方法であって、アプリケーションプログラムの実行中に情報を受信したときに、受信情報の重要度と関連付けて設定された制御情報に基づいて、該アプリケーションプログラムの実行よりも優先的に該受信情報を出力するか否かを制御することを特徴とする。」（明細書段落「０００５」参照）ものであるが、この特許文献３でいう「重要度」の意味は、「上記優先度情報は、情報送信元側で情報の内容に応じて予め設定されている。この優先度情報の設定は、利用者が携帯電話機を操作して利用者の希望に応じて変更できるようにしてもよい。」という記載（明細書段落「００１４」参照）にあるように、情報送信元で設定するもの、すなわち制御情報によって指定する優先度のことであるので、情報送信元において、競合を解決するための制御情報に上記「重要度」や上記「優先度」を指定する必要がある。
【００１２】
特許文献４記載の発明は、「アプリケーション管理ブロック６４は、実行中のアプリケーションの現在の状態、及び競合したアプリケーションの現在の状態に基づいて上記競合条件テーブルを参照して、実行中のアプリケーション及び競合したアプリケーションの遷移させるべき状態（上記起動不可，割込側待機，動作側待機，動作側終了等）をそれぞれ検出する。そして、アプリケーション制御ブロック６５が、このアプリケーション管理ブロック６４により検出された上記実行中のアプリケーションの遷移させるべき状態及び競合したアプリケーションの遷移させるべき状態の上記優先度に基づいて、該実行中のアプリケーションの状態を上記検出された遷移させるべき状態に遷移させ、また、該競合したアプリケーションの状態を上記検出された遷移させるべき状態に遷移させる。」という記載（明細書段落「００８７」「００８８」参照）があり、また、競合条件テーブルは、「実行中のアプリケーションの一つ一つの状態を、競合する他のアプリケーションの一つ一つの状態にそれぞれ対応させたテーブルとなっており、この実行中のアプリケーションの状態と競合する他のアプリケーションの状態との競合関係において、実行中のアプリケーション及び競合する他のアプリケーションが遷移すべき状態を示したテーブルとなっている。」という記載（明細書段落「００７７」参照）があるように、競合条件テーブルにアプリケーションの遷移させるべき状態を記述する必要があるが、全てのアプリケーションの全ての状態に対して遷移すべき状態を記述するのは容易ではない。
【００１３】
また、特許文献４記載の発明は、「アプリケーションマネージャ２５は、各アプリケーションが競合した場合に、各アプリケーションの優先順位や現在の状態等に応じて、実行するアプリケーション、起動するアプリケーション、起動待ちとするアプリケーション、実行待機とするアプリケーションをそれぞれ決定し、それぞれ対応する上記リスト６１，６２に登録する。そして、登録したアプリケーションの状態や新たなアプリケーションの起動要求等の状況の変化があった場合に、その現状に対応して上記各リスト６１，６２を再構築し、この各リスト６１，６２を参照しながら各アプリケーションの競合管理を行う。」という記載（明細書段落「００５６」「００５７」参照）があるように、特許文献４の発明では、実行するアプリケーション、起動するアプリケーション、起動待ちとするアプリケーション、実行待機とするアプリケーションを記憶するだけのものであり、どのアプリケーションとどのアプリケーションが競合しているかを示す競合状態を記憶していないため、再構築する場合は、再び最初から競合関係を調べ直さなければならないという問題がある。
【００１４】
また、上記各文献以外のその他の従来例として、起動中のアプリケーションの状態に関して、アプリケーション単位に記述した競合情報ファイル中のプライオリティ情報を、競合情報データベースより取り出し、プライオリティ情報のみを比較し、今回起動もしくは状態遷移するアプリケーションの状態のプライオリティが起動中アプリケーションより高ければ、起動許可となる発明もあるが、アプリケーションを端末の機能単位に分解して、その複合度を用いて競合を解決することはできない。
【００１５】
以上のことから、従来は、現在起動している（複数の）機能に対して、受信した一つの機能制御情報について起動するか否か等を判定して起動するものであり、受信できる機能制御情報を全て受信し、それらの間の競合を全て解決し、それぞれについて競合を判定して、その後、実行できるものを順に起動していく技術は存在しなかった。また、従来はＣＰＵや画面などのリソース制限上の競合の解決だけを行うものであり、例えばある機能をＯＮにしてＯＦＦにするというように「実行した結果意味がないような機能制御情報（処理結果が矛盾するようなもの）」は実行しないように制御できる技術は存在しなかった。
【００１６】
本発明は、上記事情に鑑みてなされたものであり、複数の機能を有する端末装置において、端末の機能を制御する複数の制御要求間に競合がある場合に、この競合を解決することを目的とする。
【課題を解決するための手段】
【００１７】
かかる目的を達成するために、請求項１記載の発明は、個々に実行及び停止が可能な複数の機能を備えた情報処理端末装置に対する複数の機能制御要求の競合を解決する競合解決装置であって、情報処理端末装置の各機能の実行又は停止を要求する機能制御情報を受信する制御情報受信部と、制御情報受信部にて受信した複数の機能制御情報によって要求されている機能の実行及び停止に関する競合を検出する競合検出部と、競合検出部にて検出した競合に基づいて、複数の機能制御情報によって要求されている機能要求制御のそれぞれについて実行可能なものと実行不可能なものに判別すると共に、実行可能と判別された機能制御要求の実行順序を決定する競合解決部と、複数の機能制御要求の競合関係、機能制御要求の実行可否の判別結果、及び機能制御要求の実行順序を記憶する機能制御情報記憶部と、機能制御要求の実行順序に従って機能制御を実行する機能実行部と、を有することを特徴とする。
【００１８】
請求項２記載の発明において、請求項１記載の発明において、情報処理端末装置の各機能の組み合わせについて競合するか否かを示す機能競合関係を記録する機能競合関係記憶手段をさらに有し、競合検出部は、機能競合関係記憶手段を参照して、複数の機能制御情報によって要求されている機能の競合を検出することを特徴とする。
【００１９】
請求項３記載の発明は、請求項１又は２記載の発明において、機能制御要求の対象となる機能のそれぞれについて、情報処理端末装置のユーザに与える影響の大きさ、ユーザの嗜好、及びユーザの操作履歴に基づいて定義された重要度を記憶する機能重要度記憶手段をさらに有し、競合解決部は、機能重要度記憶手段を参照して、複数の機能制御要求の重要度をそれぞれ決定し、重要度を比較することによって機能制御要求の実行可否を判別することを特徴とする。
【００２０】
請求項４記載の発明は、請求項１から３のいずれか１項に記載の発明において、機能制御情報記憶部は、制御情報受信部にて受信した機能制御情報の時間的な受信順序を記憶する受信順序記憶手段を有し、競合解決部は、受信順序記憶手段を参照して、受信順序を利用して競合を解決することを特徴とする。
【００２１】
請求項５記載の発明は、請求項１から４のいずれか１項に記載の発明において、複数の単機能に対する制御を伴う複合機能について、各複合機能を構成する単機能を定義した機能複合関係を記録する機能複合関係記憶手段をさらに有し、競合検出部は、機能複合関係記憶手段を参照して、機能制御情報に含まれる複合機能について、複合機能を構成する複数の単機能に分解して単機能同士の競合関係を検出し、競合解決部は、複合機能を構成する単機能に基づいて複合度を算出し、複合度に応じて競合を解決することを特徴とする。
【００２２】
請求項６記載の発明は、請求項１から５のいずれか１項に記載の発明において、別の機能制御情報を前提条件とする記述を含む条件付きの機能制御情報を受信した際に、条件付きの機能制御情報と、条件となる機能制御情報の間の順序関係を記録する順序関係記憶手段をさらに有し、競合解決部は、順序関係記憶手段を参照して、条件となる機能制御情報に含まれる機能制御が条件付きの機能制御情報に含まれる機能制御に先立って行われるように実行順序を決定し、複数の機能制御情報間に予め順序付けを行うことを特徴とする。
【００２３】
請求項７記載の発明は、請求項１から６のいずれか１項に記載の発明において、機能制御情報で制御対象として示された複数の機能間の、複合関係、競合関係、及び順序関係を記録する機能相関関係記憶手段をさらに有し、所定の機能制御情報が時間経過に伴って無効化される、あるいは、新規の受信によって別の機能制御情報が有効になるといった、有効な機能制御情報が動的に変更されうる状況において、競合検出部は、機能相関関係記憶手段を参照して、無効化された機能制御情報については、関連する競合関係、順序関係を無効にし、新たに有効になった機能制御情報については、関連する複合関係、競合関係、順序関係を追加するように、機能相関関係記憶手段を更新し、競合解決部は、機能相関関係記憶手段の更新された部分に関してのみあらためて競合解決を行うことを特徴とする。
【００２４】
請求項８記載の発明は、請求項１から６のいずれか１項に記載の競合解決装置を有することを特徴とする。
【００２５】
請求項９記載の発明は、個々に実行及び停止が可能な複数の機能を備えた情報処理端末装置に対する複数の機能制御要求の競合を解決する競合解決方法であって、情報処理端末装置の各機能の実行又は停止を要求する機能制御情報を受信する制御情報受信ステップと、制御情報受信ステップにて受信した複数の機能制御情報によって要求されている機能の実行及び停止に関する競合を検出する競合検出ステップと、競合検出ステップにて検出した競合に基づいて、複数の機能制御情報によって要求されている機能要求制御のそれぞれについて実行可能なものと実行不可能なものに判別すると共に、実行可能と判別された機能制御要求の実行順序を決定する競合解決ステップと、機能制御要求の実行順序に従って機能制御を実行する機能実行ステップと、を有することを特徴とする。
【００２６】
請求項１０記載の発明は、請求項９記載の発明において、複数の機能制御要求の競合関係、機能制御要求の実行可否の判別結果、及び機能制御要求の実行順序を記憶する機能制御情報記憶ステップをさらに有することを特徴とする。
【００２７】
請求項１１記載の発明は、請求項９又は１０記載の発明において、情報処理端末装置の各機能の組み合わせについて競合するか否かを示す機能競合関係を記憶する機能競合関係記憶ステップをさらに有し、競合解決ステップにて、機能競合関係に基づいて機能制御情報の実行順序を決定することを特徴とする。
【００２８】
請求項１２記載の発明は、請求項９から１１のいずれか１項に記載の発明において、機能制御要求の対象となる機能のそれぞれについて、情報処理端末装置のユーザに与える影響の大きさ、ユーザの嗜好、及びユーザの操作履歴に基づいて定義された重要度を記憶する機能重要度記憶ステップをさらに有し、競合解決ステップにて、重要度を参照して複数の機能制御要求の重要度をそれぞれ決定し、重要度を比較することによって機能制御要求の実行可否を判別することを特徴とする。
【００２９】
請求項１３記載の発明は、請求項９から１２のいずれか１項に記載の発明において、制御情報受信ステップにて受信した機能制御情報の時間的な受信順序を記憶する受信順序記憶ステップを有し、競合解決ステップにて、受信順序を参照して競合を解決することを特徴とする。
【００３０】
請求項１４記載の発明は、請求項９から１３のいずれか１項に記載の発明において、複数の単機能に対する制御を伴う複合機能について、各複合機能を構成する単機能を定義した機能複合関係を記録する機能複合関係記憶ステップをさらに有し、競合検出ステップにて、機能複合関係を参照して、機能制御情報に含まれる複合機能について、複合機能を構成する複数の単機能に分解して単機能同士の競合関係を検出し、競合解決ステップにて、複合機能を構成する単機能に基づいて複合度を算出し、複合度に応じて競合を解決することを特徴とする。
【００３１】
請求項１５記載の発明は、請求項９から１４のいずれか１項に記載の発明において、別の機能制御情報を前提条件とする記述を含む条件付きの機能制御情報を受信した際に、条件付きの機能制御情報と、条件となる機能制御情報の間の順序関係を記録する順序関係記憶ステップをさらに有し、競合解決ステップにて、順序関係を参照して、条件となる機能制御情報に含まれる機能制御が条件付きの機能制御情報に含まれる機能制御に先立って行われるように実行順序を決定し、複数の機能制御情報間に予め順序付けを行うことを特徴とする。
【００３２】
請求項１６記載の発明は、請求項９から１５のいずれか１項に記載の発明において、機能制御情報で制御対象として示された複数の機能間の、複合関係、競合関係、及び順序関係を含む機能相関関係を記録する機能相関関係記憶ステップをさらに有し、所定の機能制御情報が時間経過に伴って無効化される、あるいは、新規の受信によって別の機能制御情報が有効になるといった、有効な機能制御情報が動的に変更されうる状況において、競合検出ステップにて、機能相関関係を参照して、無効化された機能制御情報については、関連する競合関係、順序関係を無効にし、新たに有効になった機能制御情報については、関連する複合関係、競合関係、順序関係を追加するように、機能相関関係を更新し、競合解決ステップにて、機能相関関係の更新された部分に関してのみあらためて競合解決を行うことを特徴とする。
【００３３】
請求項１７記載の発明は、個々に実行及び停止が可能な複数の機能を備えた情報処理端末装置に対する複数の機能制御要求の競合を解決するためのプログラムであって、情報処理端末装置の各機能の実行又は停止を要求する機能制御情報を受信する制御情報受信処理と、制御情報受信処理にて受信した複数の機能制御情報によって要求されている機能の実行及び停止に関する競合を検出する競合検出処理と、競合検出処理にて検出した競合に基づいて、複数の機能制御情報によって要求されている機能要求制御のそれぞれについて実行可能なものと実行不可能なものに判別すると共に、実行可能と判別された機能制御要求の実行順序を決定する競合解決処理と、機能制御要求の実行順序に従って機能制御を実行する機能実行処理と、をコンピュータに実行させる。
【００３４】
請求項１８記載の発明は、請求項１７記載の発明において、複数の機能制御要求の競合関係、機能制御要求の実行可否の判別結果、及び機能制御要求の実行順序を記憶する機能制御情報記憶処理をさらにコンピュータに実行させる。
【００３５】
請求項１９記載の発明は、請求項１７又は１８記載の発明において、情報処理端末装置の各機能の組み合わせについて競合するか否かを示す機能競合関係を記憶する機能競合関係記憶処理をさらにコンピュータに実行させ、競合解決処理にて、機能競合関係に基づいて機能制御情報の実行順序を決定する処理をコンピュータに実行させる。
【００３６】
請求項２０記載の発明は、請求項１７から１９のいずれか１項に記載の発明において、機能制御要求の対象となる機能のそれぞれについて、情報処理端末装置のユーザに与える影響の大きさ、ユーザの嗜好、及びユーザの操作履歴に基づいて定義された重要度を記憶する機能重要度記憶処理をさらにコンピュータに実行させ、競合解決処理にて、重要度を参照して複数の機能制御要求の重要度をそれぞれ決定し、重要度を比較することによって機能制御要求の実行可否を判別する処理をコンピュータに実行させる。
【００３７】
請求項２１記載の発明は、請求項１７から２０のいずれか１項に記載の発明において、制御情報受信処理にて受信した機能制御情報の時間的な受信順序を記憶する受信順序記憶処理をさらにコンピュータに実行させ、競合解決処理にて、受信順序を参照して競合を解決する処理をコンピュータに実行させる。
【００３８】
請求項２２記載の発明は、請求項１７から２１のいずれか１項に記載の発明において、複数の単機能に対する制御を伴う複合機能について、各複合機能を構成する単機能を定義した機能複合関係を記録する機能複合関係記憶処理をさらにコンピュータに実行させ、競合検出処理にて、機能複合関係を参照して、機能制御情報に含まれる複合機能について、複合機能を構成する複数の単機能に分解して単機能同士の競合関係を検出し、競合解決処理にて、複合機能を構成する単機能に基づいて複合度を算出し、複合度に応じて競合を解決する処理をコンピュータに実行させる。
【００３９】
請求項２３記載の発明は、請求項１７から２２のいずれか１項に記載の発明において、別の機能制御情報を前提条件とする記述を含む条件付きの機能制御情報を受信した際に、条件付きの機能制御情報と、条件となる機能制御情報の間の順序関係を記録する順序関係記憶処理をさらにコンピュータに実行させ、競合解決処理にて、順序関係を参照して、条件となる機能制御情報に含まれる機能制御が条件付きの機能制御情報に含まれる機能制御に先立って行われるように実行順序を決定し、複数の機能制御情報間に予め順序付けを行う処理をコンピュータに実行させる。
【００４０】
請求項２４記載の発明は、請求項１７から２３のいずれか１項に記載の発明において、機能制御情報で制御対象として示された複数の機能間の、複合関係、競合関係、及び順序関係を含む機能相関関係を記録する機能相関関係記憶処理をさらにコンピュータに実行させ、所定の機能制御情報が時間経過に伴って無効化される、あるいは、新規の受信によって別の機能制御情報が有効になるといった、有効な機能制御情報が動的に変更されうる状況において、競合検出処理にて、機能相関関係を参照して、無効化された機能制御情報については、関連する競合関係、順序関係を無効にし、新たに有効になった機能制御情報については、関連する複合関係、競合関係、順序関係を追加するように、機能相関関係を更新し、競合解決処理にて、機能相関関係の更新された部分に関してのみあらためて競合解決を行う処理をコンピュータに実行させる。
【発明の効果】
【００４１】
本発明によれば、以下の効果を奏することが可能となる。
第１の効果は、制御要求内の評価情報が同じでも、また、制御要求に評価情報を持たせなくても競合を解決することができる点である。その理由は、競合を解決するのに、機能がユーザに与える影響やユーザの好み、今までの競合解決の履歴などから機器の機能に定めることができる重要度を用いて競合を解決できるからである。
【００４２】
第２の効果は、制御要求に示された機能の重要度が同じ場合でも競合解決できる点である。その理由は、制御要求の到着した順序を利用して競合解決できるからである。
【００４３】
第３の効果は、機能同士の競合関係を判定するのに必要なデータ量を減らすことができる点である。その理由は、競合解決を行う前にその制御要求を単機能に分解し、単機能同士の競合関係を判定することで、全ての機能同士の競合関係を記憶する必要がなくなるからである。
【００４４】
第４の効果は、同時に複数の制御要求を受信して競合解決して機能を順に実行している際に、制御要求が動的に変更される場合など再度競合関係を構築する場合に、全ての競合を再度判定することなく効率よく競合解決することができる点である。その理由は、変更前の競合解決によって決定された現在実行中の機能や、制御要求の競合関係、順序関係を記憶する手段を有し、それを使用して競合解決を行うことができるからである。
【００４５】
第５の効果は、制御要求に予め順序がつけられていても競合解決することができる点である。その理由は制御要求の前後関係を考慮して競合解決するしくみを用いるからである。
【発明を実施するための最良の形態】
【００４６】
以下、本発明を実施するための最良の形態について添付図面を参照して詳細に説明する。
【００４７】
［実施形態の概要］
まず、本発明の実施形態の概要について説明する。
以下に説明する本発明の実施形態は、制御される機能の重要度を用いて競合を解決する手段を有することを特徴とする。機能の重要度は、機能がユーザに与える影響やユーザの好み、今まで競合解決した履歴などを端末装置側で記憶・保持しておき、それを用いることにより決定する。このことにより、制御要求内の評価情報が同じでも、また、制御要求に評価情報を持たせなくても競合を解決することができる。
【００４８】
また、本発明の実施形態は、受信した順序を記憶できる手段を有することを特徴とする。このことにより、受信した順序を利用して競合解決することができる。
【００４９】
また、本発明の実施形態は、制御要求で要求されている機能が複数の単機能によって構成される機能である場合に、これを単機能に分解する手段を有し、競合解決を行う前にその制御要求を単機能に分解し、単機能同士の競合関係を制御要求に含まれる単機能の構成に基づいて算出される複合度に応じて判定することを特徴とする。このことにより、複合機能についての機能同士の競合関係を記憶する必要がなくなり、単機能の競合関係のみ記憶すればよいため、端末装置の機能が膨大である場合に競合関係を記憶しておく量を削減することができる。
【００５０】
また、本発明の実施形態は、競合を解決するに当たり制御要求の競合関係、順序関係を制御要求と関連付けて機能相関関係として記憶し、保持する手段を有することを特徴とする。これにより制御要求が動的に変更される場合など再度競合関係を構築する場合に、記憶している競合関係、順序関係を用いて、競合解決を最初からやりなおすことなく効率的に競合解決することができる。
【００５１】
また、本発明の実施形態は、制御要求の前後関係を考慮して競合解決する手段を有することを特徴とする。このことにより、制御要求に予め実行する順序がつけられていても競合解決することができる。
【００５２】
［第１実施形態］
図１に本発明の実施形態の１つである競合解決システム（競合解決装置、競合解決手段）を備えた情報処理端末装置の構成を示す。本実施形態の端末装置１０は、機能制御情報２０、競合解決システム３０、端末に内蔵されている機能４０から構成される。なお、本実施形態の競合解決プログラムは、記録媒体や外部機器（ネットワーク上の機器も含む）等、あるいは、端末装置内の不揮発性メモリ等から端末装置１０に読み込まれ、端末装置１０の動作を制御する。端末装置１０は、競合解決プログラムの制御により、以下に説明する各処理を実行する。
【００５３】
端末装置１０に内蔵されている機能４０は、端末装置１０に備わる機能やアプリケーションである。例えば、端末装置１０が携帯電話機であれば、電源やサウンド、バイブレータ、画面表示、カメラ、各種アプリケーションなどである。
【００５４】
機能制御情報２０は、端末装置１０の機能４０を実行・制御させようとする制御要求である。機能制御情報２０は端末装置１０の外部から送信される。機能制御情報２０は、図３に示すように１つ以上の機能制御内容２１からなる。機能制御内容２１には、端末装置１０における実行・制御したい１つ以上の機能４０が記述される。また、機能制御内容２１には、図４に示すように複合機能４１を記述することもできる。この複合機能４１は、図５に示すように複数の機能４０と複合関係にある。このような複合関係は、図１に示す機能複合関係データベース３６によって管理される。
【００５５】
さらに機能制御情報２０は、図６に示すように、複数の機能制御内容２１と、実行条件２２とを含むことができる。実行条件２２は、端末装置１０の機能が動作するために必要な条件が記述されたものである。例えば、「マナーモードＯＦＦ」「カメラモードＯＮ」などを記述することができる。さらに実行条件２２には，他の機能制御情報２０を記述し、他の機能制御情報２０が実行されていることを条件にすることができる。これにより機能制御情報２０に前後関係５０（図２参照）すなわち実行順序をつけることができる。さらに機能制御情報２０は、図７に示すように機能制御情報の優先度合いを示す優先度２３を含んでもよい。この優先度２３は、競合解決システム３０が競合を解決する場合に使用することができる。
【００５６】
競合解決システム３０は、図１に示すように、制御情報受信部３１、競合検出部３２、競合解決部３３、機能実行部３４、機能相関関係記憶部３５、機能複合関係データ３６、機能競合関係データ３７、機能重要度データ３８からなる。３６、３７、３８は、それぞれのデータを格納するデータベースである。
【００５７】
制御情報受信部３１は、端末装置１０の外部からまたは内部から送信された機能制御情報２０を受信するものである。競合検出部３２は、機能複合関係データ３６、機能競合関係データ３７を利用して機能制御情報２０の競合を検出するものである。競合解決部３３は、機能重要度データ３８や機能制御情報２０の優先度２３を利用して複数の機能制御情報２０のうち実行できる制御とできない制御を判定し、実行順序を決定するものである。機能実行部３４は、実際に端末装置１０の機能４０を起動し、実行するものである。機能相関関係記憶部３５は、図２に示すように、競合検出部３２が検出した機能制御情報２０の前後関係５０や複合関係、競合解決部３３が競合解決して得られた機能制御情報２０の競合関係を記憶する機能相関関係６０をデータとして保持する。
【００５８】
ここで、機能相関関係６０は、解析中の機能制御情報２０を記憶する解析プール６１や、実行される機能制御情報２０を格納する実行プール６２、受信されたが実行されない機能制御情報を格納する非実行プール６３からなる。さらに、各機能制御情報２０の間にある、前後関係５０、競合関係５１を記憶する。
【００５９】
上記機能複合関係データ３６は、複合機能４１と単機能４０との関係について記録されたデータである。また、機能競合関係データ３７は、端末装置１０の機能４０毎にどの機能４０とどの機能４０が競合するかが記録されたデータである。機能重要度データ３８は、端末装置１０の機能毎に設定した重要度が記録されたデータである。機能重要度データ３８は、例えば携帯電話機であれば、ユーザの機能を制限するもの、携帯電話機本体に記憶されるもの、携帯電話の設定を変えるもの、アプリケーション起動の４つを設定する。機能重要度データ３８は、このほかにもユーザの好みや、一般的な使われ方や、競合解決した履歴などからも設定することができる。
【００６０】
次に、図８のフローチャートを参照して、上記構成の端末装置１０において、機能制御情報２０によって端末装置１０の機能４０が制御される動作について説明する。
【００６１】
まず、複数の機能制御情報２０が受信された場合、制御情報受信部３１はそれらを全て競合検出部３２へ送信する。競合検出部３２は、受信した機能制御情報２０の実行条件２２を調査して受信した複数の機能制御情報２０に前後関係５０があるかどうか調査する（Ｓ１００）。
【００６２】
ここで、前後関係５０を抽出する詳細なフローチャートを図９に示す。まず、記憶されている機能制御情報２０内に実行条件２２があるかどうかを判定する（Ｓ２００）。実行条件２２が存在する場合は（Ｓ２００／ＹＥＳ）、その中で他の機能制御情報２０を指定しているものを調べる（Ｓ２０２）。実行条件２２に他の機能制御情報２０が指定されていれば（Ｓ２０２／ＹＥＳ）、前後関係５０があるので、機能相関関係記憶部３５が機能相関関係６０として記憶する（Ｓ２０４）。これを全ての機能制御情報２０について行う（Ｓ２０６）。
【００６３】
そして、図８において、競合検出部３２は、機能複合関係データ３６を参照して機能制御情報２０内の機能制御内容２１において、複合機能４１の有無を検出する（Ｓ１０２）。
【００６４】
ここで、複合機能４１を分解する詳細なフローチャートを図１０に示す。まず記憶されている機能制御情報２０内の機能制御内容２１に複合機能４１があるかどうかを判定する（Ｓ３００）。複合機能４１がある場合は（Ｓ３００／ＹＥＳ）、機能複合関係データ３６を参照して複合機能４１を単機能４０に分解する（Ｓ３０４）。ここで分解した単機能４０がどれだけ複合されていたかを示す指標を複合度として定める。この複合度は、複合機能４１を分解した回数に等しい。この複合度は機能制御内容２１と関係付けられて機能相関関係記憶部３５が記憶する（Ｓ３０５）。これを全ての機能制御情報２０について行う（Ｓ３０６）。
【００６５】
そして、図８において、競合検出部３２は、同じ優先度２３の機能制御情報２０について、排他競合の検出を行う（Ｓ１０４）。排他競合が検出されれば競合解決部３３を呼び出す。競合解決部３３は、機能競合関係データ３７と機能重要度データ３８を参照しながら排他競合の解決を行う。
【００６６】
ここで、排他競合解決の詳細なフローチャートを図１１に示す。まず優先度２３別に機能制御情報２０の機能制御内容２１を全て取得する（Ｓ４００）。機能制御内容２１を含んでいる機能制御情報２０の間に図８のＳ１００で摘出された前後関係５０があるかどうか判定する（Ｓ４１０）。もし前後関係５０がなければ（Ｓ４１０／ＮＯ）、２つの機能制御情報２０内に含まれる全ての機能制御内容２１間の排他競合を１つ１つ調べていく（Ｓ４１２）。そして、機能競合関係データ３７を参照して、２つの機能制御内容２１間の排他競合を判定する（Ｓ４２０）。排他競合が検出された場合（Ｓ４２０／ＹＥＳ）、２つの機能制御内容２１の実行順位を設定する（Ｓ４２１）。
【００６７】
ここで、実行順位を設定する詳細なフローチャートを図３１に示す。２つの機能制御内容２１は同じ機能制御情報２０に含まれているかどうか判定する（Ｓ４３０）。２つの機能制御内容２１が同じ機能制御情報２０に含まれているならば（Ｓ４３０／ＹＥＳ）、機能重要度データ３８を参照して、２つの機能制御情報内容２１の重要度を比較する（Ｓ４３２）。もし重要度が同じであれば（Ｓ４３２／ＹＥＳ）、機能相関関係記憶部３５は、機能制御情報２０の中で機能制御内容２１を記述している順に実行順序を記憶する（Ｓ４３４）。重要度が異なれば（Ｓ４３２／ＮＯ）、機能相関関係記憶部３５は、重要度の高い機能制御内容２１を先に実行し、低いものをその後に実行するように順序を記憶する（Ｓ４３８）。Ｓ４３０において、もし２つの機能制御内容２１が同じ機能制御情報２０に含まれていなければ（Ｓ４３０／ＮＯ）、機能重要度データ３８を参照して、２つの機能制御内容２１の重要度を比較する（Ｓ４４０）。もし重要度の大きさが異なるのであれば（Ｓ４４０／ＮＯ）、重要度の高い機能制御内容２１を含む機能制御情報２０の実行順位に１を加算する（Ｓ４４８）。ここで、実行順位は、機能制御情報２０毎に記憶し、初期値は０とする。重要度の大きさが等しければ（Ｓ４４０／ＹＥＳ）、２つの機能制御内容２１の複合度を比較する（Ｓ４５０）。複合度が等しくなければ（Ｓ４５０／ＮＯ）、複合度の低い機能制御内容２１を含む機能制御情報２０の実行順位に１を加算する（Ｓ４５８）。２つの機能制御内容２１の複合度が等しい場合は（Ｓ４５０／ＹＥＳ）、機能制御内容２１を含む機能制御情報２０のうち、受信順序の早いものの実行順位に１を加算する（Ｓ４５２）。
【００６８】
そして、図１１において、これらを２つの機能制御情報２０内に含まれる全ての機能制御内容２１について行う（Ｓ４６０）。次に非実行プール移動処理を行う（Ｓ４６１）。
【００６９】
ここで、非実行プール移動処理の詳細なフローチャートを図３２に示す。２つの機能制御内容２１について、実行順位を比較する（Ｓ４７０）。実行順位が両方とも同じであれば（Ｓ４７０／ＹＥＳ）、両方とも０かどうかを比較する（Ｓ４７６）。もし両方とも０であれば（Ｓ４７６／ＹＥＳ）、２つの機能制御情報２０は競合しない。もし一方が０でなければ（Ｓ４７６／ＮＯ）、機能制御内容２１を含む機能制御情報２０のうち、受信順序の遅いものを非実行プール６３に記憶する（Ｓ４７８）。Ｓ４７０において、２つの機能制御内容２１の実行順位が異なるのであれば（Ｓ４７０／ＮＯ）、実行順位の低いものを非実行プール６３へ記憶する（Ｓ４７２）。ここで非実行プール６３に記憶したものを実行条件２２にしている機能制御情報２０があるかどうかを判定する（Ｓ４８０）。もし実行条件２２にしている機能制御情報２０があれば（Ｓ４８０／ＹＥＳ）、その機能制御情報２０も非実行プール６３に記憶する（Ｓ４８２）。
【００７０】
そして、図１１において、これらを同じ優先度２３内の機能制御情報分繰り返す（Ｓ４８８）。次に、これらを全ての優先度２３に対して繰り返す（Ｓ４９０）。最後に、ここまでで同じ優先度２３の中での競合解決が完了したので、異なる優先度２３間の排他競合を解決する（Ｓ４９１）。
【００７１】
ここで、優先度ごとの排他競合解決処理を図３３に示す。解析プール６１にある全ての機能制御内容２１間の排他競合を解決する（Ｓ４９２）。機能競合関係データ３７を参照して、２つの機能制御内容２１の間に排他競合があるかどうかを判定する（Ｓ４９４）。排他競合が検出された場合（Ｓ４９４／ＹＥＳ）、優先度２３の低いものを非実行プール６３へ記憶する（Ｓ４９６）。これを解析プール６１内の全ての機能制御情報２０について行う（Ｓ４９８）。解析プール６１内の全ての機能制御情報２０について排他競合の解決が完了すれば（Ｓ４９８／ＹＥＳ）、優先度２３の高いものから解析プール６１内の機能制御情報２０を実行プール６１へ記憶する（Ｓ４９９）。これで排他競合の解決の処理は終了である。
【００７２】
そして、図８において、競合検出部３２は、実行プール６２にある機能制御情報２０について、携帯端末のリソース制限上の競合の検出を行う（Ｓ１０６）。リソース制限上の競合がある場合は、競合解決部３３を呼び出してリソース制限上の競合の解決を行う。
【００７３】
ここで、リソース制限上の競合を解決する詳細なフローチャートを図１２に示す。競合検出部３２は、実行プール６２内の１つの機能制御情報内の全ての機能制御内容について、機能競合関係データ３７を参照して、２つの機能制御内容２１間のリソース制限上の競合の有無を判定する（Ｓ５００）。もし競合がある場合は（Ｓ５００／ＹＥＳ）、機能重要度データ３８を参照して、２つの機能制御内容の重要度を比較する（Ｓ５０２）。もし重要度が等しければ（Ｓ５０２／ＹＥＳ）、機能制御情報２０内での機能制御内容２１の記述順に実行するように実行順序をつける（Ｓ５０６）。もし、機能制御内容２１の重要度が異なれば（Ｓ５０２／ＮＯ）、機能制御内容２１の重要度の高いもの順に実行順序をつける（Ｓ５０４）。これらを全ての実行プール６２内の全ての機能制御情報２０について実行する（Ｓ５０８）。
【００７４】
次に機能実行部３４は、機能相関関係記憶部３５が記憶している順序が決定した機能制御情報２０を順に実行していく。
【００７５】
図８において、機能実行部３４は、機能制御情報２０が、以前に実行している機能制御情報２０を解除するものかどうかを判定する（Ｓ１２０）。もし解除する制御情報であれば（Ｓ１２０／ＹＥＳ）、現在実行している制御情報を解除する（Ｓ１３０）。機能相関関係記憶部３５は、記憶していた実行中の機能制御情報２０を破棄する（Ｓ１３２）。ここで破棄した機能制御情報２０は、機能相関関係記憶部３５が破棄したことを一定期間記憶しておき、制御情報受信部３１が再び同じ機能制御情報２０を受信した際に競合検出部３２に送信しないようにする。その後、機能相関関係記憶部３５が記憶している機能相関関係６０を更新する（Ｓ１３４）。
【００７６】
ここで、機能相関関係６０を更新する詳細なフローチャートを図１３に示す。機能実行部３４は、非実行プール６３内の機能制御情報２０のうち、破棄した機能制御情報２０と競合状態にあるものを全て解析プール６１に移動する（Ｓ６００）。解析プール６１内の機能制御情報２０について、実行プール６２内の現在実行している機能制御情報２０と競合関係５１があるかどうかを確認する（Ｓ６１０）。もし、競合関係５１がある場合は（Ｓ６１０／ＹＥＳ）、解析プール６１内の機能制御情報２０を非実行プール６３に移動する（Ｓ６１８）。もし競合関係５１がない場合は（Ｓ６１０／ＮＯ）、他の機能制御情報２０と競合関係５１があるかどうかを確認する（Ｓ６２０）。もし競合関係５１がなければ（Ｓ６２０／ＮＯ）、解析プール６１内の機能制御情報２０を実行プール６２へ移動する（Ｓ６２８）。もし、競合関係５１があれば（Ｓ６２０／ＹＥＳ）、競合状態にある機能制御情報２０の中で最も優先度２３の高いものを取得する（Ｓ６２２）。次に、最も優先度２３の高い機能制御情報が１つであるかどうかを判定する（Ｓ６３０）。もし１つでなく複数ある場合は（Ｓ６３０／ＮＯ）、最も優先度２３の高い機能制御情報２０のうち、受信順序の早いものを取得する（Ｓ６３２）。次に、その機能制御情報２０を実行プールへ移動させ（Ｓ６３４）、それ以外の競合状態にある全ての機能制御情報２０を非実行プール６３に移動する（Ｓ６３６）。これを解析プール６１内の機能制御情報２０全てに対して行う（Ｓ６４０）。これで機能相関関係６０が更新される。
【００７７】
図８において、もし実行する機能制御情報２０が解除するものでなければ（Ｓ１２０／ＮＯ）、機能制御情報２０内の機能制御内容２１の機能の実行の可否をユーザに問い合わせる（Ｓ１４０）。ここで、機能制御情報２０内の優先度２３に応じてユーザ問い合わせの有無を決定してもよい。ユーザに問い合わせた結果を判定し（Ｓ１５０）、もしユーザに実行を許可されたのであれば（Ｓ１５０／ＹＥＳ）、その機能制御内容２１の機能を実行する（Ｓ１６０）。機能相関関係記憶部３５は、実行した機能制御情報２０を実行中として記憶する（Ｓ１６２）。Ｓ１５０において、もしユーザが実行を拒否したのであれば（Ｓ１６０／ＮＯ）、上で示したように機能相関関係記憶部３５は、記憶していた実行中の機能制御情報２０を破棄する（Ｓ１３２）。その後、機能相関関係記憶部３５が記憶している機能相関関係６０を更新する（Ｓ１３４）。これら一連の動作を実行プール６２内の機能制御情報２０の数だけ繰り返す（Ｓ１８０）。これで競合解決された機能４０が全て実行できる。
【００７８】
［第２実施形態］
図３０に本発明の第２実施形態である競合解決システムを備えた端末装置の構成を示す。
図１で示した端末装置との違いは、機能制御情報２０が端末装置内部で発生することである。例えば端末装置に備わる入力部（図示せず）を操作すると、端末装置内部で機能制御情報２０が発生するようにする。その後の動作は図１で示した端末装置と同じである。また、機能制御情報２０は、図１で示すように端末装置の外部からと、図３０に示すように内部からとの両方から送信されてもよい。
【実施例１】
【００７９】
次に、具体的な実施例を用いて、本発明を実施するための最良の形態の動作を説明する。
端末装置１０の実施例として、携帯電話機の例を示す。ここでは端末装置として携帯電話機の例を示すが、携帯端末、PDA（Personal data Assistance：個人向け携帯型情報通信機器）、カーナビゲーション車載機などの移動端末でも、移動しない端末装置でもよい。またパーソナルコンピュータや、テレビなど、家庭用電気機器でもよく、一般的に制御可能な機器であればよい。端末装置１０において、機能制御情報２０によって端末装置１０の機能４０が制御される制御例について説明する。
【００８０】
機能複合関係データ３６の例を図１６に示す。この図１６は、例えば複合機能「全照明ＯＦＦ機能」は、単機能「画面照明ＯＦＦ機能」と「キー照明ＯＦＦ機能」から成り立つことを示す。
【００８１】
機能競合関係データ３７の例を図１７に示す。この図１７は、例えば単機能「画面照明ＯＦＦ」と単機能「画面照明ＯＮ」は排他競合関係にあることや、単機能「ウェブブラウザ起動」と単機能「電子チケットアプリ起動」はリソース制限上の競合関係にあることを示す。
【００８２】
機能重要度データ３８の例は図１８のようになる。この図１８は、例えば単機能「キー照明ＯＦＦ」は重要度レベル４にあることを示す。
【００８３】
ここで、機能複合関係データ３６と機能競合関係データ３７、機能重要度データ３８はそれぞれ別のデータとしたが、まとめて１つのデータであってもかまわない。
【００８４】
本実施例では、機能制御情報受信部３１が、図１４に示す機能制御情報２０−ａ〜２０−ｊを受信したとする。機能相関関係記憶部３５は、機能相関関係６０の解析プール６１に受信した複数の機能制御情報２０を記憶する（図１９参照）。
競合検出部３２は、解析プール６１内の機能制御情報２０の前後関係を調査する。記憶された機能制御情報２０−ａ〜２０−ｊの中で、実行条件２２があるものは、２０−ａ、２０−ｆ、２０−ｇ、２０−ｈである。それらの中で、他の機能制御情報２０を指定しているものは、２０−ｆ、２０−ｈである。ここで、機能制御情報２０−ｆの実行条件２２−ｆは、２０−ａが実行されているならば２０−ｆが実行されることを示し、機能制御情報２０−ｈの実行条件２２−ｈは、２０−ｃが実行されているならば２０−ｈが実行されることを示す。機能相関関係記憶部３５は、機能相関関係６０として前後関係５０を記憶する（図２０参照）。
【００８５】
競合検出部３２は、解析プール６１内の機能制御情報２０の複合関係を調査する。図１６に示す機能複合関係データ３６から、記憶された機能制御内容２１−ａ〜２１−ｊの中で、複合機能であるものは、２１−ｄ「全照明ＯＦＦ」と２１−ｇ「オールロック」、２１−ｉ「テーマ設定」である。図１６に示す機能複合関係データ３６を参照して、機能制御内容２１−ｄ「全端末照明ＯＦＦ」が単機能２１−ｄ−１「画面照明ＯＦＦ機能」と単機能２１−ｄ−２「キー照明ＯＦＦ機能」に分解され、次に機能制御内容２１−ｇ「オールロック」が単機能２１−ｇ−１「ダイヤル発信制限」と２１−ｇ−２「インターネットアクセス制限」に分解され、最後に機能制御内容２１−ｉ「テーマ設定」が、単機能２１−ｉ−１「壁紙設定」２１−ｉ−２「スクリーンセーバ設定」に分解される（図１５参照）。
【００８６】
競合検出部３２は、同じ優先度２３の機能制御情報２０について、排他競合の検出を行う。機能制御情報２０−ａ〜２０−ｊの優先度２３はそれぞれ、高、中、高、高、低、高、中、高、低、低である。本実施例では、優先度２３のレベルは、高、中、低の３つとしたが、いくつであってもかまわない。
【００８７】
まず優先度２３が高レベルのグループ２０−ａ、２０−ｃ、２０−ｄ、２０−ｆ、２０−ｈについて処理する。優先度２３が高レベルのグループの機能制御内容２１−ａ、２１−ｃ、２１−ｄ−１、２１−ｄ−２、２１−ｆ−１、２１−ｆ−２、２１−ｈについて、図１７の機能競合関係データ３７を参照して、２つの機能制御内容２１間の競合関係を調べていく。機能制御情報２０−ａと２０−ｆや、２０−ｃと２０−ｈは、前後関係５０があるため競合関係を調べない。機能制御内容２１−ａ「マナーモード設定」と機能制御内容２１−ｃの機能制御内容「マナーモード設定解除」は競合するので、競合解決部３３を呼び出す。機能重要度データ３８（図１８参照）からそれぞれの重要度は４と２となるため、機能制御情報２０−ａの実行順位に１を加算する。
【００８８】
このようにして調べた結果を図２１に示す。結果から、実行順位の低い機能制御情報２０−ｃを非実行プール６３へ記憶する。さらに機能制御情報２０−ｃを実行条件２２にしている機能制御情報２０−ｈも非実行プール６３に記憶する。この競合関係は、機能相関関係記憶部３５が機能相関関係６０として記憶する（図２２参照）。
【００８９】
次に優先度２３が中レベルのグループ２０−ｂ、２０−ｇを処理する。優先度２３が中レベルのグループでは、図１７の機能競合関係データ３７を参照すると、機能制御内容２１−ｂ「インターネットアクセス制限」と機能制御内容２１−ｇ−２「インターネットアクセス制限」は競合しないことが判る。結果を図２３に示し、相関関係記憶部３５が記憶する機能相関関係６０を図２４に示す。
【００９０】
最後に優先度２３が低レベルのグループである２０−ｅ、２０−ｉ、２０−ｊを処理する。優先度２３が低レベルのグループでは、図１７の機能競合関係データ３７を参照すると、機能制御内容２１−ｉ−１「壁紙設定」と機能制御内容２１−ｊ「壁紙設定」は、競合するので、競合解決部３３を呼び出す。２つとも重要度レベルは同じため、機能制御情報の複合度を判定する。その結果、機能制御内容２１−ｉの複合度は１、機能制御内容２１−ｊの複合度は０のため、機能制御情報２０−ｊの実行順位に１を加算する。このようにして調べた結果を図２５に示す。結果から、実行順位の低い機能制御情報２０−ｉを非実行プール６３へ記憶する。この競合関係は、機能相関関係記憶部３５が機能相関関係６０として記憶する（図２６参照）。
【００９１】
ここまでで同じ優先度２３の中での競合解決が完了したので、次に、異なる優先度２３の間の競合を解決する。解析プール６１内にある機能制御情報２０−ａ、２０−ｆ、２０−ｄ、２０−ｂ、２０−ｇ、２０−ｅ、２０−ｊについて、優先度２３を参照して排他競合を検出する。機能制御情報２０−ａと２０−ｆは、前後関係５０があるため競合関係を調べない。機能制御内容２１−ｆ−１「ウェブブラウザ起動」と機能制御内容２１−ｂ「インターネットアクセス制限」が競合することがわかるので競合解決部３３を呼び出す。優先度２３―ｆと２２−ｂはそれぞれ、高と中なので、機能制御情報２０−ｆの実行順位が１となる。次に機能制御内容２１−ｆ−１「ウェブブラウザ起動」と機能制御内容２１−ｇ「インターネットアクセス制限」も同様に処理すると、機能制御情報２０−ｆの実行順位が１となる。さらに２１−ｄ−２「キー照明ＯＦＦ」と２１−ｅ「キー照明ＯＮ」も同様に処理すると、機能制御内容２１−ｄの実行順位が１となる。その結果を図２７に示す。結果から、２０−ｂと２０−ｇと２０−ｅが非実行プール６３に記憶される。この競合関係は、機能相関関係記憶部３５が機能相関関係６０として記憶する（図２８参照）。
【００９２】
残りの解析プール６１内の機能制御情報２０を優先度２３の高いもの順に全て実行プール６２に入れる。競合検出部３２は、実行プール６２内の機能制御情報２０の中の機能制御内容２１について、機能競合関係データ３７を参照してリソース制限上の競合を判定する。
【００９３】
図２８に示すように、実行プール６２にある機能制御情報２０は、２０−ａ、２０−ｆ、２０−ｄ、２０−ｉである。リソース制限上の競合となるのは、機能制御内容２１−ｆ−１「ウェブブラウザ起動」と機能制御内容２１−ｆ−２「電子チケットアプリ起動」であるので競合解決部３３を呼び出す。競合解決部３３は、機能重要度データ３８（図１８参照）を参照して、それぞれの機能制御内容の重要度レベルを比較するとどちらも重要度レベルは１であるので、機能制御情報２０−ｆ内での記述順序を参照して機能制御内容の順序を決定する。決定した順序は機能相関関係記憶部３５が記憶する（図１５参照）。
【００９４】
ここまでで競合解決が行われたことになる。次に機能実行部３４は、実行プール６２内の機能制御情報２０を順に実行していく。
【００９５】
図２８に示すように、実行する機能制御情報２０は、２０−ａ、２０−ｆ、２０−ｄ、２０−ｉの順であり、実行する機能制御内容２１は、２１−ａ、２１−ｆ−１、２１−ｆ−２、２１−ｄ−１、２１−ｄ−２、２１−ｉである。これらを順に実行していく。まず機能制御情報２０−ａを実行してよいかどうか、ユーザに確認する。ユーザが実行を許可すると、機能制御情報２０−ａ内の機能制御内容２１−ａ「マナーモード設定」が実行される。次に同様に機能制御情報２０−ｆを実行してよいか、ユーザに確認する。ユーザが実行を許可すると、機能制御情報２０−ｆ内の機能制御内容２１−ｆ−１「ウェブブラウザ起動」が実行される。ユーザがウェブブラウザを終了すると、２１−ｆ−２「電子チケットアプリ起動」が実行される。同様に実行プール６２内の全ての機能制御情報２０について、実行していく。
【００９６】
ここで、もし機能制御情報２０−ｆを実行してよいかどうかユーザに確認した際に、ユーザが実行を拒否したとすると、実行プール６２内の機能制御内容２１−ｆ−１を解除して機能制御情報２０−ｆを破棄する。機能相関関係６０（図２８参照）から機能制御情報２０−ｆと競合しているのは、機能制御情報２０−ｂ、２０−ｇとすぐに判断できるので、機能制御情報２０−ｂと２０−ｇを再競合解決する。これらは競合しないため、機能制御情報２０−ｂと２０−ｇが実行プール６２へ記憶され、機能制御情報２０−ｄの次に、実行されることになる（図２９参照）。
【実施例２】
【００９７】
次に、端末装置１０の実施例２として、キーワードを利用して予約する映像記録装置（ビデオデッキ）を例とする。
【００９８】
ビデオデッキ１０は，インターネットなど他のネットワークを通じてＥＰＧなどの電子番組表を定期的に受信する。ユーザが指定したキーワードと電子番組表のキーワードとが一致した複数の番組について、開始時刻、終了時刻、チャネル情報などを機能制御情報２０として作成する。この時、キーワードには必ずしも正確に一致しなくてもよく、類義語辞書などを持つことにより、おおよそ一致していればよい。ここで、キーワードにどれくらい正確にマッチしたかという情報を機能制御情報２０の優先度２３とするとよい。
【００９９】
また、重要度として、チャネルとキーワードによって分けられる番組の重要度を用いることができる。例えば、公共性の高いチャネルでかつ緊急番組のようなものや、臨時ニュース、災害情報特別番組などは重要度を高くすることもできる。さらに、録画するユーザの力関係を重要度にしてもよい。力関係とは、例えば父親、母親、長男、長女の社会的な役割や年齢の順などである。
【０１００】
制御情報受信部３１は、上記のような番組の情報が記載された複数の機能制御情報２０を受信する。競合検出部３２は、機能複合関係データ３６、機能競合関係データ３７を参照して競合を検出する。ビデオデッキの場合、複合する機能がなければ、機能複合関係３６は特に存在しなくてもよい。機能競合関係データ３７は、携帯電話の例のように表形式ではなく、録画開始時間、録画終了時間、チャネルから計算してもよい。
【０１０１】
競合する機能制御情報２０がある場合は、競合解決部３３が機能制御情報内２０の優先度２３と、機能重要度データ３８の重要度を利用して競合解決する。
【０１０２】
このようにして、キーワードに複数マッチするような番組が複数ある場合も、単純に予約を受け付けた順ではなくユーザの意図や、番組の意図を組み入れた番組を優先的に録画することができる。
【０１０３】
さらに、現在の機能相関関係６０を記憶しておくことで、番組の延長や中止によって開始時刻や終了時刻が変わった場合や、番組内容の変更があった場合にも、効率的に競合解決を行い、最適な録画を行うことができる。
【０１０４】
以上、本発明の各実施形態及び各実施例について説明したが、上記に限定されるものではなく、その要旨を逸脱しない範囲において種々の変形が可能である。
【産業上の利用可能性】
【０１０５】
本発明は、携帯電話機、PHS（Personal Handyphone System）、PDA（Personal Data Assistance）、カーナビゲーションなどの移動端末、さらに、テレビ、ビデオ、オーディオなど複数の機能を持った機器にも適用できる。
【図面の簡単な説明】
【０１０６】
【図１】本発明の第１実施形態に係る競合解決システムのブロック図である。
【図２】図１中の機能相関関係記憶部の構成を示すブロック図である。
【図３】本発明の第１実施形態に係る機能制御情報の構成図である。
【図４】本発明の第１実施形態に係る２つ目の機能制御情報の構成図である。
【図５】本発明の第１実施形態に係る２つ目の機能制御情報の複合関係を示す図である。
【図６】本発明の第１実施形態に係る２つ目の機能制御情報の構成図である。
【図７】本発明の第１実施形態に係る３つ目の機能制御情報の構成図である。
【図８】本発明の第１実施形態に係る競合解決システムの全体の流れ図である。
【図９】本発明の第１実施形態に係る競合解決システムの前後関係を抽出する詳細な流れ図である。
【図１０】本発明の第１実施形態に係る競合解決システムの複合機能を単機能に分解する詳細な流れ図である。
【図１１】本発明の第１実施形態に係る競合解決システムの排他競合を解決する詳細な流れ図である。
【図１２】本発明の第１実施形態に係る競合解決システムのリソース制限上の競合を解決する詳細な流れ図である。
【図１３】本発明の第１実施形態に係る競合解決システムの機能相関関係６０を更新する詳細な流れ図である。
【図１４】本発明の第１実施形態の動作を説明するための実施例の機能制御情報である。
【図１５】本発明の第１実施形態の動作を説明するための実施例の機能制御情報を単機能に分解後の機能制御情報である。
【図１６】本発明の第１実施形態の動作を説明するための実施例の機能複合関係データである。
【図１７】本発明の第１実施形態の動作を説明するための実施例の機能競合関係データである。
【図１８】本発明の第１実施形態の動作を説明するための実施例の機能重要度データである。
【図１９】本発明の第１実施形態の動作を説明するための実施例の機能制御情報受信直後の機能相関関係である。
【図２０】本発明の第１実施形態の動作を説明するための実施例の前後関係解決直後の機能相関関係である。
【図２１】本発明の第１実施形態の動作を説明するための実施例の優先度が高である機能制御情報の排他競合解決を説明する図である。
【図２２】本発明の第１実施形態の動作を説明するための実施例の優先度が高である機能制御情報の排他競合を解決した直後の機能相関関係である。
【図２３】本発明の第１実施形態の動作を説明するための実施例の優先度が中である機能制御情報の排他競合解決を説明する図である。
【図２４】本発明の第１実施形態の動作を説明するための実施例の優先度が中である機能制御情報の排他競合を解決した直後の機能相関関係である。
【図２５】本発明の第１実施形態の動作を説明するための実施例の優先度が低である機能制御情報の排他競合解決を説明する図である。
【図２６】本発明の第１実施形態の動作を説明するための実施例の優先度が低である機能制御情報の排他競合を解決した直後の機能相関関係である。
【図２７】本発明の第１実施形態の動作を説明するための実施例の優先度毎の機能制御情報の排他競合解決を説明する図である。
【図２８】本発明の第１実施形態の動作を説明するための実施例の優先度毎の機能制御情報の排他競合を解決した直後の機能相関関係である。
【図２９】本発明の第１実施形態の動作を説明するための実施例の機能の実行をキャンセルした際の機能相関関係である。
【図３０】本発明の第２実施形態に係る競合解決システムのブロック図である。
【図３１】本発明の第１実施形態に係る実行順位の設定を示す流れ図である。
【図３２】本発明の第１実施形態に係る非実行プール移動処理を示す流れ図である。
【図３３】本発明の第１実施形態に係る優先度ごとの排他競合解決処理を示す流れ図である。
【符号の説明】
【０１０７】
１０    端末装置
２０    機能制御情報
２１    機能制御内容
２２    実行条件
２３    優先度
３０    競合解決システム
３１    制御情報受信部
３２    競合検出部
３３    競合解決部
３４    機能実行部
３５    機能相関関係記憶部
３６    機能複合関係データ
３７    機能競合関係データ
３８    機能重要度データ
４０    携帯電話機機能
５０    前後関係
５１    競合関係
６０    機能相関関係
６１    解析プール
６２    実行プール
６３    非実行プール
【図１】
2006236259.tif 000003
【図２】
2006236259.tif 000004
【図３】
2006236259.tif 000005
【図４】
2006236259.tif 000006
【図５】
2006236259.tif 000007
【図６】
2006236259.tif 000008
【図７】
2006236259.tif 000009
【図８】
2006236259.tif 000010
【図９】
2006236259.tif 000011
【図１０】
2006236259.tif 000012
【図１１】
2006236259.tif 000013
【図１２】
2006236259.tif 000014
【図１３】
2006236259.tif 000015
【図１４】
2006236259.tif 000016
【図１５】
2006236259.tif 000017
【図１６】
2006236259.tif 000018
【図１７】
2006236259.tif 000019
【図１８】
2006236259.tif 000020
【図１９】
2006236259.tif 000021
【図２０】
2006236259.tif 000022
【図２１】
2006236259.tif 000023
【図２２】
2006236259.tif 000024
【図２３】
2006236259.tif 000025
【図２４】
2006236259.tif 000026
【図２５】
2006236259.tif 000027
【図２６】
2006236259.tif 000028
【図２７】
2006236259.tif 000029
【図２８】
2006236259.tif 000030
【図２９】
2006236259.tif 000031
【図３０】
2006236259.tif 000032
【図３１】
2006236259.tif 000033
【図３２】
2006236259.tif 000034
【図３３】
2006236259.tif 000035