[ in English ]
本プロジェクトは「人と計算機の知の融合のためのプログラミング言語と開発環境」として,科学技術振興機構戦略的創造研究推進事業(さきがけ) 研究領域「情報環境と人」に採択して頂きました.
近年,計算機では処理が困難な問題の処理を人間にアウトソーシングするヒューマンコンピュテーション/クラウドソーシングや,人々の計算機ネットワーク上での活動を生かしたソーシャルコンピューティング等が注目を集めています.究極には,今後人類が直面する困難な問題を解決するために,得意分野が異なる計算機と人間の知を融合して立ち向かう事が重要になると考えられます. 本研究はそれに向けての第一歩であり, ソーシャル・ヒューマンコンピュテーション,クラウドソーシング系ソフトウェア等を含む, 人と計算機が共に適切に働くことが必要なデータ指向ソフトウェアを迅速に開発するためのプログラミング言語・環境の研究を行います. 人をゲームに従って動く"合理的情報源"とモデル化し, プログラムの明示的な構成要素とする事により, 人と計算機を一つのシステムとみなしたアドホックでないプログラミングを実現する技術基盤の確立に挑戦します.
FusionCOMPプロジェクトの中心課題は,人と計算機の知の融合を記述する,実行・解析可能なアブストラクションとしてのプログラミング言語の研究です. その研究を通じて目指す目標は,大きく二つに分けられます.
  • 人と計算機が共に適切に働くことが必要な応用ソフトウェアの迅速な開発を実現する.
  • 人と計算機が共に適切に働くことが必要なコンピュテーションに関する科学的知見を得る.
このように,本プロジェクトでは,「人と計算機の融合コンピューティング」という新たな領域を切り開くことを目指し,研究を推進します.

FusionCOMPプロジェクト進捗状況

FusionCOMPプロジェクトのビジョンである,計算機だけでなく人も計算資源と見なした知の融合を実現するため, 現在は下記について研究開発を行っています.

Some of the Key Technologies

  • CyLog
    • A rule-based language that allows us to write declarative and seamless description of human/machine computations: both of human/machine computations are described with the same set of programming constructs.
    • The syntax is similar to Datalog (or Prolog).
    • Human as a rational data source: Each human is modeled as a rational data source, which provides data according to expected rewards. CyLog allows us to write data games and aggregations to obtain values with required properties (e.g., correctness).
    • Open predicates/attributes: An open predicate is a predicate that humans are expected to evaluate if its truth cannot be determined by computers based on the already-known facts. Similary, an open attribute is an attribute that humans are expected to fill in if its value cannot be derived by computers based on the already-known facts.

      For example, the following code assigns a set of keywords as metadata to each image when the keywords are given by the crowd and have definitions in the dictionary.
      Metadata(i, w) : - img(i), keywords(i, w)/open, inDict(w)

    • Game Aggregations: functions to compute values based on the behaviors of humans or the crowd.
  • Crowd4U: A crowdsourcing platform that executes CyLog codes (to appear)

Related Systems/Technologies/Research Projects (under construction)

Data-centricなものに関しては,Anhai Doan, Michael Franklin, Donald Kossmann, Tim KraskaらによるVLDB2011でのチュートリアルがあります.本プロジェクトにも触れられています.
  • TurKit: A Java/JavaScript API for running iterative tasks on Mechanical Turk. With TurKit, programmers write programs in a straightforward imperative manner, but can safely re-execute programs without re-running costly side effects on Mechanical Turk. CyLog provides a data-centric declarative abstraction, focusing on the fusion of human/machine computations.
  • CrowdLang: A model-based programming language for complex crowdsourcing applications. It is interesting that it provides a set of common patterns and concepts taken from collective intelligence applications. Currently, it seems that the codes in CrowdLang are written at an abstract level. In contrast, the codes in CyLog is executable.
  • Collective Knowledge Bases: In the project, they constructed a system to leverage mass collaboration to build large knowledge bases. In the system, contributers (1) give facts and rules and (2) receive feedbacks. The collected knowledge base is utilized in an traditional expert-system fastion. For example, it is used for printer truble shooting. In contrast, CyLog is designed for data-centric applications, in which we collect, process, integrate, and manage data in the presence of human data sources. This makes a big difference in the language design. For example, CyLog does not take the traditional closed world assumption and has a mechanism to solicit human input.
  • Qurk: Qurk helps users build crowd-powered data processing workflows using a SQL-like language. In Qurk, user-defined functions are incorporated into SQL queries to interact with the crowd. In contrast, CyLog programs employ Datalog-style rules and an event-driven semantics.
  • sCOOP: The Stanford--Santa-Cruz Project for Cooperative Computing with Algorithms, Data and People. Their hQuery is discussed in a Datalog-like notation. The h/ha-predicates of hQuery and our open predicates have some similarity. An open predicate is evaluated by humans when it cannot be evaluated by machines (through data or algorithms), while h-predicates and ha-predicates are evaluated by humans and both of human and algorithms, respectively. It is interesting that they have different (and possibly complementary) approaches to deal with data values obtained by people. hQuery takes the crowd-as-a-data-source approach, in that each value (associated with its certainty) is automatically by the crowd. They propose to use probability thresholds for that purpose. In contrast, CyLog takes the human-as-a-data-source approach in that we model each human as a rational data source and that we design data games and aggregations to obtain values with required properties.
  • CrowdDB: CrowdDB provides an SQL-compatible language to handle queries that cannot be answered by machines only. They try to achieve the data independence and query optimitzation in the presence of the crowd processing. Their CNULL and our open attributes are similar to each other.
  • CrowdForge: A MapReduce-like framework/toolkit, being developed by CMU, to implement complex crowdsourcing applications based on the partition, map, and reduce abstractions. Compared to CyLog, CrowdForge gives us a higher-level abstraction to define the structure of crowdsourcing applications. We think that CyLog can be used as an executable language into which the application definition by CrowdForge can be translated.

プロジェクトメンバ

研究協力者・過去メンバ

  • 阿部徹也 (2010/11-2012/1)
  • 望月祥司(2010/4-2011/3)
  • 安永ゆい(2010/4-)
  • 山口佳祐(2010/4-)
  • 安西則晃(2009/4-2010/3)

Publications/Talks

  • 三津石智巳,森嶋厚行,品川徳秀,青木秀人 「クラウドソーシングによるHuman-powered Joinの効率化
    第4回データ工学と情報マネジメントに関するフォーラム(DEIM 2012), 6 pages, 神戸,2012年3月.
  • 福角駿,森嶋厚行,品川徳秀 「GWAPによるマイクロブログからの構造データ抽出」
    第4回データ工学と情報マネジメントに関するフォーラム, 8 pages, 神戸,2012年3月.
  • 青木秀人,森嶋厚行,品川徳秀,三津石智巳 「データ中心型クラウドソーシングのための網羅演算の提案」
    第4回データ工学と情報マネジメントに関するフォーラム(DEIM 2012), 7 pages, 神戸,2012年3月.
  • Atsuyuki Morishima, Norihide Shinagawa, Shoji Mochizuki. The Power of Integrated Abstraction for Data-centric Human/Machine Computations. First International Workshop on Searching and Integrating New Web Data Sources (VLDS2011) Co-located with VLDB 2011, pp. 5-9, September, 2011. (pdf here. Slides here.)
  • 三津石智巳,品川徳秀,森嶋厚行, (研究協力者: 望月祥司,安永ゆい,山口佳祐,青木秀人).「人と計算機の知の融合アプリケーションとその開発環境」.第2回ソーシャルコンピューティングシンポジウム (SoC2011), 2011年6月. (poster with demonstrations: poster in Japanese here)
  • 三津石智巳,望月祥司,森嶋厚行「人と計算機を情報資源とする統合情報検索システムCySearchの提案」 情報処理学会第73回全国大会講演論文集(第1分冊), pp. 683-684, 2011年3月.
  • 安永ゆい,望月祥司,森嶋厚行「GWAPによるオントロジ構築手法の提案」 情報処理学会第73回全国大会講演論文集(第1分冊), pp. 765-766, 2011年3月.
  • 森嶋厚行「人と計算機の知の融合のためのプログラミング言語と開発環境」 合同エージェントワークショップ&シンポジウム2010 (JAWS2010), JSTさきがけセッション, 2010年10月27日-29日
  • Atsuyuki Morishima. A Database Abstraction for Data-intensive Social Applications.
    The 5th Korea-Japan Database Workshop 2010 (KJDB2010), May 28-29, 2010. Jeju Province, Korea. (Invited Talk: Slides here)
  • Atsuyuki Morishima, Noriaki Anzai. A Database Language for Collaborative Data Management by Computers and People. IPSJ Technical Report, 2009-DBS-149(12), pp. 1-8, Nov. 2009. (in Japanese)
()