2018年12月7日金曜日

SETI@homeで宇宙人を探そう

分散コンピューティングで宇宙人探し

怪しくない宇宙人探し

宇宙人を探そう! と言っても、ビルの屋上でみんなで輪になって「ベントラ、ベントラ…」などと唱えたり、チャネリングでトランス状態になって大宇宙のブラザーと交信するようなものではなく、SETI(Search for Extra-Terrestrial Intelligence(地球外知的生命体探査/セチ))というまっとうなプロジェクトに参加してみようというものだ。

SETIは地球外知的生命体を探査するプロジェクトの総称である。プロジェクトの中身はいろいろあるようだが、一般の人が参加できるのが、SETI@home(セチ・アットホーム)だ。

宇宙から地球に向けて様々な電波が飛んできている中に、宇宙人が発した意味のある信号がないかどうか、電波望遠鏡で受信した電波を解析しているのだが、その量が膨大なので、スーパーコンピュータがいくつあっても足りない。
そこで家庭にあるパソコンをインターネットでつなげ、処理の余力を利用してバックグラウンドで少しずつ解析の手伝いをしてもらおうというのがSETI@homeだ。

※こうした非力なコンピュータを何台も連携させ、仕事を分散して処理し、トータルで高い結果を得る技術を分散コンピューティングという。

インストールと設定の方法

※数年前のオリジナル記事執筆時の情報なので、今はやり方が若干違うかもしれません

SETI@homeへの参加方法は簡単だ。必要なのは自分が管理権限を持つパソコンと、インターネット回線だけ。必要なソフトはすべて無償で提供されている。もちろんお金を請求されたり、難しい書類を書かされたりすることもない。

※時々SETIから寄付してほしいってメールが来ることもあるけど、その気がなけりゃほっといていい。
まずSETI@homeのWebサイトに行って簡単な説明を読み、BOINCというアプリをダウンロードしてインストールする。

※BOINCは分散コンピューティングのためのアプリで、SETI@home以外(病気の治療、地球温暖化の研究、パルサーの発見など)でも使われている。

インストールされたBOINCManagerを起動すると、アカウントの設定ダイアログが表示される。
まずは「Attach to project」にチェックを入れて「次へ(N)」。

BOINCは他のプロジェクトでも使われているので、ここで接続したいプロジェクト「SETI@home」を選択し、「次へ(N)」。
プロジェクトのURLを尋ねられる場合があるようなので、その場合は「http://setiathome.berkeley.edu/」を指定。

「いいえ(N)、新しく参加します」をチェックし、アカウント用の電子メールアドレスとパスワードを入力して「次へ(N)」。

ダイアログが閉じてSETI@homeのWebサイトに飛ぶので、サイト上で自分を識別する名前、国名を入力して「OK」。
その後、チーム名検索のページが開く。世界中にいろいろなチームがあり、それに参加する方が解析効率がいいらしいのだが、個人で参加していてもいっこうにかまわないので、とりあえず登録作業は終わりにする。チームには後から参加することもできる。
日本には「チーム2ちゃんねる」なんてのもあった。

SETIへの接続はあっという間

アカウントの登録が終了した時点で、おそらくBOINCのアプリが起動しているだろう。(起動していなかったら自分で起動しよう)その時点ですでにSETI@homeに参加し、データの解析が始まっている。
メニューの「設定...」でSETI@homeに割くCPU割当などを変更できる。CPUの他にGPUも使う場合があるようだ。

自分で使ってみた感じでは、CPU割当の設定にもよると思うが、表の作業が極端に遅くなるようなことはないようだ。

なお途中で、SETI@homeスクリーンセーバーをインストールするかどうかの確認があるので、インストールしておこう。
スクリーンセーバーを実行すると、解析状況をグラフのアニメーション化したものが見られる。詳しい意味はよくわからないが、きれいだし、かっこいい。

解析作業を中断したい時、パソコンの電源を切りたい時などは、有無を言わさずBOINCのアプリを終了していい。そこまでの計算結果はどこかに保存されており、再びアプリやスクリーンセーバーを起動すると前回の続きから計算を始めるようだ。

参加していると、「Project has no jobs available」というメッセージが送られてくることがあるが、これはプロジェクトに利用できる仕事がないということだ。処理が間に合ってしまっているのか、なんらかのトラブルが原因なのかはわからないが、とにかく今はやる仕事がないということだ。そのまま待っていればまた処理すべきデータが送られてくる。

0 件のコメント: