グローバルコンピューティング [9]:
ボランティアコンピューティング

産業技術総合研究所
首藤 一幸 <shudo@ni.aist.go.jp>

首藤一幸, "グローバルコンピューティング(9)「ボランティアコンピューティング」", Computer Today 2001年 9月号, pp.65-72, サイエンス社, 2001年 8月

もくじ

  1. はじめに
  2. 大規模なプロジェクト
    • SETI@home
    • distributed.net
    • 応用ビジネス
  3. ソフトウェアとプロジェクトの要件
    • 適合する問題
    • 複数問題への対応
    • ソフトウェアの更新
    • セキュリティ
    • 耐故障性
    • 電力消費
  4. 参加者への動機付け
  5. おわりに

1. はじめに

グローバルコンピューティングの目的のひとつは、情報機器をネッ トワーク経由で連係させることです。特に世の中にそうそう溢れ ているわけではない希少な情報資源、つまりスーパーコンピュー タや電子顕微鏡、またはそれらに特化したソフトウェアやデータ などがターゲットです。これまで、一個人、一組織が持てる資源 には限界があったところ、高速ネットワークの普及によって組織 をまたいで情報資源を連係させることができるようになったわけ です。

[1600x1200]
図1: 様々な情報機器

しかし、何もスーパーコンピュータを使わなければグローバルコ ンピューティングにあらず、ということはありません。世の中に は、携帯電話器やPDAからスーパーコンピュータ、またデジタル スチルカメラから電波望遠鏡まで、能力、目的の幅に富んだ様々 な資源があります(図1)。そしてこれらは能力が低めのものほど 世の中に溢れています。文章書きに使うようなありふれたPCでも、 数万台集めれば世界最速のスーパーコンピュータの計算能力を凌 ぎます。これがボランティアコンピューティングです。

私達が普段メールの読み書きなどの日常業務に使っているコンピュー タは、ほとんどの時間、暇を持て余しています。キーが打たれる、 ネットワークからパケットが到着するなどのイベントが発生する と一瞬働きますが、ほとんど時間はイベントを待っているだけで す。計算能力の9割が活かされていないと言われています。一方 で、計算能力はいくらあっても足りない、という非常に大きな問 題を抱えている人達もいます。PCの余剰計算能力をかき集めて、 大きな問題を抱えている人に提供しようという取り組みがボラン ティアコンピューティングです。大きな問題を分割して、計算能 力を余らせているPCに処理させます。また、別に能力が余ってい るわけではないけれど、大きな問題を扱うために組織内の多量の PCを束ねようという種類の取り組みもあります。

ボランティアコンピューティングのプロジェクトの中には、現在 すでに百万人の参加者を集めているものもあります。今回は、い くつかの取り組みを紹介して、ボランティアコンピューティング に関係する技術的、社会的な課題を考察していきます。


2. 大規模なプロジェクト

グローバルコンピューティング研究では実証が重要視されていま す。例えば本連載第7回(2001.5)で取り上げられたスケジューリ ングは、特にそのアルゴリズムが長く研究されてきました。その 成果を踏まえねばならないのはもちろんですが、実際にコンピュー タネットワーク上で動作させてみて初めて判ることが多いです。 ネットワークの混雑度を予測してのスケジュールなんて、やって みないことにはうまくいくかどうか判ったものではありません。 このように、アイディアは実証しないと信用してもらえません。

ボランティアコンピューティングの意義は、通常では容易に集め られない、束ねられないくらいの数のコンピュータを集めること にあります。なので、本当に「実証」するためには一定数以上の 台数、参加者を集めねばなりません。一定数以上の参加者を集め ているプロジェクトやソフトウェアに学ぶことで、VCの現在や、 実践する上での課題が見えてくるでしょう。

ボランティアコンピューティング(以下ではVC)という語は、並列 分散処理に携わっている方でも聞き慣れないかもしれません。こ こでは、ありふれたPCを数万台以上用いて行う大規模分散処理を 指します。定着した言葉ではないのですが、単に分散処理と言う と何を指すかはっきりしないので、この語を遣います。

■SETI@home

皆さんすでにご存知ではないでしょうか。大規模分散計算によっ て地球外の知能を探そうというプロジェクトです[1]。プエルト リコのアレシボ電波望遠鏡からのデータを参加者のコンピュータ で手分けして解析し、地球外知能(ETI)からの信号を探します。 1997年6月にweb上での協力呼びかけが始まり、1999年5月に Windows用ソフトウェアの正式版が公開されました。参加者数は 開始後3ヵ月で百万を越えたといいます。

参加者のコンピュータは、データサーバから340KB(うち、データ は0.25MB)のワークユニットを取得します。地球外知能からの電 波信号は、対象周波数帯を絞って、継続的に、ときに規則的なパ ルスとして送られてくると予想できます。そのようなパターンを、 ドップラーシフトを考慮しつつ探します。計算時間の大部分は高 速フーリエ変換が占めます。

SETI@homeのソフトウェアは、通常、スクリーンセーバとして動 作します。つまり、PCが日常業務に使われている間は計算を行わ ないので利用者の邪魔にならないというわけです。その後作られ たVC用ソフトウェアの多くがこの手法を採用しています。

■distributed.net

1997年に設立されたこの団体は、暗号方式DESの鍵探索を行い成 功したことで有名になりました[2]。RSA Security社が主催する いくつかの鍵探索コンテストに参加してきたこの団体は、コンピュー タ群で手分けして探索を行うソフトウェアを開発、配布して、世 の中に協力を呼びかけてきました。その結果、1999年1月のDES Challenge IIIでは、distributed.netの10万台近いPCと探索専用 コンピュータの混成チームがわずか22時間15分で暗号化鍵を発見 するに至りました。

RSA社のこのコンテストは、鍵長40bitまでという、暗号関係製品 についての米国の(その時点の)輸出規制に問題を投げかけるとい う目的で開催されたと言われています。このコンテストが影響を 与えたかどうかは不明ですが、輸出規制は緩和され目的は果たさ れました。しかしこのコンテストの影響はこれだけではありませ んでした。我々は、これだけの大規模な広域分散計算が実際に可 能であり、現実の問題に適用できるということを目のあたりにし ました。

distributed.netが配布するソフトウェアは、DES、RC-5、CS暗号 の鍵探索、最短ゴロム定規(OGR)の探索といったいくつかの問題 に対応しています。現在は、鍵長64bitのRC-5の鍵探索とOGRが進 行中です。RC-5プロジェクトは開始からおよそ3年半経っていて、 鍵空間の50%の探索が済んでいます。これまでの参加者数はおよ そ30万です。

■応用ビジネス

1999年頃から、VC、大規模分散処理をビジネスに応用しようとい う動きが出始め、いくつものベンチャ企業が現れています。彼ら のビジネスモデルは、何とかして集めた計算能力を大きな問題を 抱えている企業に売るというものです。または、顧客企業が所有 している大量のPCを束ねて大きな問題に取り組ませるためのサポー トやソフトウェアを商品にしている企業もあります。

大きな問題には、新薬の開発、遺伝子配列情報解析や、経済のシ ミュレーションなどがあります。これらの問題は分散処理によく 適合し、なおかつ、世の中の需要があります。例えばEntropia社 はFightAIDS@homeという新薬開発のプロジェクトを運営していま す[3]。AIDSの新薬開発に協力してくださいと呼びかけ、現在、 2万数千台のコンピュータが参加するに至っています。同様に United Devices社は、ガンの新薬開発への協力を呼びかけていま す[4]

他にも、Parabon Computation社、Porivo Technologies社など、 この分野で事業を興した企業がいくつもあります。Popular Power社のように、米国での投資熱の低下からすでにビジネスを 続けられなくなった企業もあるくらいです。反面、United Devices社は、Intel社他と協力して白血病治療薬の研究に取り組 んでいくという見通しの明るい発表をしました。Intel社は、こ の分野がプロセッサの処理能力への需要を喚起し得ると考えてい るようです。

どの業界でも同じですが、これらの企業は他社との差別化という 問題に直面しています。分散処理が適合する問題はある程度限ら れていることもあって、技術的には他の企業と似てしまいがちで す。そんな中、AVAKI社(旧Applied MetaComputing社)は、 public Internetを対象とはせず、企業内の情報資源を束ねる技 術とソフトウェアを商品としています[5]。これによって、組織 外に情報が洩れるといったセキュリティ上の顧客の不安を取り除 けます。また、これまで紹介してきたVCソフトウェアは、問題を 受け取って結果を返すという処理を繰り返すものでしたが、 AVAKI社のソフトウェアはMPIで通信を行う並列プログラムを実行 できます。これによって、処理できる問題の種類が増えるので、 差別化を図れるかもしれません。

AVAKI社の取り組みは一組織内のCPU cycles harvestingなので、 厳密には「ボランティア」コンピューティングとは呼べません。 単に大規模分散処理でしょうか。数台からときに1万台くらいの PCを高速ネットワークで接続して使うのがクラスタコンピューティ ングなら、イーサネット、インターネットといったありふれたネッ トワークで接続された異種のPCを数十から数百万台使う大規模分 散処理を指して何と呼んだらよいでしょうか。 メガコンピューティングと呼ぶ人もいます。 このように用語で悩むのも、PCやネットワーク、 グローバルコンピューティング周辺の変化が速いゆえです。

もうひとつ、ビジネスの動きで興味深い点は、これらの企業と研 究者の関係が深いことです。Entropia社のCTO(最高技術責任者 )はカリフォルニア大サンディエゴ校(UCSD)のAndrew Chien氏(図 2)ですし、AVAKI社のCTOはヴァージニア大でLegionプロジェクト [6]を率いているAndrew Grimshaw氏(図3)です。AVAKI社のソフト ウェアは、以前はまさにLegion Proという名前でした。どちらも 著名な研究者で、昨年つくばで開催されたWGCC'2000[7]でも講演 して頂きました。また、United Devices社のCTOは、SETI@homeの ソフトウェアを設計したDavid Anderson氏です。ここに、よく言 われる、米国での研究からビジネスへの距離の短さをかいま見る ことができます。

[800x869]
図2: Andrew Chien 氏

図3: Andrew Grimshaw 氏

3. ソフトウェアとプロジェクトの要件

コンピュータ1台で動作するソフトウェアにも様々な課題、問題 があるのですから、桁違いの数のコンピュータを対象とするボラ ンティアコンピューティング(以下ではVC)ソフトウェアにももち ろん多くの要件や課題があります。例えば、準備のしやすさ、使 いやすさが非常に強く求められます。主催者としては多くの参加 者、協力者を集めたいわけですが、参加したいという動機が、手 間や出費といったコストを上回ってはじめて参加してもらえます。 参加者の労力を極力低く抑えると同時に、参加者に対して強く動 機付けをしなければなりません。どのように動機付けを行うかは、 後ほど述べます。

■適合する問題

VC、大規模分散処理は問題の種類をある程度選びます。スーパー コンピュータで家計簿の計算が速くならないのと同様に、それな りに大きく、かつ並列性の高い問題を持ってくる必要があります。 現在VCが適用されている問題のほとんどは、パラメタサーチ、パ ラメタ探索といって、多量の異なる入力に対して同じ処理を施す 種類の問題です。この種の問題では、ひとつの入力を処理し終え るまで他のコンピュータと情報交換、すなわち通信をする必要が ないため、通信性能に関わらず高い効率で並列処理を行えます。 例えば、新薬開発では薬候補の分子構造、つまりパラメタが数億 通りあります。それを一部ずつ参加PCに割り当てて、薬としての 評価を行わせるのです。各候補の評価は完全に並列に行えるとい うわけです。

VCではまた、必要な計算の量が通信の量を遥かに上回っている、 つまり「通信量<<計算量」である必要があります。ここで、通信 とは、処理の遂行時に他のPCと行う通信だけでなく、処理を行う ためにPCが受け取るパラメタ、問題データの量も含めて考えねば なりません。distributed.netの鍵探索はいい例です。参加PCは 問題サーバから指定された暗号化鍵を調べます。このとき、ひと つの単位として2の28乗個の鍵を指示されるのですが、鍵空間中 の範囲という形で指示されるので、通信量はとても小さくて済み ます。暗号方式の鍵長が64bitの場合、一単位の指示は36bitで済 むわけです。そしてそのたかだか数十bitの指示を受けて、2の 28乗回もの試行を行うので、通信量に対する計算量は非常に大き いものとなります。

■複数問題への対応

初期のVCソフトウェアは、単一の問題、あるいは特定のいくつか の問題に特化して作られてきました。例えば、SETI@homeは電波 望遠鏡からのデータの解析、distributed.netはRC-5、DES、CS暗 号およびOGRといった具合です。しかしこれでは、取り組みたい 問題の数に応じてソフトウェアをインストールしていかねばなり ません。また、問題ごとに別のソフトウェアを動作させておくの はメモリなどの無駄でもあります。

これに対して、ソフトウェア中の、特定の問題を処理する部分を モジュール化して、追加や削除、交換が可能なようにしておくと いう設計が考えられます。異なる問題で共有できる部分、例えば 問題サーバとの通信部などは、いわゆるツールキットとして、い ろいろな問題や開発者が使い回せるように作っておきます。この ように、ひとつのプログラムで様々な問題を扱えるようにするこ とで、問題間での資源の調停を行えるようにもなります。つまり、 問題Aに計算能力の50%を使い、問題Bには30%を割り当てる、といっ た指示を行えるようになります。また、現在のVCソフトウェアに は、スクリーンセーバに指定できるのはひとつのソフトウェア、 つまり一社のソフトウェアだけ、という制約がありますが、これ も調停できるようになって欲しいものです。10回中5回は問題A、 3回は問題Bといった具合に、です。

distributed.netのソフトウェアは、問題の差し替えこそできな いものの、4種類の問題について、取り組む際の優先順位を指定 できるようになっています。United Devices社の場合は、現在、 2つの問題について参加か不参加かを指定できるようになってい ます。

■ソフトウェアの更新

先に、VCソフトウェアには準備のし易さ、使いやすさが非常に強 く求められる、と述べました。これは、ソフトウェアの更新につ いても同じです。例えばセキュリティ的な問題が見付かってしまっ た場合や、新しい問題のプロジェクトを始めたい場合など、参加 PC上のソフトウェアを更新してもらいたくなることがあります。 しかし、更新しても基本的に同じソフトウェアなので、変化や刺 激、楽しさに欠けます。インストールの労力を上回る動機付けだ けでも大変なのに、刺激に欠ける更新を行ってもらうのはさらに 難しいことです。

VCの主催者にとって、一度集めた参加者は重要な財産です。参加 者、参加PCの多寡が総計算能力を決めるからです。ソフトウェア の新版リリースや新しい問題に取り組み始める際に、それまでの 参加者を引き継げないようでは、特にビジネスとして計算能力を 売ろうという場合にはお話になりません。

そこで、主催者にとっては、主催者側から参加PC上のソフトウェ アを更新できることが望ましいです。ソフトウェアの全体または 一部をネットワーク経由で更新できる仕掛けを仕込んでおくので す。または、Javaアプレットのように、計算を再開するたびにプ ログラムを参加PC側に転送するという方法も考えられます。この 方法には、毎回アプレットが手もとに転送されてネットワークの 帯域幅を消費するのではないかという不安がありますが、PC側に キャッシュされるようになっていればあまり問題にありません。

こういった主催者側からの更新機能は慎重に設計、実装しなけれ ばなりません。まず、ネットワーク経由で参加者PC上のファイル を書き換えられるということは、その機能自体がセキュリティホー ルとなって悪意ある攻撃に利用されてしまう危険があります。最 低でも、公開鍵暗号方式に基づいた認証くらいは行う必要がある でしょう。また、更新にあたっても細心の注意を払わないと、主 催者は信用を失い、参加者を逃すことになってしまいます。参加 者に、勝手にファイルを書き換えている、勝手に知らないプロジェ クトに参加させられている、という印象を与えてしまうとなかな か取り返しがつきません。適宜、参加者の意志を確認して同意を 得る仕掛けにしておく必要があるでしょう。

Entropia社は、自社のソフトウェアが自動更新機能をもっている と言っています。それに対してSETI@homeやdistributed.netのソ フトウェアは参加者自身が更新する必要があります。多機能なソ フトウェアがすなわち優秀だとは一概には言えませんし、セキュ リティホールを作る危険、信頼を失う危険もはらんでいる機能な ので、ビジネスが目的でないならば、実装しないという選択もあ るかもしれません。

■セキュリティ

やはり、セキュリティはグローバルコンピューティングに共通の 重要な要件です。組織内のPCを束ねるならともかく、組織をまた いで情報機器を集める場合、それぞれの機器は管理者も管理ポリ シーも異なるので、余計に問題は複雑です。ひと口にセキュリティ と言っても多くの切り口があります。ここではVCならではの側面 に言及します。

・問題サーバへの攻撃

もし、ある参加者が主催者側のコンピュータ、例えば問題サーバ にいたずらをしようと考えた場合、どんなことができるか考えて みます。セキュリティ向上の第一歩は、リスクの想定、見積もり です。例えば、単純に、問題割り当てのリクエストや返答を大量 に送り付けてネットワークの帯域や問題サーバに負荷をかけると いうサービス不能(DoS, Denial of Service)攻撃が考えられます。 しかしこれはVC固有の問題ではないので、ここでは深く議論しま せん。

他には、問題の割り当てを受けておいて、処理せずに放っておく という嫌がらせも考えられます。もし問題サーバが非常に単純に 作られていて、いつまでも結果の返答を待つとしたら、いつまで も全体の処理は終わらないことになってしまいます。実際にはそ ういった単純な作りにはなっていなくて、例えばSETI@homeの問 題サーバは、割り当て後一定時間経過したワークユニットは他の コンピュータに割り当ててしまうことでこの問題を回避していま す。

問題サーバへの嫌がらせとして他には、嘘の返答を返すという方 法もあります。暗号化鍵の探索問題であれば、鍵を見付けたにも 関わらず見付からなかったという返答をするのです。問題サーバ 側に何も工夫がない場合、最後まで鍵が見付からない事態に陥っ てしまいます。しかしやはり、どんなプロジェクトでもこの程度 の問題はあらかじめ想定して対策をとっています。対策として考 えられるのは、同じ部分問題を複数のPCに割り当てて、その返答 (複数)を比較するという方法です。返答が食い違った場合は、再 度、別のPCに割り当てれば、誤った結果を採用してしまう確率を 0に近づけていくことができます。または、その部分問題は主催 者側で処理してしまい確実に正しい結果を得るという方法も考え られます。この方法はこの方法で、主催者側の計算能力を消費さ せるという種類のサービス不能攻撃に使われる恐れもあります。 悩みは尽きません。

しかしそもそも、こういった問題サーバへの攻撃は可能なのでしょ うか。問題サーバに対して上記の攻撃を行う場合、最低でも、参 加PCと問題サーバ間の通信プロトコルを知っている必要がありま す。大規模なプロジェクトは通信プロトコルを公開していません。 しかしこれを調べることは簡単です。通信内容を覗けば解析でき てしまいます。では、例えばTLS(SSL)で通信内容が暗号化されて いたらどうでしょうか。通信内容からの解析はできなくなります が、結局、参加者の手もとにはソフトウェアがあるので、それが バイナリコードであろうと解析は可能です。コンピュータのセキュ リティを考える場合、可能なことはすべてやられてしまう、とい う前提で厳しく考えておかねばなりません。

悪意を持った者が、自分で攻撃を行うだけでなく、攻撃を行うよ うなソフトウェアを正規のものと偽って配付するという事態も想 像できます。こうしたトロイの木馬の危険は、VCに限らずソフト ウェア一般の問題です。この問題に対しては、配付元を自らの管 理下にあるウェブサーバ、FTPサーバに限定するという対策が一 般的です。例えばdistributed.netは再配付をしないように利用 者に呼びかけています。再配付を許すと、改変版が流布する危険 が高くなってしまうからです。

・プライバシーの保護

VCには一般に、主催者、問題提供者、コンピュータ提供者の3者 が関係します。具体的には、新薬開発であれば、新薬のために莫 大な計算を行いたい製薬会社や研究組織が問題提供者であり、そ の計算を請け負って分散計算を企画するEntropia社やUnited Devices社のような主催者がいて、PCを提供する参加者がいます。 この3者それぞれのプライバシーがきちんと守られないと、プロ ジェクトはうまく進行しません。当然ながら、自分のPC上のファ イルを覗かれる、盗まれるといった不安があるとしたら、参加者 は自分のPCを提供しようとは考えないでしょう。主催者は信頼を 得る努力をせねばなりません。本当は、VCソフトウェアのソース コードが公開されていれば、誰でも監査できるという安心感から 参加者はソフトウェアを信用できるのですが、どのソフトウェア もバイナリのみが配付されているというのが現状です。主催者は、 通信プロトコルなどが解析されることや、改造版が出回ることを 恐れているのでしょう。

主催者にとっては、参加者の信頼と同様に、問題提供者の信頼を 得ることも重要な課題です。特にビジネスの場合は、問題提供者 はすなわち計算能力を買ってくれる顧客なので、信用は死活問題 です。問題提供者は、主催者側のコンピュータから計算の成果が 盗まれないだろうか、とか、参加者からの通信内容を傍受されて 成果を盗まれないだろうか、といった不安を抱くでしょう。さら には、問題提供者としては参加PC上での処理内容まで秘密にして おきたいかもしれません。例えば、新薬開発のためには分子構造 の薬としての価値を評価するので、その評価手法や、評価を高速 に行うアルゴリズムが特許成立前である場合、秘密にしておきた いかもしれません。傍受に対しては暗号化といった技術的な対策 がありますが、ソフトウェアを配付してしまう以上、アルゴリズ ム、処理内容の秘匿は難しいです。主催者は技術的に努力するだ けでなく、守れる範囲を明らかにして、漏洩の可能性といったリ スクをきちんと説明する必要があるでしょう。

■耐故障性

コンピュータの電源をいきなり切ったとして、それで壊れるよう ではVCソフトウェアは使いものになりません。電源投入後には処 理を再開、継続できる必要があります。耐故障と書きましたが、 VCでは突然の中断は例外的な状況ではなく、むしろそれが日常で す。VCソフトウェアはそのつもりで設計しなければなりません。 このためには、処理途中のデータを定期的にディスクに保存する という方法がよく採られます。仮にいきなり電源が落ちたとして も、最後に保存した時点から処理を再開できます。 checkpointingで任意の処理を保存、再開できるようにするのも よいでしょう。

■電力消費

VCの意義としてよく言われてきたのが、遊休計算資源の活用、で す。スクリーンセーバが動いている間はPCは暇である、という理 屈です。しかし活用すればそれだけ電力を消費するはずなので、 電力、ひいてはエネルギー資源の消費という負の効果も見積もっ ておきたいものです。これまでは、スクリーンセーバが動いてい る間やキー入力を待っている間も、どうせプロセッサは電気を食っ ている、と言われてきました。どうせ消費しているのなら、何か 活用した方がよいという理屈です。

しかし最近のコンピュータシステム、特にプロセッサの省電力機 構を鑑みると、電源が入っているからといってピークの電力量を 消費しているとは限らないことが判ります。特にノートPCでは、 一定時間アクセスがないとハードディスクの回転が止まることも 一般的です。それだけではなく、処理することがないときはOSが プロセッサの駆動クロック周波数を下げて消費電力を抑えること もごく普通になっています。例えばTransmeta社のCrusoeという プロセッサは、処理内容に対して必要最低限なクロック周波数に 調整しようとします[8]。このようなコンピュータシステムでは、 VCによって電力消費量が増えるわけです。


4. 参加者への動機付け

自分の管理下にあるコンピュータを集めるならともかく、組織を またいで、また、多くの個人のPCを集めるのですから、何とかし て参加したいと思わせねばなりません。スーパーコンピュータや 高性能クラスタを集めたGridテストベッドでは、現段階では、研 究上の興味、目的から、組織をまたいだ利用が許可されています。 しかし、数万台を超えるPCを集めようという場合、つないでみよ うよ、だけでは参加者は集まりません。これは、PCを集めるボラ ンティアコンピューティング(VC)に限らず、テストベッドではな い本当のGridを構築する場合も同様です。情報資源の提供者に対 してそれなりの動機付けができて初めて、資源を集めることがで きます。ここでは、将来のGridプロジェクトのために、現在の VCプロジェクトの動機付けモデルを調べます。

まず、参加者は何を得ているのかを考えます。わざわざ手間と時 間、ネットワークの帯域幅などを供出するのだから、代わりに何 かを得ているのだろうと単純化して考えます。ごく単純に、経済 的な報酬によって動機付けを図っているプロジェクトも多いです。 Porivo Technologies社はweb上の仮想通貨を報酬として支払って います。参加することが懸賞への応募となるケースも多いです。 懸賞とはうたっていなくとも、distributed.netの鍵探索のよう に、正解鍵を発見した参加者に賞金が贈与されるというケースも、 報酬による動機付けに分類できるでしょう。インターネット接続 業者が、無料での接続を提供する代わりに利用者には計算能力を 提供してもらおうという試みもあります。この場合、報酬はイン ターネットへ接続性ということになります。報酬という考え方を 一歩進めて、市場を構築して計算能力を取り引きしようという取 り組みもあります[9]。これについては本連載第7回(2001.5)を参 照してください。

こういった試みが盛んである一方、これまで、いくつかのVCプロ ジェクトは経済的な動機付けを行わずとも規模を拡大してきまし た。SETI@homeやdistributed.netは非営利団体ですが、数万から 百万ものの参加者を集めています。では、なぜ人々は参加するの かというと、何種類かの精神的な喜びが動機となっていると考え られます。例えば、お祭り参加感とでも言いましょうか、大きな 企画、かつてない企画に参加、貢献していると感じられることは それ自体が喜びです。ガン、AIDSといった人類全体の問題への挑 戦や、OGRなど人類の知識への貢献を掲げるプロジェクトは、こ の心理を利用していると言えます。

また、自己顕示欲を利用する工夫もなされています。例えば、正 解鍵や地球外知能からの信号を発見した場合にはクレジット、つ まり名前が公表、記録されますし、多くの計算をこなせば、順位 表に名前が載ります。計算した量をチーム間で競わせるという方 法もよく採られています。初期の非営利プロジェクトが導入した これらの仕掛けを多くの企業も利用しています。


5. おわりに

ボランティアコンピューティングの面白いところは、一に規模の 大きさ、二に規模に反して非常に身近であることだと思います。 プロジェクトを育てることはとても大変ですが、参加、体験する だけならPCが一台あれば充分です。身近なだけに、スーパーコン ピュータ群のGridを構築するよりも難しい面もあります。Grid研 究者はソフトウェアのインストールに何時間も費してくれますが、 多くの消費者が我慢してくれるのはマウス10クリック程度でしょ う。また、参加者への動機付けもシビアです。コンピュータを売 るのではなくて計算をサービスとして売る動きもすでに始まって います。こうしたボランティアコンピューティングでの試みが、 明日のGridに活かされていくことでしょう。


参考URL

[1] SETI@home: http://setiathome.ssl.berkeley.edu/
[2] distributed.net: http://www.distributed.net/
[3] Entropia 社: http://www.entropia.com/
[4] United Devices 社: http://www.ud.com/
[5] AVAKI 社: http://www.avaki.com/
[6] Legion: http://legion.virginia.edu/
[7] WGCC'2000: http://www.rwcp.or.jp/events/wgcc2000/
[8] Transmeta 社: http://www.transmeta.com/
[9] Economy Grid: http://www.csse.monash.edu.au/~rajkumar/ecogrid/