(57)【要約】【課題】操作履歴中から便利な使い方である操作ルールを効率良く抽出することのできる操作ルール生成装置を提供すること。【解決手段】情報端末１００の使い方である操作ルールを生成する装置であって、情報端末１００に対するユーザ操作の履歴を記憶する操作履歴記憶手段１０４と、操作ルールの構成要素となる操作部品と該操作部品の有効度とを管理する操作部品管理手段１０５と、操作部品管理手段１０５で管理されている有効度を考慮して選択した複数の操作部品の組み合わせから構成される操作ルールであって、当該操作ルールと同一の操作手順が操作履歴記憶手段１０４に記憶されているユーザ操作の履歴中に出現している操作ルールを抽出する操作ルール生成手段１０３とを備える。【選択図】図１
2010271816.tif 000002
【特許請求の範囲】
【請求項１】
情報端末の使い方である操作ルールを生成する装置であって、
前記情報端末に対するユーザ操作の履歴を記憶する操作履歴記憶手段と、
前記操作ルールの構成要素となる操作部品と該操作部品の有効度とを管理する操作部品管理手段と、
前記操作部品管理手段で管理されている有効度を考慮して選択した複数の操作部品の組み合わせから構成される操作ルールであって、当該操作ルールと同一の操作手順が前記操作履歴記憶手段に記憶されているユーザ操作の履歴中に出現している操作ルールを抽出する操作ルール生成手段と、
を備えることを特徴とする操作ルール生成装置。
【請求項２】
前記操作ルール生成手段は、少なくとも１つの操作部品の有効度が閾値以上となるように複数の操作部品を選択することを特徴とする請求項１に記載の操作ルール生成装置。
【請求項３】
前記操作ルール生成手段は、有効度の総和または平均が閾値以上となるように複数の操作部品を選択することを特徴とする請求項１に記載の操作ルール生成装置。
【請求項４】
前記操作ルール生成手段は、有効度のより高い操作部品をより優先的に選択することを特徴とする請求項１または２に記載の操作ルール生成装置。
【請求項５】
前記操作部品の有効度は、前記操作ルール生成手段で生成された操作ルールの中で前記操作部品が何回活用されているかに基づいて計算された値である、
ことを特徴とする請求項１乃至４の何れか１項に記載の操作ルール生成装置。
【請求項６】
前記操作部品の有効度は、前記操作ルール生成手段で生成された操作ルールの中で前記操作部品を活用している操作ルールが何個存在するかに基づいて計算された値である、
ことを特徴とする請求項１乃至４の何れか１項に記載の操作ルール生成装置。
【請求項７】
前記操作部品の有効度は、前記操作ルール生成手段で生成された操作ルールであって前記操作部品を活用している操作ルールがどの程度貢献しているかを表すルール貢献度に基づいて計算された値である、
ことを特徴とする請求項１乃至６の何れか１項に記載の操作ルール生成装置。
【請求項８】
前記操作部品管理手段からネットワーク経由でアクセル可能なサーバ装置を備え、
前記サーバ装置は、
前記操作部品とその有効度とその作成者情報とを含む操作部品情報を記憶する操作部品情報記憶手段と、
前記操作部品管理手段から送信された操作部品を含む操作部品情報を前記操作部品情報記憶手段に記憶する操作部品受付手段と、
を備えることを特徴とする請求項７に記載の操作ルール生成装置。
【請求項９】
前記サーバ装置は、
前記操作部品情報記憶手段に記憶された操作部品を前記操作部品管理手段に提供する操作部品提供手段と、
前記操作部品管理手段から前記操作部品の活用情報を受信し、該受信した活用情報に基づいて前記操作部品情報記憶手段に記憶された前記操作部品の有効度を更新する有効度計算手段と、
を備えることを特徴とする請求項8に記載の操作ルール生成装置。
【請求項１０】
前記サーバ装置は、
前記操作部品の有効度に応じて当該操作部品の作成者に報酬を与える報酬提供手段、
を備えることを特徴とする請求項９に記載の操作ルール生成装置。
【請求項１１】
前記ルール貢献度は、前記操作履歴において操作ルールのアクション部が出現した数に基づいて計算される値である、
ことを特徴とする請求項５乃至７の何れか１項に記載の操作ルール生成装置。
【請求項１２】
前記ルール貢献度は、前記操作履歴において操作ルールの条件部が成立した数と前記条件部が成立した時に前記操作ルールのアクション部が出現した数との割合に基づいて計算される値である、
ことを特徴とする請求項５乃至７の何れか１項に記載の操作ルール生成装置。
【請求項１３】
前記操作部品の有効度は、当該操作部品が使用された操作ルールの前記貢献度と、前記操作ルールの中で前記操作部品がどの程度貢献しているかを表す操作部品貢献割合とに基づいて計算された値である、
ことを特徴とする請求項５乃至１２の何れか１項に記載の操作ルール生成装置。
【請求項１４】
前記操作部品の有効度は、前記ルール貢献度と前記操作部品貢献割合とを乗算した値を、生成された複数の操作ルールに対し総和又は平均した値である、
ことを特徴とする請求項１３に記載の操作ルール生成装置。
【請求項１５】
前記操作部品貢献割合は、対象操作ルール内の構成操作部品の個数に対する対象操作部品の個数の割合として計算された値である、
ことを特徴とする請求項１３または１４に記載の操作ルール生成装置。
【請求項１６】
前記操作部品貢献割合は、対象操作ルール内の構成操作部品において各操作部品に重要度やコード長等による重みづけを行い、重み付きの割合として計算された値である、
ことを特徴とする請求項１３または１４に記載の操作ルール生成装置。
【請求項１７】
前記操作部品の有効度は、既存の操作部品との差分がより大きいほど、より大きくなるように計算される値である、
ことを特徴とする請求項１乃至１６の何れか１項に記載の操作ルール生成装置。
【請求項１８】
前記操作部品の有効度は、操作部品のコードの長さや引数の数がより大きいほど、より大きくなるように計算される値である、
ことを特徴とする請求項１乃至１７に記載の操作ルール生成装置。
【請求項１９】
前記ルール貢献度は、ルールがどの程度役に立ったかのユーザ評価に基づいて定まる値である、
ことを特徴とする請求項５乃至７の何れか１項に記載の操作ルール生成装置。
【請求項２０】
情報端末に対するユーザ操作の履歴を記憶する操作履歴記憶手段と、操作ルールの構成要素となる操作部品と該操作部品の有効度とを管理する操作部品管理手段とを備えた装置において前記情報端末の使い方である操作ルールを生成する方法であって、
前記操作部品管理手段で管理されている有効度を考慮して選択した複数の操作部品の組み合わせから構成される仮説操作ルールを生成するステップと、
前記生成した仮説操作ルールと同一の操作手順が前記操作履歴記憶手段に記憶されているユーザ操作の履歴中に出現しているかどうかを調べるステップと、
を含むことを特徴とする操作ルール生成方法。
【請求項２１】
情報端末に対するユーザ操作の履歴を記憶する操作履歴記憶手段を備えたコンピュータを、
前記操作ルールの構成要素となる操作部品と該操作部品の有効度とを管理する操作部品管理手段と、
前記操作部品管理手段で管理されている有効度を考慮して選択した複数の操作部品の組み合わせから構成される操作ルールであって、当該操作ルールと同一の操作手順が前記操作履歴記憶手段に記憶されているユーザ操作の履歴中に出現している操作ルールを抽出する操作ルール生成手段と、
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報端末の利用を便利・快適にするための使い方である操作ルールを生成する操作ルール生成装置に関する。
【背景技術】
【０００２】
近年、携帯電話端末、パーソナルコンピュータ等の情報端末（以下、単に端末とも称す）をマッシュアップ化する流れやWebサービスの参入障壁が低下しているという背景を受け、端末の利便性が向上している。しかしその反面、機能の多様化・複雑化が加速しており、便利な使い方を知っている人には非常に便利に使えるが、知らない人にはサービスや機能の恩恵が満足に受けられない、という二極化も進んでいると言える。  
【０００３】
以前の端末（非マッシュアップ端末）であれば、各機能のインタフェースを統一したり機能間の連携を高めるようなメーカ側の対策により、その二極化の事態を緩和することができたが、マッシュアップ端末などの近年の端末では、端末メーカが想定していないサービスをユーザが利用するケースが増えているため、以前のような対策で解決を図るのが難しい状況になってきている。
【０００４】
例えば、目的地の最寄り駅を地図サービスで確認し、最寄り駅までの電車の乗り継ぎを乗換検索サービスで検索し、検索結果を印刷する、など複数のサービスを組み合わせるような使い方は、非常に便利であったとしても、各サービスの提供者が異なることや、サービス内容やユーザ利用方法が日々進化しているため、あらかじめ端末に組み込んでおくのは難しいというのが現実である。
【０００５】
そこで、便利な使い方を、メーカがあらかじめ作りこんでおくのではなく、ユーザが端末を利用する中でシステムが自動的に発見し、ユーザが再利用できたり、共有できる仕組みが望まれる。
【０００６】
ユーザにとって便利な使い方を記憶し、後から再利用できる仕組みを目指す試みは数多く存在する。
【０００７】
例えばマクロ機能は、ユーザが記録の開始を指示し、便利な使い方と考えられる操作を実行し、最後に記録の終了を指示することで、便利な使い方をマクロとしてシステムに教示でき、後からそのマクロを呼び出すことで、便利な使い方を再利用できる仕組みを提供している。
【０００８】
また特許文献１では、ユーザの操作履歴を記憶し、操作履歴の中からアプリケーションの画面項目間の連携を抽出することで操作手順を抽出し、蓄積された操作手順からユーザが選択することで、便利な使い方を再利用できる仕組みを目指している。
【０００９】
また特許文献２では、ユーザの操作履歴を記憶し、操作履歴の中から操作に影響を与える操作を抽出することで操作手順を抽出し、蓄積された操作手順からユーザが選択することで、便利な使い方を再利用できる仕組みを目指している。
【００１０】
また特許文献３では、便利な使い方の単位を表現するために、時系列的な区切りを記憶することで、便利な使い方を再利用できる仕組みを目指している。
【００１１】
また特許文献４では、ユーザの操作履歴をサーバに記憶し、ユーザに対応する便利な使い方を再利用できる仕組みを目指している。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開平06-243118号公報
【特許文献２】特開平10-021192号公報
【特許文献３】特開平11-250038号公報
【特許文献４】特開2008-299735号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
このように、便利な使い方をマクロとしてユーザが明示的に教示するだけでなく、操作履歴の中からシステムに自動発見させることで、便利な使い方をより簡単に再利用できる仕組みを目指す試みも多い。しかしながら、操作履歴の中に存在する一連の手順が全て便利な使い方であるとは限られない。このため、操作履歴の中から一連の手順を単純に抽出するだけでは、役に立たない無駄な使い方が数多く抽出されてしまうという課題がある。
【００１４】
他方、便利な使い方の典型例や或るユーザによって新規に発見された便利な使い方のリストを公開しておき、ユーザの操作履歴に出現している使い方のうち、前記公開されたリストに記載されている使い方と同じ使い方を抽出するようにすれば、役に立たない無駄な使い方が抽出される事態は防止することができる。しかし、この方法では既に知られた使い方と同じ使い方しか抽出できず、新規で便利な使い方を発見することはできないという課題がある。  
【００１５】
本発明の目的は、操作履歴中から便利な使い方である操作ルールを効率良く抽出することのできる操作ルール生成装置を提供することにある。
【課題を解決するための手段】
【００１６】
本発明の操作ルール生成装置は、情報端末の使い方である操作ルールを生成する装置であって、前記情報端末に対するユーザ操作の履歴を記憶する操作履歴記憶手段と、前記操作ルールの構成要素となる操作部品と該操作部品の有効度とを管理する操作部品管理手段と、前記操作部品管理手段で管理されている有効度を考慮して選択した複数の操作部品の組み合わせから構成される操作ルールであって、当該操作ルールと同一の操作手順が前記操作履歴記憶手段に記憶されているユーザ操作の履歴中に出現している操作ルールを抽出する操作ルール生成手段とを備える。
【発明の効果】
【００１７】
本発明によれば、操作履歴中から便利な使い方である操作ルールを効率良く抽出することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施形態の構成を示すブロック図
【図２】操作ルール生成手段の処理の一例を示すフローチャート
【図３】情報端末とサーバ装置との間の情報の流れを示すシーケンス図
【図４】操作部品の例と複数の操作部品を組み合わせて生成される操作ルールの例
【図５】情報端末の操作部品管理手段の内部構成とサーバ装置の内部構成の一例を示すブロック図
【図６】サーバ装置の操作部品情報記憶手段に記憶される操作部品情報の構成例
【発明を実施するための形態】
【００１９】
本発明の実施の形態について図面を参照して詳細に説明する。
【００２０】
図1を参照すると、本発明の一実施の形態に係る情報端末１００は、操作ルール生成装置１０１と、状況取得手段２０１と、行動決定手段２０２と、行動実行手段２０３とを含んで構成される。また、操作ルール生成装置１０１は、操作ルール管理手段１０２と、操作ルール生成手段１０３と、操作履歴記憶手段１０４と、操作部品管理手段１０５とを備えている。
【００２１】
情報端末１００は、携帯電話端末、パーソナルコンピュータ端末などの端末であり、ＣＰＵ、キーボード、ディスプレイ、メモリ、通信装置等のハードウェアと、オペレーションシステム、各種アプリケーションプログラム等のソフトウェアとで構成される。状況取得手段２０１、行動決定手段２０２、行動実行手段２０３や、操作ルール生成装置１０１を構成する操作ルール管理手段１０２、操作ルール生成手段１０３、操作履歴記憶手段１０４、操作部品管理手段１０５は、例えばＣＰＵとその上で実行されるプログラムとで実現することができる。
【００２２】
状況取得手段２０１は、情報端末１００の置かれた状況やユーザの状況を取得する手段であり、例えば、現在の時刻や、現在地の緯度経度情報、情報端末１００のバッテリ状態、ユーザの心拍数、ユーザがこれまでに行ってきた操作、スケジューラに登録されたユーザのスケジュールなど、状況に関する情報を取得する。
【００２３】
行動決定手段２０２は、状況取得手段２０１から得られた状況情報を利用し、操作ルール管理手段１０２で管理されている操作ルールを参照して、現在の状況において情報端末１００が行うべき行動を決定する。
【００２４】
行動実行手段２０３は、行動決定手段２０２で決定された行動を実行する。例えば、アラームタイマーをセット（タイマーアプリケーションを起動して時刻を入力し決定）したり、横浜の天気予報を表示（ブラウザを起動して天気予報ページに移動して横浜と入力）したり、ユーザのスケジュールを表示（ブラウザを起動してスケジューラサービスにログイン）したりする。
【００２５】
操作ルール管理手段１０２は、行動決定手段２０２で行動を決定する際の指針となる操作ルールを管理（記憶）する。
【００２６】
操作ルールは、便利または快適な使い方を示す手順の情報である。例えば、操作ルールは、「夜10時に渋谷にいたら、渋谷駅から自宅最寄り駅までの最終電車を検索し、その時刻の15分前をアラームタイマーにセットする」のようなものであり、「どのような状況で何をどのように使うか」として記述できる。状況とは、時間帯や場所などのコンテクストであり、操作ルールを発火させる条件部（トリガ）と考えることができる（条件部をsと記述する）。「何をどのように使うか」は、例えば天気予報サービスで場所を横浜市と設定して表示するというように、サービスの起動やそこで行う具体的な内容が含まれ、操作ルールにおけるアクション部と考えることができる（アクション部をaと記述する）。このとき、操作ルールは、0個以上の状況と1個以上のアクションを組み合わせたもので、s1,s2,…,sn→a1,a2,…amのような形で記述することもできる。
【００２７】
ここまでの構成により、例えば、条件部として「夜10時に渋谷にいたら」、アクション部として「渋谷駅から自宅最寄り駅までの最終電車を検索し、その時刻の15分前をアラームタイマーにセットする」を有する操作ルールを操作ルール管理手段１０２に記憶しておくことにより、「夜10時に渋谷にいたら、渋谷駅から自宅最寄り駅までの最終電車を検索し、その時刻の15分前をアラームタイマーにセットする」というような便利な使い方を、ユーザに対して提案したり、ユーザの代わりに実行したり、そのような便利な使い方があることを教示したりすることができる。
【００２８】
他方、操作ルール生成手段１０３、操作履歴記憶手段１０４および操作部品管理手段１０５は、新規で便利な使い方を発見し、操作ルール管理手段１０２に新たな操作ルールを追加するために用意されている。
【００２９】
操作履歴記憶手段１０４は、情報端末１００に対するユーザ操作の履歴を記憶する。操作履歴には、ユーザの操作に加え、操作時の状況をあわせて記憶してもよい。例えば以下のように、操作内容に加え、日時や場所などの状況を合わせて記憶できる。
【００３０】
日時            利用者  場所    操作内容
2008年10月21日 18:45:12 ユーザA 事務所B ブラウザを起動
2008年10月21日 18:45:20 ユーザA 事務所B 天気予報サイトに接続
2008年10月21日 18:45:30 ユーザA 事務所B 「横浜」を選択
2008年10月21日 18:45:35 ユーザA 事務所B 「決定」をクリック
【００３１】
操作部品管理手段１０５は、操作ルールの構成要素となる操作部品とその操作部品の有効度とを管理する。管理対象となる操作部品とその有効度は、情報端末１００のローカルな記憶手段に記憶して管理しても良いし、複数の情報端末１００で共有するサーバ上の記憶手段に記憶して管理しても良い。操作部品の有効度は、例えば、正の実数値で表現され、その値がより大きいほど、その操作部品がより有効であることを示す。勿論、有効度を表す数値の型はこれに限定されない。操作部品の有効度の具体的な計算方法については後述する。
【００３２】
操作ルール生成手段１０３は、操作部品管理手段１０５で管理されている有効度を考慮して選択した複数の操作部品の組み合わせから構成される操作ルールであって、当該操作ルールと同一の操作手順が前記操作履歴中に出現している操作ルールを抽出する。有効度を考慮して複数の操作部品を選択する具体的な方法としては、例えば、少なくとも１つの操作部品の有効度があらかじめ設定された閾値以上となるように複数の操作部品を選択する方法がある。また、別の方法としては、有効度の総和または平均があらかじめ設定された閾値以上となるように複数の操作部品を選択するようにしても良い。さらに、これらの方法において、有効度のより高い操作部品をより優先的に選択するようにしても良い。
【００３３】
図４は、操作部品の例と、複数の操作部品を組み合わせて生成される操作ルールの例を示している。図中、それぞれの四角は操作部品を示しており、５０１乃至５０３、５０４乃至５０６、５０７乃至５０９、５１０乃至５１４の塊は、それぞれ操作ルールを形成している。
【００３４】
操作部品５０１は、「メール一括処理(メール条件x,メール処理y)」という論理記述と、「{for(i=0; i<mail.num(); i++){if(x(mail[i]) y(mail[i]);)}}」というコンピュータで解釈可能なプログラム断片とを有する。この操作部品５０１は、メールボックスにおける全てのメールを対象に、条件xを満たしたメールをyで処理する、という内容（機能）を持っている。操作部品５０２は、「boolean is既読メールマガジン(Mail m)extends メール条件」という論理記述と、「{return(m.既読==TRUE && isメールマガジン(m));}」というプログラム断片とを有する。この操作部品５０２は、既読メールマガジンであるという条件の成否を判定する機能を持っている。操作部品５０３は、「メール削除(Mail m)extendsメール処理」という論理記述と、「{delete(m);}」というプログラム断片とを有する。この操作部品５０３は、メールを削除する機能を持っている。
【００３５】
操作部品５０１乃至５０３を組み合わせ、すなわち、操作部品５０１中の条件xとして操作部品５０２を指定し、処理yとして操作部品５０３を指定することで、「メールボックスにおける既読メールマガジンをすべて削除する」という操作ルールが構成される。
【００３６】
同様に、操作部品５０４乃至５０６の塊は「開催通知メールが来たらスケジュールに登録する」という操作ルールを構成し、操作部品５０７乃至５０９の塊は「要返信メールに自動返信してくれる」という操作ルールを構成し、操作部品５１０乃至５１４の塊は「Webペットサイトにアクセスし、餌をあげる」という操作ルールを構成する。
【００３７】
操作部品５０１乃至５０３の塊は、操作部品５０１乃至５０３中のプログラム断片を組み合わせることにより、次のように、コンピュータに解釈可能なルールになる。他の操作部品の塊も同様である。
【００３８】
for (i=0; i<mail.num(); i++) {
if (mail[i].既読 == TRUE && isメールマガジン(mail[i])) delete mail[i];
}
【００３９】
操作部品５０１の内部に宣言されているメール条件やメール処理は、組み合わせ可能な操作部品の型を示しており、メール条件型の操作部品である５０２と、メール処理型の操作部品である５０３とを組み合わせることで、一つの意味を持つルールが形成されている。操作部品５０１乃至５０３のような組み合わせ方を深さ方向の組み合わせと呼ぶ。
【００４０】
操作部品５１０乃至５１４は、組み合わせ可能な型が宣言されていない場合の組み合わせ方の例であり、これらの操作部品は、逐次的に実行される。このような組み合わせ方を並列方向の組み合わせと呼ぶ。
【００４１】
このように、操作部品を組み合わせる際は、深さ方向と並列方向の両方で組み合わせが可能である。また、図には示していないが、状況に関する操作部品と関連付けることで、「定期的に、メールマガジンの既読メールを削除する」、「1日3回、Webペットサイトにアクセスし、餌をあげる」のように状況に関連付けたルールを形成することもできる。
【００４２】
操作ルール生成手段１０３の位置づけは前述のとおりであるが、一実施の形態として、具体的には、図２に示すような手順で操作ルールを生成できる。
【００４３】
まず、複数の操作部品を組み合わせて、仮説操作ルールを作成する（３０１、３０２）。組み合わせる複数の操作部品を操作部品管理手段１０５から選択する際には、操作部品の有効度を考慮する。具体的には、前述したように、少なくとも１つの操作部品の有効度があらかじめ設定された閾値以上となるように複数の操作部品を選択したり、有効度の総和または平均があらかじめ設定された閾値以上となるように複数の操作部品を選択する。なお、山登り法、焼きなまし法、遺伝的手法などの探索的な組み合わせ戦略や、履歴に蓄積された操作の組み合わせとマッチするように操作部品を組み合わせる戦略を適用してもよいが、その場合にも有効度がより高い操作部品がより優先的に選択されるようにするのが望ましい。
【００４４】
次に、操作履歴を基に、仮説操作ルールの適合度を計算する（３０３）。状況Sにおいて、ユーザが頻繁に操作Aを行うのであれば、状況Sにおける操作Aは、そのユーザにとって便利・快適な操作であると考えられるため、適合度が高くなるように設定する。
【００４５】
例えば、適合度は次の計算式で定義できる。
P(A|S) = Number(S,A) / Number(S)
ただし、Number(S,A)は状況Sにおいて操作Aを行った回数、Number(S)は状況Sの回数である。また、分母Number(S)が小さい場合では、適合度が高く評価されすぎてしまうため、Number(S)が一定以上の大きさを超えない場合は、適合度を小さくするような補正も行う。
【００４６】
そして、前記適合度があらかじめ設定された閾値よりも高ければ、当該仮説操作ルールを採択し、低ければ、当該仮説操作ルールを廃棄して、ステップ３０２に戻って前述した処理と同様の処理を繰り返す（３０４）。なお、あらかじめ設定した数の操作ルールが生成されるまで、図２の処理を繰り返すようにしても良い。また、適合度の計算は上述した方法に限定されず、他の任意の方法を使用できる。例えば、仮説操作ルールと同じ手順が操作履歴中に少なくとも１回存在すれば、あらかじめ設定された閾値以上の適合度を与えるようにしても良い。
【００４７】
以上のような手順で、操作履歴中から便利な使い方である操作ルールを効率良く抽出（発見）することが可能になる。
【００４８】
その第１の理由は、操作履歴の中から一連の手順を単純に抽出するだけでは、役に立たない無駄な使い方が数多く抽出されてしまうのに対して、本実施の形態では、有効な操作部品を含む仮説操作ルールと同じ手順を操作履歴中から抽出するため、役に立たない無駄な使い方の手順が抽出される確率が小さくなるためである。
【００４９】
第２の理由は、便利な使い方の典型例や或るユーザによって新規に発見された便利な使い方と全く同じ使い方を操作履歴中から抽出するだけでは、新規で便利な使い方を発見することはできないが、本実施の形態では、便利な使い方の全部と同じでなく一部分が同じ使い方の手順を抽出することができるためである。より具体的に説明すると、操作部品ａ、操作部品ｂ、操作部品ｃから構成される便利な操作ルールＲ１が存在しているものとする。操作ルールＲ１が便利であるため、その構成部品であるａ，ｂ，ｃの有効度は高くなっている。ここで、操作部品ａと、ａ〜ｃ以外の操作部品ｘとの２つの操作部品を組み合わせた仮説操作ルールＲ２と同じ手順が操作履歴中に存在して適合度が閾値以上となった場合、当該仮説操作ルールＲ２が新たな操作ルールＲ２として生成される。操作ルールＲ２は、操作ルールＲ１とは手順が違う新規なルールである。また、構成要素中の操作部品ａは有効な操作部品であるため、操作ルールＲ２も便利なルールである可能性が高くなる。
【００５０】
以上の理由により、本実施の形態によれば、操作履歴中から便利な使い方である操作ルールを効率良く抽出（発見）することができる。
【００５１】
ところで、操作部品管理手段１０５は、前述のように、操作部品を管理するが、サービス内容やユーザ利用方法が日々進化するような近年の状況にあっては、操作部品が陳腐化、老朽化しやすいという課題を内包している。
【００５２】
例えば、操作部品の例としては、「GPSから渋谷にいることを検出する操作部品」、「自宅最寄り駅までの最終電車を検索する操作部品」のようなものが考えられるが、サービスが進化すれば、１年後には「GPSから東京都内の駅にいることを検出する」サービスや、「自宅最寄り駅までの最終電車を検索し値段も表示してくれる」サービスなどに、変化するかもしれない。
【００５３】
また、「アラームタイマーにセットする」サービスが新しく登場するかもしれない。サービスが変化すれば、操作部品も対応して変化させなければならないし、新しいサービスが登場すれば、操作部品が新しく作成・登録されているのが望ましい。
【００５４】
そこで、操作部品管理手段１０５に、新たな操作部品を作成する機能など幾つかの付加機能を設けておくことが望ましい。付加機能を有する操作部品管理手段１０５の一例を図５に示す。
【００５５】
図５を参照すると、操作部品管理手段１０５は、操作部品作成手段６０１と、操作部品登録手段６０２と、操作部品利用手段６０３と、操作部品活用情報送信手段６０４と、報酬受信手段６０５とを備え、インターネット等のネットワーク６１０を通じて、サーバ装置６２０と通信可能に接続されている。
【００５６】
サーバ装置６２０は、操作部品の情報を一括して管理するサーバであり、操作部品情報記憶手段６２１と、操作部品提供手段６２２と、操作部品受付手段６２３と、有効度計算手段６２４と、報酬提供手段６２５とを備えている。なお、サーバ装置６２０にはWikiなどの共有サービスを利用するのもよい。
【００５７】
図６を参照すると、サーバ装置６２０の操作部品情報記憶手段６２１には、１以上の操作部品情報７００が記憶される。個々の操作部品情報７００は、当該操作部品情報７００を一意に識別するための識別子７０１と、操作部品７０２と、その有効度７０３と、作成者情報７０４と、登録日時７０５と、報酬履歴７０６とから構成される。作成者情報７０４は、当該操作部品７０２を作成したユーザを特定する情報であり、例えば情報端末１００の通信アドレスなどが使用される。登録日時７０５は、当該操作部品７０２がサーバ装置６２０に登録された日時である。報酬履歴７０６は、当該操作部品７０２を作成したユーザに対して与えた報酬の内容や提供日時等の履歴である。
【００５８】
次に図５に示す操作部品管理手段１０５およびサーバ装置６２０の動作について、図３に示すシーケンスの流れに沿って説明する。
【００５９】
（1）ユーザＡが自身の情報端末１００−Ａにおいて新たな操作部品を作成するステップ４１１。
この操作部品の作成ステップ４１１では、例えば、前述したマクロの作成方法により操作部品を作成する。すなわち、自身の情報端末１００−Ａの操作部品作成手段６０１で、記録の開始を指示し、マクロとして作成したい一連の操作を実行し、記録の終了を指示することで、操作部品を作成することができる。
【００６０】
また、操作部品の作成ステップ４１１では、外部のスクレイピングサービスなどを利用して操作部品を作成してもよい。例えば、「A駅からB駅までの最終電車を検索する操作部品」を作成・登録する場合は、まず、操作部品作成開始ボタンを押してから、乗換検索サイトのURLを開き、出発駅に相当するセルにAを入力し、到着駅に相当するセルにBを入力し、オプションに最終電車を設定し、検索ボタンを押し、表示された検索結果の中から最終電車の乗り換え方法や出発時間をマウスで選択し、テキスト切り出しボタンを押し、操作部品作成終了ボタンを押すことで、操作部品の実行する操作やその結果を指定して作成でき、操作部品名やユーザID等の補足情報とともに登録できる。
【００６１】
（2）ユーザＡが、作成した操作部品をサーバ装置６２０へ登録するステップ４１２。
この操作部品の登録ステップ４１２では、操作部品登録手段６０２によりサーバ装置６２０に対しネットワーク経由で操作部品を送付する。サーバ装置６２０の操作部品受付手段６２３は、操作部品情報記憶手段６２１に新たな操作部品情報７００のエントリを確保し、そのエントリの操作部品７０２の個所に受信した操作部品を記憶する。また、操作部品に付随してユーザＡから送られてくる作成者情報を７０４の個所に記憶し、登録日時７０５に現在日時を設定する。有効度７０３はあらかじめ定められた初期値に設定し、提供報酬履歴７０６はＮＵＬＬとする。
【００６２】
（3）ユーザＢが自身の情報端末１００−Ｂにおいて新たな操作ルールを作成するためにサーバ装置６２０から操作部品を取得するステップ４１３。
操作ルールを生成する際は、本人が作成した操作部品だけでなく、サーバ装置６２０に登録された他人の操作部品を使うこともできる。具体的には、情報端末１００−Ｂの操作部品利用手段６０３からネットワーク経由でサーバ装置６２０の操作部品提供手段６２２をアクセスし、操作部品情報記憶手段６２１に記憶されている操作部品の一覧表から必要な操作部品を選択すれば、その選択した操作部品が操作部品提供手段６２２からネットワーク経由で操作部品利用手段６０３へ送信される。操作部品利用手段６０３は受信した操作部品を操作ルール生成手段１０３に伝達し、操作ルール生成手段１０３は、受け取った操作部品により前述した仮説操作ルールの生成を行う。
【００６３】
（4）ユーザＢが部品活用情報を情報端末１００−Ｂからサーバ装置６２０へ送信するステップ４１４。
操作部品を活用して操作ルールを生成した場合、当該操作部品の有効度の更新のために部品活用情報をサーバ装置６２０へ送信する。具体的には、情報端末１００−Ｂの操作部品活用情報送信手段６０４によりネットワーク経由でサーバ装置６２０の有効度計算手段６２４に対して、操作ルールの生成に活用した操作部品の活用情報を送信する。送信する活用情報の内容としては、活用した操作部品の識別子、その操作部品を使用した操作ルールの生成に成功したか否かの情報、生成した操作ルールの中身、生成した操作ルールをユーザに対して提案や推薦を行った際に受け入れられたかどうかの情報などが考えられる。
【００６４】
（5）サーバ装置６２０が部品活用情報に応じて操作部品の有効度を計算するステップ４１５。
サーバ装置６２０の有効度計算手段６２４は、ユーザの情報端末から受信した部品活用情報に基づいて、操作部品情報記憶手段６２１に記憶されている各操作部品の有効度を定期的に更新する。有効度計算手段６２４は、例えば、良い操作ルールで頻繁に利用されている操作部品は、良い操作部品であるという論理に従って、操作部品の有効度を計算する。具体的には、操作部品の有効度を、その操作部品を使ったルールが生成された頻度に応じて、例えば次式により計算する。
操作部品の有効度 ＝ Sigma_操作ルール 各操作ルールの貢献度×操作ルール内の操作部品貢献割合
【００６５】
即ち、操作部品の有効度は、その操作部品を使って生成された全ての操作ルールに対し、各操作ルールがどの程度貢献しており、そのルールの中で対象操作部品がどの程度貢献しているかを乗算して、総和を取ることで、計算できる。総和を操作ルール数で割って求めた平均を用いても良い。
【００６６】
操作ルールの貢献度は、ルールが成立して、ユーザに対して提案や推薦を行った際の、提案を受け入れられたかどうかによって定まる値とすることができる。例えば、提案が受け入れられた場合、その操作ルールの貢献度は例えば値１、受け入れられなかった場合、その操作ルールの貢献度は例えば値０とすることができる。
【００６７】
また、操作ルールの貢献度は、ルールがどの程度役に立ったか、などの評価を一般ユーザから収集し、その評価に応じた値とすることもできる。例えば、大いに役立った場合は値３、少しは役立った場合は値２、あまり役立たなかった場合は値１、ほとんど役立たなかった場合は値０とすることができる。
【００６８】
また、操作ルールの貢献度は、ルールが成立したかどうかによって定まる値とすることができる。例えば、ルールが成立した場合は値１、ルールが成立しなかった場合は値０とすることができる。
【００６９】
他方、操作ルール内の操作部品貢献割合は、例えば、操作ルール内の操作部品全体個数に対する対象操作部品個数の割合とすることができる。具体的には、操作ルールがそれぞれ異なる３つの操作部品から構成されている場合は、１つの操作部品の貢献割合を例えば1/3とする。
【００７０】
また、操作ルール内の操作部品貢献割合は、例えば、各操作部品に重要度やコード長などで重みづけを行い、重み付きの割合としてもよい。
【００７１】
ここで、操作部品の有効度を計算する際、公開されている有効度の高い既存の操作部品（登録日時がその操作部品よりも過去の操作部品）を少しだけ変えた操作部品も有効度が高くなる可能性が高いが、既存の操作部品からの差分が小さいのであれば、貢献度合いも小さいと考えるのが妥当的である。そのため、有効度を計算する際に、既存の操作部品との差分の割合の大きさを、貢献度に加味するようにしても良い。例えば、既存の操作部品との差分の割合が１割しかない操作部品の場合、前記の式で計算した有効度に0.1を乗じた値をその操作部品の有効度とすることができる。
【００７２】
さらに、操作ルール生成手段１０３のアルゴリズムによっては、引数を数多く必要とするような複雑な操作部品を利用した操作ルールの発見が難しく、単純な操作部品ばかりが有効度が高くなってしまう場合がある。このように複雑な操作部品の有効度が過小評価されやすい場合は、複雑な操作部品に対する有効度を高く評価するような補正を行うことも有効である。例えば、操作部品のコードの長さや引数の数がより大きいほど、評価がより高くなりやすいような補正を追加するとよい。
【００７３】
（6）サーバ装置６２０が操作部品の有効度に応じてその操作部品を作成したユーザＡに対して報酬を与えるステップ４１６。
サーバ装置６２０の報酬提供手段６２５は、操作部品の有効度に応じて、その操作部品を作成したユーザに報酬を与える。報酬は、金銭やサービスポイントなどであってもよいし、名誉や信頼というものであってもよい。金銭による報酬は、広告モデルなどでよく使われており、名誉や信頼による報酬は、質問回答サービスやオークションサービスなどでよく使われているため、詳細については割愛する。
【００７４】
なお、有効度をメンテナンスに活用することもできる。例えば、サーバ装置６２０において管理する操作部品の数を削減したいときには、操作部品の有効度が低い順に削除する、新しい操作部品を作成するときには有効度の高い操作部品を参考にしながら作成する、という運用が可能である。
【００７５】
以上本発明の実施の形態について説明したが、本発明は以上の実施の形態にのみ限定されず、その他各種の付加変更が可能である。また、操作部品の有効度の計算方法も前述した式による方法以外の任意の方法を採用することが可能である。例えば、操作部品の有効度は、操作ルール生成手段で生成された操作ルールの中で当該操作部品が何回活用されているかに基づいて計算しても良いし、操作ルール生成手段で生成された操作ルールの中で当該操作部品を活用している操作ルールが何個存在するかに基づいて計算しても良いし、
操作ルール生成手段で生成された操作ルールであって当該操作部品を活用している操作ルールがどの程度貢献しているかを表すルール貢献度のみに基づいて計算しても良い。
【００７６】
また、ルール貢献度は、操作履歴において操作ルールのアクション部が出現した数に基づいて計算しても良いし、操作履歴において操作ルールの条件部が成立した数と条件部が成立した時に操作ルールのアクション部が出現した数との割合に基づいて計算しても良い。
【符号の説明】
【００７７】
１００…情報端末
１０１…操作ルール生成装置
１０２…操作ルール管理手段
１０３…操作ルール生成手段
１０４…操作履歴記憶手段
１０５…操作部品管理手段
【図１】
2010271816.tif 000003
【図２】
2010271816.tif 000004
【図３】
2010271816.tif 000005
【図４】
2010271816.tif 000006
【図５】
2010271816.tif 000007
【図６】
2010271816.tif 000008