JP5916596B2 - タスク配分サーバ、タスク配分方法、およびタスク配分プログラム - Google Patents

タスク配分サーバ、タスク配分方法、およびタスク配分プログラム Download PDF

Info

Publication number
JP5916596B2
JP5916596B2 JP2012275467A JP2012275467A JP5916596B2 JP 5916596 B2 JP5916596 B2 JP 5916596B2 JP 2012275467 A JP2012275467 A JP 2012275467A JP 2012275467 A JP2012275467 A JP 2012275467A JP 5916596 B2 JP5916596 B2 JP 5916596B2
Authority
JP
Japan
Prior art keywords
task
user
service
estimated value
probability
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012275467A
Other languages
English (en)
Other versions
JP2014120031A (ja
Inventor
辰也 石原
辰也 石原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2012275467A priority Critical patent/JP5916596B2/ja
Priority to CN201310628148.5A priority patent/CN103870913B/zh
Publication of JP2014120031A publication Critical patent/JP2014120031A/ja
Application granted granted Critical
Publication of JP5916596B2 publication Critical patent/JP5916596B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、複数種類のサービスからのタスクを配分するための技術に関し、より詳細には、特定種類のサービスからのタスクの作業の遅れをなくして全体的な作業の効率化を図るための技術に関する。
近年、インターネットを通じて不特定多数の群集に業務を委託するクラウドソーシングが注目されている。Amazon.com,Inc.が運営するAmazon Mechanical Turkや、InnoCentive,Inc.が運営するInnoCentiveは世界的に有名なクラウドソーシングである。これまでのクラウドソーシングの仕組みでは、ユーザは特定のサービスを提供するサーバに能動的にアクセスして作業を行っていた(図1(a)を参照)。しかしユーザが能動的にアクセスするだけでは、集められる労働力は限られている。
そこで、様々なクラウドソーシングからのタスクを1つのサービスに集約し、同一のインタフェースで様々な種類のタスクをユーザに提示し続ける方法が考えられる(図1(b)参照)。しかし、それぞれ異なる興味・スキルのセットを持つユーザにランダムにタスクを提示しても、多くの作業量は期待できない。
ユーザ本人についての過去の履歴又は類似する他についての履歴を利用して最終的に推薦すべき対象を決定する従来技術として特許文献1〜4が存在する。
特許文献1は、ユーザのロールに基づいてユーザのタスクを推定し、推定したユーザのタスクを支援するためのサービスを検索し、ユーザのタスクに応じたサービスを推薦するサービス推薦システムを開示する。特許文献1はまた、より確度の高いタスク推定を行う場合は、現在の時間、及び、現在のユーザの位置情報と、タスクに対応付けられた時間情報及び場所情報(「時間と場所の利用ログ」又は「標準的な時間、場所」)との比較を行うことにより、ユーザ行動を推定する技術を開示する。
特許文献2は、ユーザが使う複数の機器から嗜好を抽出し、よりユーザの興味に近いコンテンツを推薦できるようにする情報検索システムを開示する。特許文献2はまた、HDDに記憶されたユーザの視聴履歴、操作履歴を検索し、ユーザの嗜好を分析して、得られた嗜好情報に基づいて、興味データを生成する技術を開示する。
特許文献3は、設備に対する作業に関する複数の技術情報、複数の設備各々の状況を表す複数の設備情報、及び端末における技術情報の閲覧の実績を表す閲覧実績情報にアクセスし、閲覧実績情報に対応する第1の設備情報と目的の設備に対応する第2の設備情報とを取得し、第1の設備情報を含む比較情報と第2の設備情報を含む対象情報との関連度を計算し、その関連度に基づいて、閲覧実績情報に対応する技術情報の中から出力対象として優先する情報を抽出する情報提供装置を開示する。特許文献3はまた、相関計算処理において、協調フィルタリング手法を用いて正規化後の比較データ(第1のユーザ経歴データ)各々と、正規化後の対象データ(第2のユーザ経歴データ232)との関連度(相関の高さ)を計算することを開示する。
特許文献4は、パーソナル・コンピュータには、ユーザの一覧保存するユーザ一覧テーブルと、画像に関連するタスクの一覧を保存するタスク一覧テーブルと、タスクと操作とを関連付けた操作履歴を保存する操作履歴テーブルとを具備するデータベース部を備え、タスク情報管理サーバには、タスク情報を保存した情報管理データベース部を備え、ユーザがファイルに対する操作を行う際には、そのファイルに関連するタスクに基づきユーザの操作する可能性が高い操作を予測し、提示する技術を開示する。
また、複数の計算機システムを用いてジョブを実行する場合に、利用者が依頼したジョブが完了する時間をあらかじめ予測すると同時に、計算機システムの利用に際して、ジョブの完了期限を考慮したジョブ配分を実現する従来技術として特許文献5が存在する。特許文献5は、複数の計算機システムを備えた分散処理システムにおいて、計算機システムの各々の稼働情報を共有し、計算機システムの一つに投入するジョブの実行優先度の最適化および実行期限を指定し、投入したジョブの実行完了時期を予測し、予測結果に応じて変更した実行優先順位で再度ジョブの実行完了時期を予測し、予測結果に応じて稼働情報を共有する他の計算機システムへジョブ実行を依頼する技術を開示する。
また、クラウドソーシングにおけるワーカーの到着とタスクの実行をポアソン過程でモデル化した上でコストの最適化を行う従来技術として非特許文献1及び2が存在する。
非特許文献1は、ワーカーの作業を予測した上で時間内に作業を終わらせるために報酬を決定する技術を開示する。
非特許文献2は、クラウドソーシングにおけるワーカーの到着とタスクの実行をポアソン過程でモデル化することで、リアルタイム性を要求するクラウドソーシングのタスクを小さいコストで実現する技術を開示する。
また、非特許文献3は、ウィキペディアにおける編集作業のタスク配分技術を開示する。より具体的には、非特許文献3は、ユーザが編集した記事のタイトル、リンク構造から次に編集すべき記事を推薦する技術を開示する。
なお、以下の非特許文献4及び5は、それぞれMatrix Factorizationによる協調フィルタリング、Tensor Factorizationによるコンテキストを考慮した協調フィルタリングを示す背景技術として列挙するものである。
特開2007−179185号公報 特開2004−355070号公報 特開2011−227601号公報 特開2008−262554号公報 特開2008−256222号公報
S. Faridani, B.Hartmann, P. Ipeirotis, "What's the Right Price? Pricing Tasks forFinishing on Time", Proceedings of the Third Human Computation Workshop,2011 Michael Bernstein, David R. Karger, Robert C. Miller, and Joel R. Brandt,"Analytic Methods for Optimizing Realtime Crowdsourcing", Proceedings of CollectiveIntelligence 2012 DanCosley, Dan Frankowski, Loren Terveen, John Riedl, "SuggestBot: UsingIntelligent Task Routing to Help People Find Work in Wikipedia", IUI '07 Proceedings of the12th international conference on Intelligent user interfaces, 2007, Pages 32-41 Gabor Takacs, IstvanPilaszy, Bottyan Nemeth, "Major components of the Gravity RecommendationSystem", ACM SIGKDD Explorations Newsletter - Special issue on visualanalytics Volume 9 Issue 2, December 2007 , Pages 80-83 AlexandrosKaratzoglou, Xavier Amatriain, Linas Baltrunas, "MultiverseRecommendation: N-dimensional Tensor Factorization for Context-awareCollaborative Filtering", RecSys '10Proceedings of the fourth ACM conference on Recommender systems, Pages79-86
しかしながら、特許文献1〜4及び非特許文献3の技術は、特定の人又は物について過去の履歴に基づき推薦すべき対象を決定する技術であり、これら文献では全体的な作業の効率化を図るという考えはない。従って、上記技術をクラウドソーシングにおけるタスク配分に採用したとしても、特定種類のタスクに人気が集中し、一部のタスクについては作業が遅れるという事態を防ぐことはできない。
一方、非特許文献1及び2の技術は、クラウドソーシングにおいて全体的な作業の効率化を図るという観点からタスクを配分する技術を開示する。しかしながら非特許文献1の技術は時間内に作業を終わらせるために報酬を与える技術であるため場合によってはコストがかかる。また、非特許文献2の技術は、その実行可能なタスクに基づきワーカーを複数のグループに分け、タスクとワーカーの到着レートを考慮してスループットが最もよくなるようグループに対してタスクの配分を決定するものである。しかしながら非特許文献2の技術では、タスク配分時において実際のタスク実行状況が考慮されることはないため、やはり一部のタスクについて作業が遅れるという事態は起こり得る。
また、特許文献5の技術は、利用者が所属する部門の計算機システムでは利用者が要望する日程を満足させることができない場合に他部門が運用する計算機システムの利用可能性を調べて利用者が要望する期限までにジョブを完了させる技術を開示する。しかしながら、特許文献5の技術においてジョブを完了させるのは計算機システムであるため、これをジョブの実行が人間によってなされるクラウドソーシングのサービスに単純に適用することはできない。
なお、上述したように非特許文献4及び5は、本発明の実施形態の1つにおいて利用する協調フィルタリング技術を説明する文献としてリストしたにすぎない。
本発明は、上記従来技術における問題点に鑑みてなされたものであり、本発明は、複数種類のサービスからのタスクを配分するクラウドソーシングのサービスにおいて、特定種類のサービスからのタスクの作業の遅れをなくして全体的な作業の効率化を図ることのできるタスク配分方法、タスク配分サーバ、およびタスク配分プログラムを提供することを目的とする。
本発明は、上記従来技術の課題を解決するために以下の特徴を有するタスク配分方法を提供する。本発明のコンピュータの処理により複数種類のサービスからのタスクをユーザに配分するためのタスク配分方法は、(a)前記コンピュータが、前記複数種類のサービスの各々について、前記ユーザの前記サービスからのタスクの実行履歴から前記ユーザの興味度の推定値と該推定値の不確かさを算出するステップと、(b)前記コンピュータが、前記複数種類のサービスの各々について、前記興味度の推定値と該推定値の不確かさに基づいて前記サービスからのタスクの優先度を算出するステップであって、前記タスクの優先度は同一の前記サービスからのタスクを配分されている他のユーザにより前記同一のサービスからのタスクが実行されていない確率を考慮して算出される、前記ステップと、(c)前記コンピュータが、算出された前記優先度の一番大きいサービスからのタスクを前記ユーザに提示すべきタスクとして決定するステップとを含む。
好ましくは、ステップ(b)において、前記推定値の不確かさは、前記他のユーザにより前記同一のサービスからのタスクが実行されていない前記確率で重み付けされる。
また好ましくは、ステップ(b)において、前記優先度は、重み付けされた前記推定値の不確かさと前記興味度の推定値の和として算出される。
また好ましくは、ステップ(a)において、サービスごとの前記ユーザの興味度の推定値は、前記ユーザが前記サービスからのタスクを実行する確率の推定値の平均として算出され、及び、前記推定値の不確かさは、前記推定値の標準偏差として算出される。
また好ましくは、ステップ(b)において、前記他のユーザにより前記同一のサービスからのタスクが実行されていない前記確率は、前記他のユーザの前記同一のサービスからのタスクに対する興味度と、前記他のユーザの前記同一のサービスからのタスクに対するスキルとの積を値1から差し引き、これを全ての前記他のユーザについて掛け合わせることにより算出される。より好ましくは、ステップ(b)において、前記他のユーザにより前記同一のサービスからのタスクが実行されていない前記確率は、前記他のユーザが前記同一のサービスからのタスクを実行する確率と、前記優先度の算出の際に前記他のユーザが前記同一のサービスからのタスクを完了している確率との積を値1から差し引き、これを全ての前記他のユーザについて掛け合わせることにより算出される。
また好ましくは、ステップ(a)において、前記ユーザの実行履歴のないサービスについては、協調フィルタリングを利用して前記ユーザの興味度の推定値が算出される。
また好ましくは、ステップ(a)は、前記ユーザに対するタスクの提示に応答して繰り返し実行され、上記方法は、前記コンピュータが、算出された前記ユーザの興味度の推定値と該推定値の不確かさとを次の優先度算出の際に利用可能なように保存するステップを更に含む。
より好ましくは、ステップ(b)は、前記ユーザによる前記コンピュータへのログインに応答して実行され、上記方法は、前記コンピュータが、前記ユーザがログアウトするまで、定期的にステップ(b)及びステップ(c)を繰り返すステップを更に含む。更に好ましくは、前記コンピュータは、Webサーバであり、ステップ(c)について、タスクの提示は、前記ユーザのコンピュータに導入されたWebブラウザ、またはクライアントアプリケーションにカード形式で表示される。
また好ましくは、前記コンピュータは、Webサーバに接続し、ステップ(b)は、前記ユーザによる前記Webサーバへのログインに応答して実行され、及び、ステップ(c)について、タスクの提示は、前記Webサーバを介して前記ユーザのコンピュータに導入されたWebブラウザ、またはクライアントアプリケーションにカード形式で表示される。更に好ましくは、上記方法は、前記コンピュータが、前記ユーザが前記Webサーバをログアウトするまで、定期的にステップ(b)及びステップ(c)を繰り返すステップを更に含む。
また好ましくは、上記方法は、ステップ(c)について、前記コンピュータが、前記優先度が所定の閾値を超えることを条件として、決定された前記タスクを前記ユーザにアラート通知するステップを更に含む。
以上、複数種類のサービスからのタスクを配分するためのタスク配分方法として本発明を説明した。しかし本発明は、そのようなタスク配分方法の各ステップをコンピュータに実行させるタスク配分プログラム、及びタスク配分プログラムをサーバ用コンピュータにインストールして実現されるタスク配分サーバとして把握することもできる。
本発明によれば、複数種類のサービスからのタスクを配分するタスク配分サービスが提供される。該タスク配分サービスでは、サービスごとそのタスクの優先度がユーザのサービスに対する興味度の推定値と該推定値の不確かさに基づいて求められ、優先度の高いタスクがユーザに提示すべきタスクとして決定される。優先度の算出にあたっては同一のサービスからのタスクを配布されている他のユーザにより該タスクが実行されていない確率が考慮される。このため、特定種類のサービスからのタスクの作業が遅れる可能性があるときは、その特定種類のサービスに潜在的な興味をもつユーザに対して積極的にタスクを配布することが可能となる。結果、本発明によれば、特定種類のサービスからのタスクの作業の遅れをなくして全体的な作業の効率化を図ることが可能となる。本発明のその他の効果については、各実施の形態の記載から理解される。
図1の(a)は、従来のクラウドソーシング・システムの構成の一例を示す図である。図1の(b)は、提案するクラウドソーシング・システムの構成の一例を示す図である。 図2の(a)は、本発明の実施形態によるタスク配分サーバを含むシステム全体の構成の一例を示す図である。図2の(b)は、本発明の実施形態によるタスク配分サーバを含むシステム全体の構成の他の例を示す図である。 本発明の実施形態によるタスク配分サーバ200を実現するのに好適な情報処理装置のハードウェア構成の一例を示す。 本発明の実施形態によるタスク配分サーバ200の機能ブロック図である。 実行履歴情報の表の一例を示す図である。 Webブラウザにカードを示す例を示す図である。 各ユーザiにタスクを配分するためのタスク配分処理の全体の流れを示すフローチャートである。 図7に示すフローチャートのステップ702の優先度算出処理の流れを示すフローチャートである。 タスク配分サーバがバックグラウンドで定期的に行う処理の流れを示すフローチャートである。 図10(a)〜(c)は、シミュレーションによる第1の実験結果を示す図である。 図11(a)〜(c)は、シミュレーションによる第2の実験結果を示す図である。 図12(a)、(b)は、シミュレーションによる第3の実験結果を示す図である。
以下、本発明を実施するための形態を図面に基づいて詳細に説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、実施の形態の説明の全体を通じて同じ要素には同じ番号を付している。
本発明の実施形態に係るタスク配分サーバは、ユーザが空いた時間にタスクを実行できるように、ユーザからのリクエストの有無に関わらずタスクをユーザに提示し続ける。これを実現するために、本発明の実施形態に係るタスク配分サーバは、図2(a)に示すように、ポータルサイトやソーシャル・ネットワーキング・サービスなどクライアント・コンピュータのユーザが常時ログインしているようなサービスを提供するWebサーバ202aの一機能として実装してよい。また、メールクライアント等のように、ユーザが頻繁に利用するクライアントアプリケーションの一部として実装してよい。Webサーバ202aであるタスク配分サーバは、ユーザがログインしている間、ユーザに対して選択したタスクをWebブラウザの画面の一部、またはクライアントアプリケーションの一部に表示し続ける。
また本発明の実施形態に係るタスク配分サーバは、登録されている様々な種類のサービスの中から、全体的な作業の効率化を考慮しつつユーザに適したサービスのタスクを選択して提示する。このためWebサーバ202aであるタスク配分サーバは、図2(a)に示すように、インターネット204を介して接続される、複数のサーバ212a、212b、212cが提供する様々なクラウドソーシングからのタスクを1つのサービスとして集約してよく、或いは、タスクの登録を特定種類のサービスに限定することなく個人/法人から直に受け付けてもよい。
前者の場合、タスク配分サーバは、クラウドソーシングのサービスを提供する個々のサーバ212a、212b、212cから登録されているサービスのタスク情報を定期的に受信する。後者の場合、タスク配分サーバは、従来のクラウドソーシングにおけるサーバのように、サービスの登録を希望する個人/法人に対し所定の登録フォームを提示して登録すべきサービスのタスク情報を入力させる。いずれの場合もタスク配分サーバは、取得したタスク情報を保持してタスク配分サービスを提供する。以下では、前者の構成を採用するものとしてタスク配分サーバを説明する。
図2(a)において、Webサーバ202aには、インターネット204を介して、複数のクライアント・コンピュータ206a、206b・・・206zが接続されている。図2(a)のシステムにおいては、クライアント・コンピュータのユーザは、Webブラウザを通じて、インターネット204の回線を介して、Webサーバ202aにログインする。具体的には、所定のURLをWebブラウザに打ち込んで、所定のページを表示する。ここでは、Webサーバ202aが実現するタスク配分サービス以外のサービスとして、ソーシャル・ネットワーク・システム(SNS)を想定する。
ログインに当たっては、クライアント・コンピュータのユーザは、与えられたユーザIDと、それに関連付けられたパスワードを用いる。クライアント・コンピュータのユーザは、一旦ログインすると、SNS内で、ブログを書いたり、アクセスを許可されている他人のブログを閲覧してコメントを書いたり、ニュースを見たり、気の合った仲間同士でグループを作成したり、チャットしたり、趣味のコミュニティを検索したり、提示されているタスクを実行したり、などの活動を行う。
Webサーバ202aにはまた、パケット通信網108を介して、スマート・フォン210a、・・・210kなどのモバイル端末が接続される。ユーザは、与えられたユーザIDと、それに関連付けられたパスワードがあれば、スマート・フォンに導入されているWebブラウザを通じて、同様にWebサーバ202aのSNSにアクセスできる。
なお、本発明の実施形態に係るタスク配分サーバの実装方法は、図2(a)を参照して説明した方法に限定されない、例えば図2(b)に示すシステムのように、Webサーバ202bとは別個のサーバとしてタスク配分サーバを実装してもよい。この場合タスク配分サーバは、Webサーバ202bからユーザのログイン、ログアウト情報を受信しつつ、ユーザごと選択したタスク情報を、Webサーバ202bを介してクライアント・コンピュータ206a、206b・・・206zや、スマート・フォン210a、・・・210kなどのモバイル端末のユーザに提示する。なお、図2(b)に示すシステムでは、タスク配分サーバ203は、インターネット214を介して接続される複数のサーバ212a、212b、212cが提供する様々なクラウドソーシングからのタスクを1つのサービスとして集約している。以下では、本発明の実施形態に係るタスク配分サーバをWebサーバの一機能として実装する場合について説明する。
図3は、本発明を実施するためのWebサーバ202aとしてのコンピュータ300の例示的なハードウェア構成を示す。コンピュータ300は、CPU302とメイン・メモリ304とを備えており、これらはバス306に接続されている。バス306にはまた通信コントローラ324を介して通信インタフェース326が接続されている。通信インタフェース326は、コンピュータ300を通信回線328(クライアント・コンピュータと通信するためのインターネット、及び、スマート・フォンと通信するためのパケット通信網を含む)に物理的に接続する役割を担い、コンピュータ300のオペレーティング・システムの通信機能のTCP/IP通信プロトコルに対して、ネットワーク・インタフェース層を提供する。なお、通信回線は、有線LAN環境に基づくもの、又は、無線LAN環境、例えば、IEEE802.11a/b/g/nなどのWi−Fi規格に基づくものであってもよい。
バス306にはまた、ディスプレイ・コントローラ308を介して、ディスプレイ310、例えば液晶ディスプレイ(LCD)や、キーボード・マウスコントローラ318又はUSBバス(図示せず)を介して、キーボード320及びマウス322が接続されうる。これらによって、Webサーバ及びタスク配分サーバとしてのコンピュータ300全体の管理やメンテナンス作業を行うようにしてもよい。
バス306にはまた、SATA又はIDEコントローラ312を介して、ディスク314、例えばシリコン・ディスク又はハードディスクが接続されうる。バス306にはまた、SATA又はIDEコントローラ312を介して、任意的に、ドライブ316、例えばCD、DVD又はBDドライブが接続されうる。
ディスク314には、オペレーティング・システム、クライアント・コンピュータ206a、206b・・・206zのログイン管理のための、ユーザIDとパスワードの対応テーブルが保存されている。ディスク314にはさらに、コンピュータ300をWebサーバaとして機能させるためのApacheなどのソフトウェアが、コンピュータ300の立ち上げ時にメイン・メモリ304にロード可能なように保存されている。これによってユーザのコンピュータがTCP/IPのプロトコルで、コンピュータ300にアクセスすることが可能となる。ディスク314にはまた、パケット通信網を介してスマート・フォンと通信するための通信モジュールも格納されている。
ディスク314にはまた、このSNSの各ユーザのメッセージ、ブログ、掲示板などの情報と、SNSの情報が、好適には、HTMLファイルなどのテキスト形式、あるいはグラフィック・イメージ、動画ファイル、音楽ファイルなどのマルチメディア形式で、保存されている。ブログ、及び掲示板には、当該ユーザが書き込むことができ、他のユーザは、許された権限に応じて、ブログ、掲示板を読んだり、コメントを付けたりすることができる。
ディスク314には更に、図4の機能ブロック図に関連して後述するタスク情報、履歴情報、タスク登録・管理モジュール、履歴情報管理モジュール、ログイン検出モジュール、優先度算出モジュール、興味度算出モジュール、不実行確率算出モジュール、タスク決定モジュールがメイン・メモリ304にロード可能なように保存されている。これらモジュールは、CPU302に働きかけて、コンピュータ300を、タスク登録・管理部404、タスク情報格納部406、履歴情報管理部408、履歴情報格納部410、ログイン検出部409、優先度算出部412、興味度算出部414、不実行確率算出部416、タスク決定部418としてそれぞれ機能させる。コンピュータ・プログラムは圧縮し、また複数に分割して複数の媒体に記録することもできる。
なお、様々なクラウドソーシングからのタスクを1つのサービスとして集約する代わりに、タスクの登録を特定種類のサービスに限定することなく個人/法人から直に受け付ける場合、ディスク314には更にまた、クラウドソーシングのサービスとして従来知られている機能、即ち、タスク依頼者によるタスクの登録を受け付ける登録受け付け処理、タスク依頼者とタスク実行者との間の契約締結処理、実行結果のレビュー及び承認処理、報酬の支払い処理などの処理をコンピュータ300に実行させるためのモジュールも格納される。
Webサーバ用のコンピュータ300として、インターナョナル・ビジネス・マシーンズ・コーポレーションから購入可能な、IBM(インターナョナル・ビジネス・マシーンズ・コーポレーションの商標)System X、System i、System pなどの機種のサーバを使うことができる。その際、使用可能なオペレーティング・システムは、AIX(インターナョナル・ビジネス・マシーンズ・コーポレーション社の商標)、UNIX(The Open Groupの商標)、Linux(Linus Torvaldsの商標)、Windows(商標)2003 Serverなどがある。特にこの実施例では、オペレーティング・システムとしてLinux(Linus Torvaldsの商標)を採用し、その上にJava(R)EEを導入し、サーバサイドJava(R)が導入され、本発明の処理プログラムである上記複数のモジュールは好適には、その上で動くJava(R)のプログラム、あるいはServletの形式で実装される。
以上から、本発明の実施態様において使用されるコンピュータ300は、ワークステーションやメインフレームなどの情報処理装置、又は、これらの組み合わせによって実現されることが容易に理解されるであろう。なお、上記説明した構成要素は例示であり、そのすべての構成要素が本発明の必須構成要素となるわけではない。特に、本発明の実施形態に係るタスク配分サーバをWebサーバとは別個のサーバとして実装する場合、上述したSNSを提供するWebサーバとして機能するための構成要素は不要となることに留意されたい。
次に、図4の機能ブロック図を参照して、本発明を実施するための処理要素について説明する。上述したとおり、本発明の実施形態に係るタスク配分サーバ400はWebサーバ202aの一機能として実装されるものとする。また、タスク配分サーバ400は、複数のサーバが提供する様々なクラウドソーシングのサービスからのタスクを1つのサービスとして集約するものとする。
通信部402は、クラウドソーシングの複数種類のサービスを提供する複数のサーバと、いずれかのサービスからのタスクを実行する複数のタスク実行者のそれぞれとの間でデータの送受信を行う。
タスク登録・管理部404は、通信部402において定期的に受信される、クラウドソーシングのサービスを提供する個々のサーバに登録されているサービスからのタスクに関するタスク情報を、後述するタスク情報格納部406に格納する。タスク登録・管理部404はまた、タスク情報格納部406にそのタスク情報が格納されるサービスごと、該サービスからのタスクを提示されたタスク実行者の実行者リストを作成し、これを対応するサービスからのタスク情報に関連付けて保存し、管理する。具体的には、タスク登録・管理部404は、通信部402からあるサービスからのタスクがタスク実行者へ送信され提示されると、そのタスク実行者をタスクの送信時刻と共に該当するサービスの実行者リストに追加する。このときタスク登録・管理部404は、後述する履歴情報管理部408へ、タスク実行者のタスク実行に関する履歴情報として、タスク実行者の識別情報、タスクの識別情報、タスクの属するサービスの識別情報、及びタスク情報の送信時刻を渡す。また、タスク登録・管理部404は、通信部402においてタスク実行者からタスクの実行結果が受信されると、そのタスク実行者を該当するサービスの実行者リストから削除する。このときタスク登録・管理部404は、後述する履歴情報管理部408へ、タスク実行者のタスク実行に関する履歴情報として、タスク実行者の識別情報、タスクの識別情報、タスクの属するサービスの識別情報、及びタスクの実行結果の受信時刻を渡す。
タスク情報格納部406は、クラウドソーシングを提供する複数のサーバにそれぞれ登録されているタスク情報を格納する。タスク情報は、そのタスクが属するサービス単位でまとめられ、サービスの識別情報、該サービスに属する全てのタスクの識別情報、タスク実行者に提示するタスクの概要、実行条件(例えば、期限、報酬、必要な資格、募集人数など)、タスク依頼者情報を含む。また上述したように、タスク情報格納部406は、同一のサービスに属するタスクを提示されたタスク実行者のタスク実行者リストを、対応するタスク情報に関連付けて格納する。
履歴情報管理部408は、Webサーバ202にユーザとして登録されているユーザごと、そのタスク実行の履歴を作成し、これを後述する履歴情報格納部410に格納して管理する。具体的には、履歴情報管理部408は、タスク登録・管理部404からタスク実行者のタスク実行に関する履歴情報を受け取るとこれを該当するタスク実行者の履歴情報に追加する。
履歴情報格納部410は、Webサーバ202にユーザとして登録されているユーザごと、該ユーザが実行したタスクの実行履歴に関する履歴情報を格納する。ユーザごとのタスク実行に関する履歴情報は、タスクが属するサービスの識別情報、タスクの識別情報、タスクの実行開始時刻(一例として、タスク情報の送信時刻)、及びタスクの完了時刻(一例として、タスクの実行結果の受信時刻)を含む。一例として履歴情報は、図5に示す表のように表形式で維持されてよい。図5に示す表は、ユーザIDフィールド、サービスIDフィールド、タスクIDフィールド、開始時刻フィールド、及び完了時刻フィールドを含む。なお、タスクを提示された段階では完了時刻フィールドに値は設定されず、ユーザからタスクの実行結果が送信されることによって、完了時刻フィールドに値が設定されることに留意されたい。
ログイン検出部409は、Webサーバ202へのユーザのログインを検出する。タスク配分サーバ400がWebサーバの一機能として実装されているか否かに関わらず、該検出は、Webサーバ202からタスク配分サーバ400へのユーザ情報を含むログイン成功の通知によってなされる。
優先度算出部412は、ログイン検出部409によりそのログインが検出されたユーザに対し、タスク情報格納部406に格納される複数種類のサービスの各々について、該サービスからのタスクの優先度を算出する。なお、優先度算出部412は、後述する興味度算出部414と不実行確率算出部416によりそれぞれ算出される値を用いて優先度を算出する。このため優先度算出部412は、それらの値が利用可能な状態である場合はその値を読み出し、利用可能でない場合は値の算出を依頼する。優先度算出処理の詳細は後述する。
興味度算出部414は、タスク情報格納部406に格納される複数種類のサービスの各々について、ユーザのタスク実行に関する履歴情報に基づき、上記サービスからのタスクに対するユーザの興味度の推定値と該推定値の不確かさとを算出する。好ましくは、興味度算出部414は、サービスごとのユーザの興味度の推定値を、ユーザが該サービスからのタスクを実行する確率の推定値の平均として算出し、また、サービスごとの推定値の不確かさを、推定値の標準偏差として算出する。これについて以下詳細に説明する。
上述したように、ユーザiのサービスjへの興味は、各サービスのタスクをユーザが実行する確率で表されるものと仮定し、以下の二項分布の確率Pの平均PP(i,j)で表されるとする。
― ユーザiが、サービスjのタスクをn回提示されて、k回実行する確率P
このとき確率Pをベイズ推定したときのPの平均値PP(i,j)とPの分散Pσ(i,j)は、Pの事前分布を一様分布と仮定すると、それぞれ以下の式(1)及び式(2)のように求められる。
Figure 0005916596
ここで、式に現れるnとkのそれぞれの値は、ユーザの履歴情報から求める。即ち、上述したように、実行履歴情報格納部410に格納されるユーザごとのタスク実行に関する履歴情報は、タスクが属するサービスの識別情報と、タスクの識別情報と、タスクの実行開始時刻と、タスクの完了時刻とを含む。そこで、サービスの識別情報が同一であるエントリの数がnの値となり、そのうちタスクの完了時刻が設定されているエントリ数がkの値となる。
なお、PP(i,j)に欠損値があった場合、即ち、ユーザのタスク実行に関する履歴情報のないサービスがあった場合、協調フィルタリングを利用してユーザの興味度の推定値を算出してよい。以下では、Matrix Factorizationにより他のユーザの興味度の値から推測値を計算する方法について説明する。
まず次のように定義する。即ち、以下に示す式(3)は、ユーザiが各タスクを実行した確率を示す。なお、タスク配分サーバ400に登録されているサービスjはm種類あるとする。式(4)は、全てのユーザのタスクの実行確率を示す。なお、Webサーバ202aに登録されているユーザ数はn(nは2以上の整数)とする。式(5)は各ユーザiの各タスクの実行確率のMatrix Factorizationによる推測を示す。
Figure 0005916596

なお式(5)の左辺のマトリックスPpが最終的に求めるべきものであり、その成分がPP(i,j)となる。
次に以下のステップにより、マトリックスPpを求める。
ステップ1:マトリックスU,Tをランダムな値により作成する。
ステップ2:マトリックスU,Tを以下の式(6)〜(8)に従い、収束するまで更新処理を繰り返す。ここでKは、Matrix Factorizationの潜在因子数であり、予め指定される。一例としてKは、タスク配分サーバ400に登録されているタスクの種類に基づきヒューリスティックに決定される。例えば、文字校正と画像の説明文を付加する2種類のタスクが登録されているとすると、文字入力のスキルと日本語のスキルが必要と考えられるため、潜在因子数として2が指定される。また、α、βも定数として予め指定する。これらには数値計算が安定する数字が経験値として指定される。後述する実験ではα=0.0001、β=0.01とした。
Figure 0005916596

ステップ3:ステップ2で得られたマトリックスU,Tを用いて、上式(5)に従ってマトリックスPpを算出する。更なる詳細は、非特許文献4を参照されたい。
このように、PP(i,j)に欠損値がある場合は、協調フィルタリングを利用してユーザの興味度の推定値を算出できる。一方、Pσ(i,j)に欠損値がある場合は、上式(2)の分散の式においてn=0, k=0を代入した値を用いてよい。以上のように、ユーザの興味度の推定値と該推定値の不確かさは、ユーザのタスク実行の履歴情報に基づいて求められるため、好ましくは、興味度算出部414はその算出処理を、ユーザに対するタスクの提示に応答して、もしくはその提示により履歴情報が更新されることに応答して実行する。そして興味度算出部414は、算出した値を後に優先度算出部412が利用可能なように保存しておく。
不実行確率算出部416は、優先度算出部412による処理の依頼に応答して、複数種類のサービスの各々について、該サービスからのタスクを配分されている他のユーザにより該タスクが実行されていない確率である不実行確率を算出する。ここでサービスjからのタスクを配分されている他のユーザとは、優先度算出部412が現在対象とするユーザiを除く、サービスjからのタスクを配分されている全てのユーザを意味する。以下では、優先度算出部412がユーザiについて時刻Tに優先度算出処理を開始した際に、サービスjのタスクが実行されていない不実行確率をPw(j,T)と表記する。また、サービスjからのタスクを配分されている全てのユーザの集合をU(j)と表記する。なお、集合U(j)は、サービスjのタスク情報に関連付けてタスク情報格納部406に格納されている実行者リストより求められる。
一般に、興味がありかつスキルが高いユーザに既にタスクを配分しているサービスは、すぐに実行される確率が高い。これは、あるサービスからのタスクが実行される確率は、該タスクに対するユーザの興味度とユーザのスキルの高さの積によって表すことができることを意味する。上述したように、本実施例では、ユーザkのサービスjへの興味は、各サービスのタスクをユーザが実行する確率で表した。ここでは更に、ユーザkのサービスjに対するスキルを、ユーザkがタスクjを実行するのに要する時間で表す。そしてこの時間をポワソン仮定で表されるものと仮定し、ユーザkがタスクjを時間Δtの間に終わらせる確率をPS(k,j,Δt)と表記する。
時刻tまでに、ある事象がr回起こるポアソン過程は以下の式(9)のように表される。
Figure 0005916596

すると、ユーザkのサービスjに対するスキル、即ち、ユーザkがタスクjを時間Δtの間に終わらせる確率PS(k,j, Δt)は、r=1のポアソン仮定に該当するので、以下の式(10)のように表される。
Figure 0005916596

なお、λkjは、履歴情報格納部410に格納されるユーザkの履歴情報から単位時間当たりのタスク実行回数を計算することにより求める。 即ち、λkjは、これまでユーザkがサービスjのタスクを実行するのにかかった総作業時間で、ユーザkが実行したサービスjのタスク数を割ることにより求められる。ここで、上記総作業時間は、タスクの完了時刻からタスクの実行開始時刻を差し引いた値を、サービスの識別情報が同一である全てのエントリについて足し合わせることにより算出される。なお、当該計算は、各ユーザが、いずれかのサービスのタスクを1つ実行する毎に行う。λkjに欠損値があった場合、即ち、ユーザkの履歴情報がないサービスがあった場合、ここでも協調フィルタリングを利用してλkjの推定値を算出してよい。なお協調フィルタリングを利用したλkjの推定値は、PP(i,j)に関して説明したのと同様の方法により算出可能であるため、ここでは繰り返しを避けるため説明を省略する。
そして不実行確率算出部416は、時刻Tにおいてサービスjからのタスクを配分されている他のユーザk(k∈U(j))により該タスクが実行されていない確率である不実行確率Pw(j,T)を、ユーザkのサービスjに対する興味度とスキルとの積を値1から差し引き、これを集合U(j)の全ユーザについて掛け合わせることにより算出する。言い換えると、不実行確率算出部416は、不実行確率Pw(j,T)を、ユーザkがあるサービスjからのタスクを実行する確率と、優先度の算出の際(即ち、時刻T)にあるユーザkがあるサービスjからのタスクを完了している確率との積を値1から差し引き、これを集合U(j)の全ユーザについて掛け合わせることにより算出する。これを式に表すと以下式(11)のようになる。
Figure 0005916596

上式(11)において、T(k)は、ユーザkがサービスjからのタスクを送信された時刻を示す。また、PP(k,j)は、式(1)により、Ps(k,j,T-T(k))は、式(10)によりそれぞれ求められる。
上述したように興味度算出部414と不実行確率算出部416とによりそれぞれ値が算出されると、優先度算出部412は、ログイン検出部409によりそのログインが検出されたユーザiに対し、タスク情報格納部406に格納される複数種類のサービスの各々について、該サービスjからのタスクの優先度m(i,j)を、興味度算出部414により算出された興味度の推定値PP(i,j)と該推定値の不確かさPσ(i,j)に基づき算出する。その際優先度算出部412は、同一のサービスjからのタスクを配分されている他のユーザにより同一のサービスからのタスクが実行されていない確率である不実行確率Pw(j,T)を考慮する。
即ち、優先度算出部412は、推定値の不確かさPσ(i,j)を、上記他のユーザにより同一のサービスjからのタスクが実行されていない不実行確率Pw(j,T)で重み付けする。そして優先度算出部412は、サービスからのタスクの優先度m(i,j)を、重み付けした推定値の不確かさと興味度の推定値の和として算出する。これを式で表すと以下の式(12)ようになる。
Figure 0005916596
タスク決定部418は、優先度算出部412により算出された全サービスについてそのタスクの優先度m(i,j)を比較し、優先度の一番大きいサービスからのタスクをユーザiに提示すべきタスクとして決定する。そしてタスク決定部418は、決定したタスクを、通信部402を介してユーザiに送信し、提示する。ここで、タスクの提示は一例としてユーザiのコンピュータに導入されたWebブラウザの画面にカード形式で表示してよい。図6は、そのようなWebブラウザ602の画面に、またはクライアントアプリケーションの画面にカード形式で表示されたタスク情報604を示す。
優先度算出部412とタスク決定部418による上記処理は、ユーザiによるWebサーバ202aへのログインに応答して実行され、ユーザiがログアウトするまで、定期的に繰り返し実行される。
次に、図7〜図9を参照して、本発明に係るタスク配分処理の流れを説明する。図7は、各ユーザiにタスクを配分するためのタスク配分処理の全体の流れを示すフローチャートである。図8は、図7に示すフローチャートのステップ702の優先度算出処理の流れを示すフローチャートである。図9は、タスク配分サーバがバックグラウンドで定期的に行う処理の流れを示すフローチャートである。
図7に示す各ユーザiにタスクを配分するためのタスク配分処理は、ステップ700でユーザiのログインを検出することにより開始され、タスク配分サーバ400は、続いてユーザiについて、タスク情報格納部406に格納されている各サービスのタスクの優先度を算出する。優先度算出処理の詳細は図8を参照して後述する。
続いて、タスク配分サーバ400は、算出した優先度のうち最大の優先度のサービスjからのタスクをユーザiに対して提示すべきタスクとして決定し、これをユーザiに提示する(ステップ704)。この際タスク配分サーバ400は、実行履歴情報格納部410に格納されるユーザiの実行履歴を更新し、ユーザiの実行履歴にサービスjのタスクを提示した事実を追加する。続いてタスク配分サーバ400は、一定期間が経過するのを待ち、ユーザiからサービスjのタスクの実行結果を受信したか否かを判定する(ステップ706)。受信していない場合(ステップ706:NO)、タスク配分サーバ400は、ユーザiの興味度の推定値と該推定値の不確かさを更新する。(ステップ708)
一方、ユーザiからサービスjのタスクの実行結果を受信した場合(ステップ706:YES)、タスク配分サーバ400は、ユーザiの興味度の推定値と該推定値の不確かさに加えて、ユーザiのスキルを更新する(ステップ710)。なお、タスク配分サーバ400は、ユーザiからサービスjのタスクの実行結果を受信すると、実行履歴情報格納部410に格納されるユーザiの実行履歴を更新し、ユーザiの実行履歴にサービスjのタスクを完了した事実を追加するものとする。
続いてタスク配分サーバ400は、ユーザiがログイン状態を継続しているか否かを判定する(ステップ712)。ユーザiのログイン状態が継続している場合(ステップ712:YES)、処理はステップ702へ戻り、タスク配分サーバ400は、優先度算出処理を繰り返す。ユーザiのログイン状態が継続していない場合(ステップ712:NO)、処理は終了する。
図8に示す優先度算出処理は、ステップ800から開始し、タスク配分サーバ400は、タスク情報格納部406に格納されている各サービスからのタスクについて、ユーザiの興味度の推定値と該推定値の不確かさが既に算出されている場合にはこれを読み出す。続いてタスク配分サーバ400は、読み出しに成功したか否かを判定し(ステップ802)、読み出しに成功しなかった場合(ステップ802:NO)、改めて各サービスからのタスクについて、ユーザiの興味度の推定値と該推定値の不確かさを算出する(ステップ804)。
ステップ802において読み出しに成功した場合、又はステップ804から処理はステップ806へ進み、タスク配分サーバ400は、各サービスjについて、該サービスjを既に配布されている他のユーザkが該サービスjからのタスクを実行していない確率である不実行確率を算出する。続いてタスク配分サーバ400は、各サービスjについて、その不実行確率を考慮して、ユーザiの興味度の推定値と該推定値の不確かさに基づきサービスjからのタスクの優先度を算出する(ステップ808)。そして処理は終了する。
図9に示すタスク配分サーバ400のバックグランド処理は、タスク配分サービスが開始するのと同時に開始し、タスク配分サーバ400は一定時間待機する(ステップ900)。続いてタスク配分サーバ400は、各ユーザiの各サービスjに対する興味及びスキルについて一定以上の更新があったか否かを判定する(ステップ902)。
一定以上の更新がなかった場合(ステップ902:NO)、処理はステップ900へ戻り、タスク配分サーバ400は再び一定時間待機する。一方、一定以上の更新があった場合(ステップ902:YES)、タスク配分サーバ400は、各ユーザiの各サービスjに対する興味及びスキルの欠損値をMatrix Factorizationにより予測する(ステップ904)。そして処理は終了する。
次に図10〜12を参照して、本発明が提案するタスク配分方法を利用したシミュレーションによる実験結果を基に、本発明の有効性を証明する。なお、シミュレーションの設定は次の通りである。
・シミュレータ内の単位時間は、実世界の秒に相当するものとする。
・ユーザは一定の確率でタスク配分サービスへのログイン・ログアウトを繰り返す。
・各ユーザは、平均的には30分から3時間の間のランダムな時間でログイン・ログアウトを繰り返す。
・ 各サービスは一定の難易度を持っているとする。
・ユーザの間のスキルの違いを表すために、各ユーザが、各サービスのタスクを1回実行するのにかかる平均の時間は、正規分布で表した。
但し、上記の正規分布の標準偏差は (10分―10秒)/4 とした。
また、上記の正規分布の平均はサービス間で異なり、5つのランダムな潜在因子の値のいずれかを平均とする正規分布からランダムに作られた値とする。この値はサービス間の難易度を表し、10秒から10分の間とする。
・ユーザの各サービスに関する興味の値に応じて、興味が無いタスクは高い確率で、タスクを実行せずにスキップする。
なお、スキップするのにかかる時間は、ユーザ毎にランダムに異なり、平均的には5秒から 5分の間の時間のランダムな値とした。
・各ユーザの各サービスに対する興味の真の値は未知として、初期値は0.5とした。
・各ユーザの各サービスに対するスキルの真の値は未知として、初期値は最大値、最小値の間の値を正規分布からランダムに生成した。この正規分布の平均は、10個のランダムな潜在因子の値のいずれかを平均とする正規分布からランダムに作られる。
実験はシミュレーションにおけるユーザ数、サービス数を様々な値に変更し、比較した。各サービスのタスク数は1000とした。図10は、異なるユーザ数におけるシミュレーションによる実験結果を示す。図11は、異なるサービス数におけるシミュレーションによる実験結果を示す。図12は、サービス数/ユーザ数を固定してタスク完了時間を比較した実験結果を示す。いずれにおいても以下の4種の手法について比較を行った。またいずれの図のグラフも横軸は、シミュレータ内における時間(秒)を表し、縦軸は各サービスのタスク完了率の平均を示す。
A.ランダムにタスクを配分(“ランダム”)。なお、グラフにおいて計算値をひし形でを表示。
B.各ユーザの各サービスに対する実行履歴から 上式(1)で興味を推定、各ユーザに興味が最大となるタスクを配分(“興味のみCFない”)。なお、グラフにおいて計算値を四角で表示。
C.B. と同様に各ユーザに興味が最大となるタスクを配分するが、定期的にMatrix Factorization による協調フィルタリングを用いて他のユーザの興味から、各ユーザのまだ実行していないサービスについての興味を推定する(“興味のみCFあり”)。なお、グラフにおいて計算値を三角で表示。
D.本発明によるタスク配分(“提案手法”)。なお、グラフにおいて計算値をバツ印で表示。
図10(a)〜(c)は、異なるユーザ数におけるシミュレーションによる実験結果を示す。なお、サービス数は20に固定した。図10(a)〜(c)から、ユーザ数が十分に増えると、A.のランダムなタスク配分による手法と、B.の興味のみを利用した手法の差分が少なくなっていくのが分かる。例えば、70%のタスク終了時の時間で比較すると差分が小さくなっている(図中の矢印1000、1002,1004参照)。100%のタスク終了時の時間を比較すると更に差分が小さくなっている(図10(a)中の矢印1006が、図10(b)、(c)ではほぼ無くなっている)。これは、ランダムなタスク配分でも、ユーザ数が十分に増えると興味があるユーザを見つける可能性が高くなるためと考えられる。本発明によるタスク配分は、スキルや他のユーザの実行状況をも考慮するため、ユーザ数が十分に多くても大きな効果がある。
図11(a)〜(c)は、異なるサービス数におけるシミュレーションによる実験結果を示す。なお、ユーザ数は400に固定した。図11(a)のグラフに示すように、サービス数が小さくユーザ数が大きい状況では、ランダムなタスク配分が興味のみ考慮した手法より完了時間が早い(図中の楕円1100を参照)。また、サービス数が小さくユーザ数が大きい状況では、タスク完了時間についての本発明のタスク配分による効果は小さいが、大部分のタスクが終わるまでにかかる時間については、本発明のタスク配分による効果は大きい(図中矢印1104の長さは短いが、矢印1102の長さは長い)。
図12(a)は、サービス数を10に固定して全てのサービスのタスクが完了した時刻のみを比較した実験結果を示す。図12(b)は、ユーザ数を400人に固定して全てのサービスのタスクが完了した時刻のみを比較した実験結果を示す。ユーザ数が大きく、サービス数が大きい状況が、本発明による効果が最も大きい。シミュレーションを行った範囲では、最大で16%タスクの完了時間が短くなる(図12(b)中の楕円1200を参照)。様々なクラウドソーシングのタスクを、モバイル端末、ポータル、メールクライアント等を利用して、多数のワーカーに配分する際には上記状況が満たされるため、本発明のタスク配分方法を採用することが望ましいといえる。なお、CFとは協調フィルタリングを意味する。
以上、実施形態を用いて本発明の説明をしたが、本発明の技術範囲は上記実施形態に記載の範囲には限定されない。上記の実施形態に、種々の変更又は改良を加えることが可能であることが当業者に明らかである。例えば、サービスごとのユーザの興味度の推定値PP(i,j)に欠損値があった場合、上記説明ではMatrix Factorizationにより他のユーザの興味度の値から推測値を計算する方法を示した。しかし上式(5)においてPp は行列表現としたが、テンソルとして、ユーザの興味だけでなく、コンテキスト(連続して複数のタスクを実行しているか、作業している時間帯等)や、ユーザのプロファイルを利用することが可能である。(例えば非特許文献5を参照)。従って、そのような変更又は改良を加えた形態も当然に本発明の技術的範囲に含まれる。
なお、特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り任意の順序で実現しうることに留意すべきである。また、前の処理の出力を後の処理で用いる場合でも、前の処理と後の処理の間に他の処理が入ることは可能である場合があること、又は間に他の処理が入るように記載されていても前の処理を後の処理の直前に行うよう変更することも可能である場合があることも留意されたい。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「まず、」、「次に、」、「続いて、」等を用いて説明したとしても、この順で実施することが必須であることを必ずしも意味するとは限らない。

Claims (20)

  1. コンピュータの処理により複数種類のサービスからのタスクをユーザに配分するための方法であって、
    (a)前記コンピュータが、前記複数種類のサービスの各々について、前記ユーザの前記サービスからのタスクの実行履歴から前記ユーザの興味度の推定値と該推定値の不確かさを算出するステップと、
    (b)前記コンピュータが、前記複数種類のサービスの各々について、前記興味度の推定値と該推定値の不確かさに基づいて前記サービスからのタスクの優先度を算出するステップであって、前記タスクの優先度は同一の前記サービスからのタスクを配分されている他のユーザにより前記同一のサービスからのタスクが実行されていない確率を考慮して算出される、前記ステップと、
    (c)前記コンピュータが、算出された前記優先度の一番大きいサービスからのタスクを前記ユーザに提示すべきタスクとして決定するステップと、
    を含むタスク配分方法。
  2. ステップ(b)において、前記推定値の不確かさは、前記他のユーザにより前記同一のサービスからのタスクが実行されていない前記確率で重み付けされる、請求項1に記載のタスク配分方法。
  3. ステップ(b)において、前記優先度は、重み付けされた前記推定値の不確かさと前記興味度の推定値の和として算出される、請求項2に記載のタスク配分方法。
  4. ステップ(a)において、サービスごとの前記ユーザの興味度の推定値は、前記ユーザが前記サービスからのタスクを実行する確率の推定値の平均として算出され、及び、前記推定値の不確かさは、前記推定値の標準偏差として算出される、請求項3に記載のタスク配分方法。
  5. ステップ(b)において、前記他のユーザにより前記同一のサービスからのタスクが実行されていない前記確率は、前記他のユーザの前記同一のサービスからのタスクに対する興味度と、前記他のユーザの前記同一のサービスからのタスクに対するスキルの高さとの積を値1から差し引き、これを全ての前記他のユーザについて掛け合わせることにより算出される、請求項4に記載のタスク配分方法。
  6. ステップ(b)において、前記他のユーザにより前記同一のサービスからのタスクが実行されていない前記確率は、前記他のユーザが前記同一のサービスからのタスクを実行する確率と、前記優先度の算出の際に前記他のユーザが前記同一のサービスからのタスクを完了している確率との積を値1から差し引き、これを全ての前記他のユーザについて掛け合わせることにより算出される、請求項4に記載のタスク配分方法。
  7. ステップ(a)において、前記ユーザの実行履歴のないサービスについては、協調フィルタリングを利用して前記ユーザの興味度の推定値が算出される、請求項4に記載のタスク配分方法。
  8. ステップ(a)は、前記ユーザに対するタスクの提示に応答して繰り返し実行され、前記コンピュータが、算出された前記ユーザの興味度の推定値と該推定値の不確かさとを次の優先度算出の際に利用可能なように保存するステップを更に含む、請求項2に記載のタスク配分方法。
  9. ステップ(b)は、前記ユーザによる前記コンピュータへのログインに応答して実行され、前記ユーザがログアウトするまで、前記コンピュータが、定期的にステップ(b)及びステップ(c)を繰り返すステップを更に含む、請求項2に記載のタスク配分方法。
  10. 前記コンピュータは、Webサーバであり、ステップ(c)について、タスクの提示は、前記ユーザのコンピュータに導入されたWebブラウザ、またはクライアントアプリケーションにカード形式で表示される、請求項9に記載のタスク配分方法。
  11. 前記コンピュータは、Webサーバに接続しており、ステップ(b)は、前記ユーザによる前記Webサーバへのログインに応答して実行され、及び、ステップ(c)について、タスクの提示は、前記Webサーバを介して前記ユーザのコンピュータに導入されたWebブラウザ、またはクライアントアプリケーションにカード形式で表示される、請求項2に記載のタスク配分方法。
  12. 前記ユーザが前記Webサーバをログアウトするまで、前記コンピュータが、定期的にステップ(b)及びステップ(c)を繰り返すステップを更に含む、請求項11に記載のタスク配分方法。
  13. ステップ(c)について、前記コンピュータが、前記優先度が所定の閾値を超えることを条件として、決定された前記タスクを前記ユーザにアラート通知するステップを更に含む、請求項10又は11に記載のタスク配分方法。
  14. 請求項1乃至13のいずれか一項に記載のタスク配分方法の各ステップを、前記コンピュータに実行させるタスク配分プログラム。
  15. 複数種類のサービスからのタスクを配分するタスク配分サーバであって、
    ユーザのログインを検出する検出部と、
    ユーザごと各サービスからのタスクの実行履歴を格納する履歴格納部と、
    前記複数種類のサービスの各々について、そのログインを検出した前記ユーザの前記サービスからのタスクの実行履歴から前記ユーザの興味度の推定値と該推定値の不確かさを算出する興味度算出部と、
    前記複数種類のサービスの各々について、該サービスからのタスクを配分されている他のユーザにより前記タスクが実行されていない確率である不実行確率を算出する不実行確率算出部と、
    前記複数種類のサービスの各々について、該サービスからのタスクの不実行確率を考慮して、前記ユーザの前記興味度の推定値と該推定値の不確かさに基づいて前記サービスからのタスクの優先度を算出する優先度算出部と、
    前記算出された前記優先度の一番大きいサービスからのタスクを前記ユーザに配分すべきタスクとして決定するタスク決定部と、
    を含むタスク配分サーバ。
  16. 前記優先度算出部は、前記推定値の不確かさを前記不実行確率で重み付けして前記優先度を算出する、請求項15に記載のタスク配分サーバ。
  17. 前記優先度算出部は、重み付けされた前記推定値の不確かさと前記興味度の推定値の和として前記優先度を算出する、請求項16に記載のタスク配分サーバ。
  18. 前記興味度算出部は、サービスごとの前記ユーザの興味度の推定値を、前記ユーザが前記サービスからのタスクを実行する確率の推定値の平均として算出し、及び、前記推定値の不確かさを、前記推定値の標準偏差として算出する、請求項15に記載のタスク配分サーバ。
  19. 前記不実行確率算出部は、前記不実行確率を、前記他のユーザの前記サービスからのタスクに対する興味度と、前記他のユーザの前記サービスからのタスクに対するスキルとの積を値1から差し引き、これを全ての前記他のユーザについて掛け合わせることにより算出する、請求項15に記載のタスク配分サーバ。
  20. 前記不実行確率算出部は、前記不実行確率を、前記他のユーザが前記サービスからのタスクを実行する確率と、前記優先度の算出の際に前記他のユーザが前記サービスからのタスクを完了している確率との積を値1から差し引き、これを全ての前記他のユーザについて掛け合わせることにより算出する、請求項15に記載のタスク配分サーバ。
JP2012275467A 2012-12-18 2012-12-18 タスク配分サーバ、タスク配分方法、およびタスク配分プログラム Active JP5916596B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012275467A JP5916596B2 (ja) 2012-12-18 2012-12-18 タスク配分サーバ、タスク配分方法、およびタスク配分プログラム
CN201310628148.5A CN103870913B (zh) 2012-12-18 2013-11-29 任务分派服务器和任务分派方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012275467A JP5916596B2 (ja) 2012-12-18 2012-12-18 タスク配分サーバ、タスク配分方法、およびタスク配分プログラム

Publications (2)

Publication Number Publication Date
JP2014120031A JP2014120031A (ja) 2014-06-30
JP5916596B2 true JP5916596B2 (ja) 2016-05-11

Family

ID=50909426

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012275467A Active JP5916596B2 (ja) 2012-12-18 2012-12-18 タスク配分サーバ、タスク配分方法、およびタスク配分プログラム

Country Status (2)

Country Link
JP (1) JP5916596B2 (ja)
CN (1) CN103870913B (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105468608B (zh) * 2014-08-27 2020-10-30 廖飞 一种基于众包的数据采集及处理方法和系统
JP6472271B2 (ja) * 2015-03-04 2019-02-20 Kddi株式会社 タスク管理方法およびサーバ
CN104794644B (zh) * 2015-04-16 2018-07-17 西安交通大学 一种面向智能服务引擎的任务众包方法
JP2017037605A (ja) * 2015-08-14 2017-02-16 富士ゼロックス株式会社 情報処理装置及び情報処理プログラム
CN107248034A (zh) * 2017-06-01 2017-10-13 北京智网易联科技有限公司 业务线索分配方法、装置、计算设备以及存储介质
CN111133484A (zh) * 2017-09-28 2020-05-08 北京嘀嘀无限科技发展有限公司 用于评估与指定的驾驶服务相关的调度策略的系统和方法
CN108052376A (zh) * 2017-12-22 2018-05-18 山东师范大学 移动平台众包任务的多点打包方法及系统
CN109544015B (zh) * 2018-11-26 2023-07-25 平安科技(深圳)有限公司 一种基于数据处理的任务分配方法及相关设备
CN110825500B (zh) * 2019-10-28 2022-10-25 陕西师范大学 面向三层结构的群智感知任务分配方法
CN111027875B (zh) * 2019-12-17 2023-09-26 鲁东大学 一种基于自适应任务池的智能仓储多机器人任务分配方法
CN114020650B (zh) * 2022-01-10 2022-04-12 广东拓思软件科学园有限公司 众测任务分配方法、装置、电子设备及存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002540487A (ja) * 1998-11-18 2002-11-26 ホットディスパッチ インコーポレーティッド 非標準化サービスにおける電子商取引システム
US6948135B1 (en) * 2000-06-21 2005-09-20 Microsoft Corporation Method and systems of providing information to computer users
JP2002297931A (ja) * 2001-03-29 2002-10-11 En Japan Kk 求人求職援護システム及び方法
CN1629884A (zh) * 2003-12-15 2005-06-22 皇家飞利浦电子股份有限公司 一种信息推荐系统及方法
CN1848742A (zh) * 2005-01-10 2006-10-18 三星电子株式会社 确定用户上下文并建议任务的上下文任务推荐系统和方法
US7853467B2 (en) * 2005-10-26 2010-12-14 At&T Intellectual Property Ii, L.P. Worklist integration of logical and physical tasks
JP4861004B2 (ja) * 2005-12-27 2012-01-25 株式会社エヌ・ティ・ティ・ドコモ サービス推薦システム、及び、サービス推薦方法
JP4995127B2 (ja) * 2008-03-18 2012-08-08 株式会社リコー ワークフロー管理システム
US20100174577A1 (en) * 2009-01-07 2010-07-08 Red Hat, Inc. Automated Task Delegation Based on Skills
CN101719137A (zh) * 2009-11-26 2010-06-02 复旦大学 基于不确定性处理的网络论坛用户兴趣建模方法
JP2011232788A (ja) * 2010-04-23 2011-11-17 Nec Corp ワークフロー管理システム、ワークフロー管理方法およびワークフロー管理プログラム

Also Published As

Publication number Publication date
CN103870913A (zh) 2014-06-18
CN103870913B (zh) 2017-10-24
JP2014120031A (ja) 2014-06-30

Similar Documents

Publication Publication Date Title
JP5916596B2 (ja) タスク配分サーバ、タスク配分方法、およびタスク配分プログラム
US9691035B1 (en) Real-time updates to item recommendation models based on matrix factorization
US8626545B2 (en) Predicting future performance of multiple workers on crowdsourcing tasks and selecting repeated crowdsourcing workers
US10318988B2 (en) Managing cookie data
JP6165734B2 (ja) 使用法に基づいてコンピュータを間接的に分類するためのシステム及び方法
US9329915B1 (en) System and method for testing in a production environment
TWI556120B (zh) A method of determining a page element in a web page, and a device
US9588813B1 (en) Determining cost of service call
JP2019509546A (ja) レイテンシの削減
US20140278967A1 (en) Determining target customers during marketing
US10963920B2 (en) Web page viewership prediction
US20170046376A1 (en) Method and system for monitoring data quality and dependency
US11954162B2 (en) Recommending information to present to users without server-side collection of user data for those users
JP2021508119A (ja) システムを動的に変更してシステム効率を高める
JP2006252067A (ja) メッセージ配信方法、プログラム
US20160162934A1 (en) Advertisement distribution management device, advertisement distribution management method, and non-transitory computer readable storage medium
JP5735160B1 (ja) 広告配信管理装置、広告配信システム、広告配信管理方法および広告配信管理プログラム
JP6357435B2 (ja) 選択行動モデル化装置、選択行動予測装置、方法、及びプログラム
JP6822923B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP2021525922A (ja) リモートプロファイルに基づく推奨システムの初期設定のためのシステムおよび方法
US11520932B2 (en) Dynamic trigger of web beacons
JP2014029726A (ja) ソーシャルネットワークのユーザに広告を提供する方法およびシステム
Huang et al. Combining contribution interactions to increase coverage in mobile participatory sensing systems
JP5755291B2 (ja) 広告配信管理装置、広告配信システム、広告配信管理方法および広告配信管理プログラム
JP5956011B2 (ja) 広告配信管理装置、広告配信システム、広告配信管理方法および広告配信管理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160222

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160405

R150 Certificate of patent or registration of utility model

Ref document number: 5916596

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150