is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。...

20

Upload: others

Post on 10-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー
Page 2: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

3

 本学科の平木教授が講演の冒頭で必ず話すように、コンピュータは指数的に速 本学科の平木教授が講演の冒頭で必ず話すように、コンピュータは指数的に速

くなっている。単純化すると10年で千倍になっている。ということは、20年で百万くなっている。単純化すると10年で千倍になっている。ということは、20年で百万

倍、30年で十億倍になる。どうしてこんなに速くなるのだろうか。倍、30年で十億倍になる。どうしてこんなに速くなるのだろうか。

 カーツワイルという、アメリカのかなり怪しいがとても有名な未来学者が、「収穫 カーツワイルという、アメリカのかなり怪しいがとても有名な未来学者が、「収穫

加速」という法則を唱えている。技術革新の結果はいくつもの新たな技術を生み出加速」という法則を唱えている。技術革新の結果はいくつもの新たな技術を生み出

すので、技術の発展は必然的に指数的になるのだと。こんな怪しい話が本当にあすので、技術の発展は必然的に指数的になるのだと。こんな怪しい話が本当にあ

るのかと訝るのも当然であるが、しかし、コンピュータは実際に指数的に速くなってるのかと訝るのも当然であるが、しかし、コンピュータは実際に指数的に速くなって

きたし、並列計算機を研究している石川先生や量子計算を研究している今井先生きたし、並列計算機を研究している石川先生や量子計算を研究している今井先生

の言うことが本当ならば、コンピュータは今後も指数的に速くなっていく。の言うことが本当ならば、コンピュータは今後も指数的に速くなっていく。

 とすると、近い将来、何が起こるのだろうか。平木先生によれば、現在のコン とすると、近い将来、何が起こるのだろうか。平木先生によれば、現在のコン

ピュータは鰐(ワニ)の脳だそうだ。どうして鰐に譬えるのかまったくわからないが、ピュータは鰐(ワニ)の脳だそうだ。どうして鰐に譬えるのかまったくわからないが、

それはともかく、鰐の脳が人間の脳になる日も近いという。上で述べたカーツワイそれはともかく、鰐の脳が人間の脳になる日も近いという。上で述べたカーツワイ

ルはもっと明確である。予言者たるもの、こうであってほしい。なんと、2045年になルはもっと明確である。予言者たるもの、こうであってほしい。なんと、2045年にな

ると、コンピュータの知性が人間の知性を超えるのだそうだ。この時を特異点といると、コンピュータの知性が人間の知性を超えるのだそうだ。この時を特異点とい

う。特異点の前後で世界は一変する。人間の知性はコンピュータの知性に飲み込う。特異点の前後で世界は一変する。人間の知性はコンピュータの知性に飲み込

まれ、もやは、知性の発展を担うのはコンピュータ上の人工知能にほかならない。まれ、もやは、知性の発展を担うのはコンピュータ上の人工知能にほかならない。

 本当にそんな世界がくるのだろうか。しかし、30年前の人間が果たしていまの世 本当にそんな世界がくるのだろうか。しかし、30年前の人間が果たしていまの世

界を想像できただろうか、ということを考えるならば、いまの人間に30年後のこと界を想像できただろうか、ということを考えるならば、いまの人間に30年後のこと

がわかるはずもない。がわかるはずもない。

 人間社会は仮想化している。そもそも、都市に住むということ自体が仮想化の始 人間社会は仮想化している。そもそも、都市に住むということ自体が仮想化の始

まりなのである。そして、テレビを見ている時間、テレビゲームで楽しんでいる時間まりなのである。そして、テレビを見ている時間、テレビゲームで楽しんでいる時間

も、仮想世界ですごす時間である。この文章を読んでいる皆さんも、一日のうちのも、仮想世界ですごす時間である。この文章を読んでいる皆さんも、一日のうちの

何時間を、携帯でメールを送ったりパソコンでブログを書いてすごしているだろう何時間を、携帯でメールを送ったりパソコンでブログを書いてすごしているだろう

か。また何時間、ゲームマシンの前で遊んでいるだろうか。すでにこの現代においか。また何時間、ゲームマシンの前で遊んでいるだろうか。すでにこの現代におい

てすら、仮想世界のなかで涙を流し、生きがいを感じる人々がいるではないか。てすら、仮想世界のなかで涙を流し、生きがいを感じる人々がいるではないか。

 やがて、仮想世界のなかに人工知能が出現し、人間と対等な知的活動をする時 やがて、仮想世界のなかに人工知能が出現し、人間と対等な知的活動をする時

代がやってくるだろう。30年後、いまよりも十億倍の計算能力を持ったコンピュー代がやってくるだろう。30年後、いまよりも十億倍の計算能力を持ったコンピュー

タがポケットに入る時代になったとき、世界は一変し、本当に特異点がくるのかもタがポケットに入る時代になったとき、世界は一変し、本当に特異点がくるのかも

しれない。しれない。

 そのような時代の激流のなかでひとつだけ確かなことがある。情報技術が常に そのような時代の激流のなかでひとつだけ確かなことがある。情報技術が常に

中核にあって社会を導いていくということである。皆さんは、そのような時代の激流中核にあって社会を導いていくということである。皆さんは、そのような時代の激流

に身を任せるのか、それとも、その激流を自らつくっていくのだろうか。に身を任せるのか、それとも、その激流を自らつくっていくのだろうか。

萩谷 昌己萩谷 昌己

□写真 三浦 健司/情報理工学系研究科広報室/宮沢 一二三/Marshall Astor

□イラスト 横田 ユキオ/Hama-House/市野 治美

□文 窪木 淳子/谷田 直輝/秋葉拓哉/岩田陽一

□デザイン 株式会社ライズ・イメージ・ファクトリー

□編集 株式会社アスキー・メディアワークス

2012年5月発行

東京大学理学部情報科学科〒113-8656 文京区本郷 7-3-1 理学部7号館 http://www.is.s.u-tokyo.ac.jp03-5841-4111~4112

目 次

4

6

7

8

10

12

16

18

20

22

24

26

28

29

30

31

32

33

34

35

36

37

38

カリキュラムと学習のながれ

時間割と進学に必要な履修科目

すこし長いFAQ

コンピュータってこんなふうにできていたんだ!

プログラミング実験と課題̶作ればわかる、あのソフトこのソフト

プロセッサ・コンパイラ実験(CPU実験)̶ ほんとうのコンピュータ自作

モデル化と理論とコンピュータ

されど並列計算

理学部7号館の一日

情報科学科の先輩たち  僕らは技術の王道を駆けていく

卒業後の進路/海外で活躍する先輩たち

計算機から抜け出た「くまたん」

情報科学科の研究室紹介

萩谷研究室

今井研究室

西田研究室

平木研究室

石川研究室

須田研究室

五十嵐研究室

高橋研究室

小林研究室

蓮尾研究室

競技プログラミングにチャレンジ

Page 3: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

4年冬学期

4年夏学期

54

情報数学

符号理論、情報理論入門、群・環・有限体の情報科学的展開

計算機システム

逐次計算機の構成・動作原理、数の表現、割込み、アセンブリ言語

ハードウェア構成法

オペレーティングシステム

プロセス、プロセス間の同期・通信、仮想記憶、ファイル入出力、実時間処理

計算機構成論

計算機アーキテクチャの基礎、計算機設計方式、高速化方式、評価

言語モデル論

プログラミング言語のモデル、意味論、帰納的関数、λ計算、作用型並列処理、型推論

コンピュータネットワーク

コンピュータネットワークの基礎、インターネット技術、経路制御

システムプログラミング実験OS演習

関数・論理型プログラミング実験ML、Prolog

ハードウェア実験論理回路、論理シミュレーション、VHDL

情報科学演習I離散数学、情報論理の問題演習

アルゴリズムとデータ構造

問題解決のアルゴリズム、リスト、木、ハッシュ、ソート、グラフ

形式言語理論

オートマトン、正規言語、文脈自由言語、チューリング機械

離散数学

グラフ理論、線形計画法、マトロイド理論、離散最適化法

情報論理

一階述語論理の構文論・意味論、計算可能性、不完全性定理

計算量理論

チューリングマシン、計算量、NP完全、近似アルゴリズム

論文構成法

英語の論文執筆法

情報科学演習III

3つの研究室に1カ月ずつ仮配属

情報科学特別演習

卒業研究論文(英文)を提出

連続系アルゴリズム浮動小数表現、常微分方程式の解法、数値積分、行列アルゴリズム、数値的安定性の理論

言語処理系論

言語処理系構築の理論と技術、構文解析、最適化

知能システム論

計算アルゴリズム論

計算モデル論

統計解析法

情報社会情報倫理

情報と職業情報科教育 I 情報科教育 II 総合演習

生体数理モデル論

ユーザーインターフェイス 知識処理論

情報科学とバイオインフォマティクス

コンピュータビジョン

計算機言語論

分散・並列システム論

人工知能の基本技法、発見的探索、知識表現と非単調論理、機械学習・言語理解

コンピュータグラフィックス論3次元コンピュータグラフィックス基本技術、幾何モデル、曲面表現、隠面消去、陰影表示

情報科学の基本原理と応用分野における基礎能力を習得

実験を通して、ソフトウェアおよびプロセッサの構築法を体得する

最先端研究への入門

研究の方向付け

研究室配属

卒業研究

情報科学基礎実験

計算機システム演習、プログラミング(C、Scheme)、アルゴリズム実装(ソート、ハッシュ、探索など)

プロセッサ・コンパイラ実験FPGAを使用したCPUの設計・製作

コンパイラの設計・製作

情報科学演習II計算量理論、

連続系アルゴリズム(数値計算)の問題演習

カリキュラムと学習のながれ

3年冬学期

3年夏学期

2年冬学期

教職用選択科目

講義の内容や科目選択の手引などは、情報科学科のホームページもあわせて参照してください。

http://www.is.s.u-tokyo.ac.jp/

 世の中には、まったく異なる実態でも、同じ原理によって支配・制御されている現象が数多くあります。 インターネットは、コンピュータやルータの接続が連鎖して、世界中のコンピュータをつないでいます。細胞中の遺伝子も、ある遺伝子が活発になると別の遺伝子が活発になったり逆に休眠したり、という関係で「接続」が連鎖し、「遺伝子ネットワーク」が構成されます。またインターネット上のウェブページも、リンクの連鎖によりネットワークを形作っています。

 このようなネットワークの構造を理解・制御するために、数学のグラフ理論が役立ちますが、実際に世界中のウェブページのリンク関係を計算するときはさらに、上手な処理の仕方、賢いアルゴリズム、高速な並列処理、大容量のデータベースなど、情報科学のさまざまな理論や技術が活用されています。そして同じ理論や技術が、遺伝子ネットワーク処理にも用いられます。

 ネットワークはひとつの例にすぎません。情報科学は、知から計算までの広がりを持った事象を、情報という切り口で理解し、情報として処理することの原理から方法論までを扱います。その対象は、自然界に実在する情報、情報社会を実現する情報システムから、自然現象を情報現象として再現するシミュレーションまで広がっています。世の中の多くの自然現象は、単純な数式で理解することはできません。情報構造に関する理論や技術は、さまざまな分野の理解を進展させることが可能です。理学部情報科学科では、情報科学の原理を背景に、さまざまな分野で活躍する人を育てることを目標にしています。

ASIC、論理回路設計、同期、順序回路、組合せ回路

研究入門的な選択科目

Page 4: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

 理学部のココロとして、「ものごとを根

源からとらえる」ということがあります。ま

たその結果、それまでにない、まだ世の中

に普及していない題材を扱うこともあるの

で、ものをイチから作れる力が大切になっ

てきます。

 情報科学科では、コンピュータ分野の先

端的な研究を手がけていますが、その前提

となるコンピュータの原理や理論的な背景

を知り、ものごとを抽象化してとらえる力、ま

た何もないところからモノを作れるだけの

技術力を付けることを重視しています。

 土台の部分から勉強することは、一見回

り道のように思えるかもしれません。けれど

も、卒業後にどの分野に進んだとしても、こ

の基礎体力が必ず役立つはずです(情報科

学科の先輩たち→P.18)。

 なんらかのプログラミング経験から情報

科学に興味を持って進学する方もあります

が、3分の1程度は情報科学科で初めてプ

ログラミングを学んでいます。きちんと指導

しますから安心してください。3年生の実験

では、自分で工夫して作ったものが動くと

いう、プログラミングの面白さを味わえます

(課題→P.8)。アルゴリズムを考えるのが好

きなら、すぐに解けこめるでしょう。自分で

情報科教育 Ⅰ

76

 教養学部第4学期に左の必修6科目(合計12単位)、ならびに選択科目から6単位以上を学修してください。ただし、これ以外の選択科目(理学部他学科あるいは他学部の第4学期専門科目)を学修している場合でも、所定の期日までに科目認定届を提出し、学科会議の承認を得られれば、選択科目として認められることがあります。

 また、4学年での情報科学特別演習の履修のためには、2学年4学期での必修科目12単位のうち10単位以上をあらかじめ取得しておくことが必要です。

時間割と進学に必要な履修科目 すこし長い

よく寄せられる情報科学科への問合せにお答えします。

F A Q

情報論理離散数学

オペレーティングシステム言語処理系論計算機構成論

…必修科目 …実験・演習(必修) …情報系選択科目 …選択科目●3年夏学期

授業の時間割

進学に必要な履修科目(2012年度進学生)

システムプログラミング実験関数・論理型プログラミング実験

ハードウェア実験情報科学演習 I

10:30~12:00 13:00~14:30 14:50~16:20 16:40~18:108:40~10:10

10:30~12:00 13:00~14:30 14:50~16:20 16:40~18:108:40~10:10

10:30~12:00 13:00~14:30 14:50~16:20 16:40~18:108:40~10:10

10:30~12:00 13:00~14:30 14:50~16:20 16:40~18:108:40~10:10

月火水木金

情報科教育 II

言語モデル論計算量理論

コンピュータネットワーク知能システム論情報科学演習II

●3年冬学期

●必修科目 ●選択科目

連続系アルゴリズムプロセッサ・コンパイラ実験

プロセッサ・コンパイラ実験

プロセッサ・コンパイラ実験月火水木金

知識処理論分散・並列システム論/生体数理モデル論

コンピュータグラフィクス論計算アルゴリズム論

計算機言語論

情報社会及び情報倫理コンピュータビジョン/ユーザーインターフェイス

●4年夏学期

月火水木金

100011000210003100061000710008

情報科学とバイオインフォマティクス

計算モデル論

統計解析法

●4年冬学期

月火水木金

情報と職業論文構成法

科目番号222222

単位情報数学形式言語理論計算機システムハードウェア構成法アルゴリズムとデータ構造情報科学基礎実験

科目05001050070500305008050050500915007150096050160501

科目番号4242422222

単位代数と幾何代数と幾何演習集合と位相集合と位相演習複素解析学Ⅰ複素解析学Ⅰ演習物理数学Ⅰ電磁気学Ⅰ生物情報学基礎論Ⅰ生物情報学基礎論Ⅱ

科目

工学部の情報系の学科との違いは何ですか?

数学と情報科学の関連性について教えてください

プログラミング経験がないと進学できないでしょうか?

考えたり作ったりするのが好きでないと、苦

労するかもしれません。

 たとえば物理の実験では、X線や電気、

レーザーなどの特性を体感的につかめるよ

うに課題が出され、検証結果を提出したり

します。情報科学科では、3年生の2つの実

験を通じて、コンピュータの原理を奥底か

ら理解します。

 夏学期の『システムプログラミング実験』

は、馴染みのあるソフトウェアを自分で作っ

てみるもので、課題に対する解法を考えて

設計・プログラミングします(課題→P.8)。

 冬学期の『プロセッサ・コンパイラ実験』

は、与えられたコンピュータグラフィックス

のプログラムが動作するように、CPU、コン

パイラ、ツールを設計・開発するもの。どの

ようなCPUやソフトウェアを作るかを考える

ことから始まります(CPU実験→P.10)。

 所定の結果になることを追実験するので

はなく、問題の設定・設計を自分で考えるク

リエイティブな要素があり、実験結果が十

人十色になるのが面白いところです。実験

から、思わぬ発展に結びつくこともあります。

 情報科学科は、結果と使う時間の配分

を自分でデザインする、自由な雰囲気の学

科です。1限の時間を課題や自分の勉強に

使う人もいますし、前日遅くまで続けた実験

作業の休養に充てる人もいます。また、選

択する分野にもよりますが、4年生に進んで

からの研究題材も自由です。学科内では、

個人が多様性のある活動をしつつも、ワー

クスペースなどでよく協調している光景が

見られます。少人数教育の学科なので、こ

のような運営が可能になっています。

 1限の授業がなくて驚かれる方もいます

が、決して「ゆるい」わけではありません。

 コンピュータは数学や論理学と密接な

つながりをもって発展してきました。情報科

学科では、情報論理、コンピュータのさまざ

まな部分で応用されている離散的な理論

分野、計算量理論に力をいれています(モ

デル化と理論とコンピュータ→P.12)。

 地図の塗り分け問題がレジスタ(CPU内

にある数値を格納するための回路)割り当

てやプリント基板の配線検査時間の短縮

に使われていることをご存じの方もあるで

しょう。グラフを考えれば、地図の問題がレ

ジスタやほかのいろいろな問題に結びつい

て解けるのが面白いところです。

 また、ものごとにどのような複雑性があ

り、どういう問題に帰着するかは、モノづく

りに限らず直感的に知っていないといけな

い知識ですが、これらは計算量理論で身に

付けることができます。

情報科学科の「実験」とは何ですか?

1限の授業がないのでビックリしました

Page 5: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

理 論

198

タってこんなふうにできていたんだ!1111の11ソフトこのソフトればわかる、11 日ごろ使っているコンピュータシステムは、いったいどのような仕組みで動いている

のでしょうか。情報科学科では、ハードウェアのような基盤層からアプリケーションのような上位層まで、授業で理論や動作原理、設計思想を学び、実験で実際に作ってみることにより、コンピュータシステムの全体像を深く理解できるようになっています。ここでは、実験科目とそこで作成するプログラムの一部を紹介します。1

 「5色でどんな地図も隣接地域を異なる

色で塗り分けられることを証明せよ」理論

分野では、このような問題に対する証明を

考えて黒板で発表する演習があります(な

お、4色定理という有名な定理があり、地

図は4色でも塗り分け可能です)。

 問題は、基礎的なものから発展的なも

のまで。そしてパズル的な要素もありま

す。発表では、教員やクラスメートからツッ

コミを受けることも。油断は禁物です!

 情報科学科の学生にはノートPCが貸

与され、そのPCを使用して実験のプログ

するプログラムや、機械学習のアルゴリズ

ムを実装します。人が無意識のうちにして

いる言葉の解釈も、コンピュータに採り入

れるのは非常に難しく、人間の思考につい

て、改めて考えることになります。

 ルービックキューブを解いたり、オセロ

の対戦をするようなゲームプログラムも作

成します。オセロのプログラムでは、プログ

ラムどうしの白熱した対戦で、クラスが盛

り上がります。

 ユーザーインターフェイスの授業では、

コンピュータと人間の間のよりスマートな

やりとりの方法を考えます。授業では、「お

題」のシステムの操作方法をおもいおもい

に考えて実装します。

 2010年のお題はアームロボットを操作

するためのユーザーインターフェイス。で

きあがったものは人それぞれで、クラス

メートの個性的なアイデアを見るのも楽

しみです。

 このほか、コンピュータグラフィックスの

授業では3Dモデルの描画プログラムを、

またコンピュータビジョンの授業では複数

位置からの画像を元に複眼視立体像を生

成したりします。

ラムなどを作成します。課題は、大学内に

限らず、好きな場所で。

 学科内には学生用に24時間解放の

ワークスペースが用意され、研究室配属

前の学生も自分の席を持つことができま

す。このワークスペースの存在意義は大き

く、課題の情報交換をしたり、共同作業を

進めたりする場になっています。

 プログラムを作成していると、似たよう

な問題点で行き詰ることが多いため、情報

交換の効果は絶大です。ときには、TAや先

輩が様子を見に来て、指導してくれること

もあります。比較的自由な雰囲気のスペー

スなので、課題を片付けてボードゲームを

楽しむ光景も見られます。

OSの間を仲介するプログラムです。Unix

系OSでは毎日お世話になっているシェル

ですが、一見単純そうなのに、実際に作っ

てみるといろいろな問題に直面します。そ

れらの解決を通して、OSやシェルの仕組

みに詳しくなります。

 HTTPサーバーの作成では、チェックを

怠って、公開するつもりがないファイルを

公開してしまう人も。ご用心を。

 CPUが備えている命令(機械語)は人

間には読みにくく、機能もごく単純です。そ

こで通常は、より読みやすくて機能が豊富

な言語でプログラムを書き、インタープリ

タやコンパイラと呼ばれる翻訳プログラム

でCPUの命令に変換します。

 演習では、LispやMLという関数型のプ

ログラミング言語を用いて実際にイン

タープリタやコンパイラを作成し、その仕

組みを勉強します。MLでのコンパイラ作

成はCPU実験の一部になっており、授業

で学ぶ各種の最適化手法を採り入れて、

翻訳後のプログラムが高速に動作するよ

う改良していきます。改良結果の手ごたえ

が楽しく、夢中になります。

 物理シミュレーションなどの数値計算

は、現代の実験手段として物理学などの

科学を支えています。数学的には解けな

かった微分方程式も、コンピュータを使っ

て値の計算を繰り返すと解けるのです。演

習では、そのような問題を効率よく計算す

るアルゴリズムを学び、実装していきます。

 複数の計算法を実装してみると、手法

の優劣で生じる誤差の違いなどを実感で

きるでしょう。さらに性能を追求して、並

列・分散処理にも挑戦します。並列化手法

の工夫で性能が大きく向上していくのは、

非常に刺激的です。

 あたかも人間のように適切に応答する

システムとして、日本語の文章を構文解析

 「ハードウェア実験」や「CPU実験」で

は、CPUを始めとするハードウェアを自分

の手で設計し、その仕組みを学びます。電

子回路に触れ、加算器や簡単なCPUを製

作し、最終的にはチームでCPUを設計・製

作して高速化します(CPU実験→P.10)。

 「システムプログラミング実験」では、開

発者に便宜が図られているライブラリでは

なく、システムコールと呼ばれるOSの機

能を直接使用して、シェルやW e b

(HTTP)サーバーを作成し、さらにOSの

カーネルに手を加えます。

 シェルというのは、ユーザーのコマンド

入力を受け付け、OSにリクエストを渡して

実際にコマンドを実行させる、ユーザーと

ハードウェア

離散数学・計算量理論・情報論理

OS・基礎ソフトウェアコンパイラとインタープリタ

1 1 プログラミング実験と課題

(2012年4月 秋葉拓哉・岩田陽一)

数値計算

ユーザーインターフェイス

知能システム 情報交換の場となっているワークスペース

OS

実験と課題でコンピュータをまるごと作って理解する

コンピュータビジョン

3DCG

シェル

インタープリタ

ゲームプログラム

コトバの構文解析

ユーザーインターフェイス

Webサーバー

プチ物理シミュレーション

コンパイラ

ハードウェア

複数位置からの画像を元に、複眼立体視像を合成 アームロボット操作のユーザーインターフェイス

Page 6: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

22り、出力される信号をオシロスコープで調

べることもあります。

 ついに、課題プログラムが動き、CGが

描画される日がやってきます。でもこれで

おしまいではありません。スピードコンテ

ストに向けたここからの高速化が、CPU実

験の最も楽しいところです。性能の記録更

新を狙って、何度か設計しなおし、シンプ

ルで周波数が高いもの、独特な命令や複

雑な機構を採用したものと、既存の枠にと

らわれないアーキテクチャを工夫します。

過去の例では、パイプライン、レジスタフォ

ワーディング、VLIW、スーパースカラ、

キャッシュ、分岐予測、スクラッチパッドメ

モリなどが導入されました(興味のある人

はぜひWebなどで調べてみてください)。

を作り、ツールもCPUと並行して開発しま

す。ツールが果たす役割は大きく、コンパイ

ラが生成した命令列を検証したり、実行時

間を予測してアーキテクチャを改良するた

めにも使用します。命令の取捨選択のため

に命令の使用頻度を調べたり、パラメータ

を変更して実行したり、といったことも行い

ます。様々なパラメータでデータを一気に

取得するようなときには、情報科学科のク

ラスタシステムなどを活用します。

 ひととおり出来上がると、実際にFPGA

に回路のデータを送り込んでテストしま

す。一見うまく動いているようでも、不具合

や仕様の解釈違いはあるもので、ここから

完成までは思いのほか長くかかります。

ハードウェアに不具合がある可能性もあ

課題プログラムを徹底的に解析してコン

パイラを最適化したりもします。つくったコ

ンピュータがどんどん速くなっていくのは、

とても気分の良いものです。

 発表会には、院生なども大勢訪れます。

それぞれのチームが半年もかけた自分た

ちのアーキテクチャやコンパイラを熱く語

り、無事に完成したチームは実際にCPU

を実行させてデモを行います。

 年々更新されている記録には、先輩から

継承されたCPU実験のノウハウがかたち

となって表れています。数年前の「夢の20

秒」というフレーズも、いまではすっかり現

実のもの。そして、発表会が終わっても、な

ぜか挑戦が続きます。2008年には発表後

の改良を経て10秒を切った人も現れまし

た。そこまで熱くなれるのがCPU実験なの

です。

ります。実は、技術的な知識だけでなく、半

年にわたるプロジェクトワークもたいへん

貴重な経験になります。

 回路が大規模になった現在、論理回路

の実装は、回路図上でゲートを配線する代

わり、HDL(ハードウェア記述言語)を用い

るのが主流です。HDLはプログラミング言

語に似ていて、回路の動作を詳細に記述で

きます。CADというソフトが、HDLを元に

FPGA内に実際の回路を自動配置・配線し

ますが、必ずしも最適とはなりません。思い

通りの回路を得られるように、CADの動作

を見越してHDLを書くのも腕の見せどこ

ろ。手動で配置・配線する猛者も現れます。

設計した論理回路は、HDLシミュレータで

表示される波形図で検証します。

 課題プログラムはMLというプログラミン

グ言語で書かれているので、そのコンパイラ

が必要です。最近はMLで実装されたきれ

いでわかりやすいMLコンパイラがあるの

で、これを改造してまず動作させ、より効率

の良い命令列を生成するように改良するこ

とが多いようです。既存の最適化手法も採

り入れますが、やはり、自分たちのCPUに合

わせた独自の方法を試行錯誤することにな

ります。三角関数のような一般的な関数も、

コンパイラとともに用意します。

 CPUが動作しだすまで、ソフトウェア係

は何もしないのでしょうか? いいえ。最初

にCPUと同じように動作するシミュレータ

 実験は、まずCPUの命令セット/アーキ

テクチャの設計から始め、CPU、コンパイ

ラ、アセンブラやシミュレータを分担して実

装、というふうに進みます。

 この段階では、最初にCPUの命令セッ

ト̶̶CPUが備える命令群などのアーキ

テクチャを決めます。複雑な仕様にすると

完成させるのが難しくなるので、最初は既

存のCPUアーキテクチャを参考に、シンプ

ルな設計から始めることが多いようです。

CPUの実装のしやすさと、コンパイラの開

発のしやすさは、相容れない場合もありま

す。うまくそのバランスをとることがたいせ

つです。

 仕様が固まると、各自の興味・得意不得

意を考慮して分担を決め、開発にとりかか

1110

コンピュータってこんなふうにできていたんだ!

CPU実験コンピュータ自作

ほんとうの

3学年の冬学期になると、『プロセッサ・コンパイラ実験』̶ ̶通称「CPU実験」が始まり、4~6人の各チームに、FPGA基板と道具がいくつか渡されます。ミッションは「半年かけてできるだけ速いコンピュータを作れ」。それから翌年3月の発表会までのあいだに、課題のCGプログラムが動くよう、独自のCPUやコンパイラなどをイチから設計・製作します。ハードなものの、OB・OGの誰もが「楽しかった」と口を揃えるこの実験の様子を、紹介しましょう。

みんなでアーキテクトになるCPUを詳細に設計する

コンパイラを開発する

ツールいろいろ

テスト

完動からの長い旅

CPUにはFPGA(電気的な方法で内部のロジックを自由にデザインして書き換えられるLSI)を使用する。写真中央は、100万ゲート規模の回路を実装可能なFPGA。周りに、メモリ(SSRAM、SDRAM)、入出力端子(DVI、USB)、回路書込み用のケーブルなどが備えられ、FPGAに論理回路を入力してやると利用可能になる。外付けの拡張基板に、作業用コンピュータと通信するための入出力端子(RS232C)、電圧を変換するチップ、開発初期にFPGAの動作確認に使うLED、抵抗などを、ハンダ付けしていく。

CPUの実装に使用するFPGA基板

FPGA

SSRAM

2 プロセッサ・コンパイラ実験

FPGA

SSRAM

HDLシミュレータで出力信号をチェックし、回路を合成する。

シミュレーションなどの時間がかかる作業には、情報科学科のクラスタシステムを使用する。

拡張基板に、追加の素子やLEDをハンダ付け。製作者の好みがでるところ。

FPGAに回路のデータを送り込んでテストする。 課題プログラムは例年レイトレーシングによるCG。TRONに登場する車が表示される。

課題プログラムの実行時間の推移。2006年に夢の20秒突破を果たした。

題プログラムは例年レイトレーシンググシングにによるCG

SDRAM

0秒

2003年 34.550秒

2004年 39.056秒

2005年 25.927秒

2006年 18.797秒

2007年 17.085秒

10秒 20秒 30秒 40秒

(2009年3月 谷田直輝)

Page 7: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

「世界」をとらえる

「世界」をとらえる

 また、量子力学や量子現象のなかに、情

報のたたみこみや並列計算の側面を見出

すことができます。この量子現象をうまく利

用して、いままでできなかったような計算を

可能にしようというのが、量子計算機です。

 いきなり未来の計算機の話をしました

が、計算機を大量にかき集めて並列計算

をするという現在の応用シーンでも、モデ

ル化が活きています。並列計算では、いろ

いろな仕事をたくさんの計算機に割り当て

て計算させますが、そもそも仕事をどの計

算機に割り当てるかが難問です。候補とな

る仕事の割り振り方はあっという間に天文

学的数字になってしまうので、どの方法が

良いかを真面目に比較すればたいへんな

時間がかかります。計算を速くするために

並列計算をするのに、仕事の割り振りに時

間がかかっていては意味がありません。

 そこで本質は壊さずに、数学の世界で容

易に扱えるようモデル化することがポイント

になってきます。モデル化を経て検証してお

けば、ここまではうまくいくと保証付きです。

 いったん抽象化してできた記号の世界も

また、計算機で扱ったとたんに現実世界と

「構文論」です。

 それとは逆に、形式化されたもの̶̶記

号や規則によって操作されたあとの計算結

果が現実世界でどのような意味を持つか

が「意味論」です。

 授業では、「ものごと」を論理式というか

たちでとらえる一方、論理式がどのような意

味を持っているかを意味論としてとらえ、両

者の関係がどうなっているかを学びます。

 ものごとをどうとらえるかは、元来、系統

的に勉強するのが難しいことです。けれど

も、記号の世界を扱い、その意味を考えるこ

とを通して、ものごとを抽象化してとらえる

訓練を積むことができます。

 60年前にいまの計算機の原型となるプ

ログラム内蔵式計算機ができたとき、設計

者に「モデル」という明確な認識はなく、形

式化も行われていませんでした。しかし、そ

のときにできた計算機には、「計算」とは何

かということを新しい視点でとらえたモデル

が内在していました。メモリに格納された

「プログラム」に従って演算器で「計算」し、

結果をメモリに格納するというモデル(手

法)は、歯車機械で加減乗算をしていたそ

れまでの手回し計算機から、格段に飛躍し

たものだったのです。

 プログラム内蔵方式の源は、計算機が生

まれるしばらく前にチューリングという数学

者が考えた、チューリング機械という仮想

機械に遡ることができます。ほかにもこれま

で、計算をするためのいろいろなモデルが

考えられてきました。たとえば、関数の定義

と実行を抽象化したラムダ計算というもの

をご存じの方もあるでしょう。

 計算のモデル化を考えていくと、計算機

の姿がいまある計算機だけに限らないこと

に気付きます。

 計算や情報の視点から自然をとらえる

と、自然現象のなかでは、情報がどんどん流

れて処理されたり蓄えられたりしています。

 実は生物の細胞も、外部からの多様な刺

激に反応していろいろな情報処理を行って

います。細胞の集まりである生物は、ひとつの

超並列計算システムと見ることができます。

 情報科学と生命科学が融合して生まれ

たバイオインフォマティクスやシステム生物

学の分野では、細胞内の反応をモデル化し

て予想する研究が盛んになっています。た

とえば、iPS細胞はどんな細胞にも分化でき

るもので、適切な薬をふりかけて神経にし

たり肝臓にしたりすることができます。そこ

で、細胞中の分化の機構をモデル化してシ

ミュレーションを行い、最終的には、細胞の

分化を自由に制御することが研究の目標と

なっています。

 実証的な技術とともにコンピュータ(計算

機)の原理や理論に力を入れている情報科

学科では、「情報論理」「離散数学」「計算量

理論」「形式言語理論」の理論の授業があ

ります。理論というと、カチカチで難しい印象

を受けるかもしれませんが、実はいろいろな

領域と結びつく広がりがあります。ここでは、

その面白さを紹介しましょう。

 通常、学部の3年生で論理学を勉強する

機会はなかなかありませんが、情報科学科

では3年生に「情報論理」で論理学の基礎

を学びます。そのねらいは「ものごと」をとら

える̶̶モデル化、抽象化を学ぶことです。

 計算機が扱えるのは数や記号だけ。計

算機が本質的にしていることは記号に対

する規則的な操作です。このため、論理学

が情報科学の素養としてたいせつになっ

てきます。

 論理学には、構文的な側面と意味的な

側面とがあります。

 まず、「ものごと」を計算機で扱うために

は、「ものごと」をなんらかの記号に対する

操作として表現することになります。これが

「形式化」で、情報論理学の授業では「も

のごと」を記号や論理式というかたちでと

らえます(→コラム「すべての人が誰かを

愛している」)。これが論理学でいう、論理

式の構文を定めて推論の規則を与える

12

たいせつたいせつなのは、なのは、モノの考え方、見方、とらえる力モノの考え方、見方、とらえる力

自然は計算している自然は計算している̶̶いまあるものばかりが̶̶いまあるものばかりが計算機ではない計算機ではない

13

計算をモデル化する計算をモデル化する̶̶計算機の源に遡る̶̶計算機の源に遡る

100万台の計算機を使って100万台の計算機を使って並列計算をする並列計算をする

めぐる抽象化̶̶記号化しためぐる抽象化̶̶記号化した世界が現実世界になって、世界が現実世界になって、再び抽象化の対象になる再び抽象化の対象になる

ばらばらの世界を取り扱う̶̶計算機ができておもしろくなった離散数学

理論家は月に向かって刀を研ぐのか?

すべての人が誰かを愛している Column 1

 標題の文を論理式で表すと、次のようになります。

  x( y Loves(x,y)) (任意の人xに対して、ある人yが存在し、xがyを愛している)

 でも、ことによったら次のような意味かもしれません。

  y( x Loves(x,y)) (ある人yが存在し、任意の人xに対して、x がyを愛している)

 自然言語はあいまいです。普通に考えると前者になりそうですが、計算機は融通がきかないので、この2つをきちんと区別してあげる必要があります。これが形式化です。 ものごとが、いったん論理式で表されると、さまざまな推論規則を適応してあげることができるようになります。

Page 8: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

「世界」をとらえる

なり、解析とモデル化の対象になります。暗

号をモデル化したとき、暗号に対する攻撃

者をどのようにモデル化するかということ

も、そのひとつです。

 暗号は、計算時間を無限に使えば必ず

破れます。攻撃者は懸命に計算機を回して

暗号を破ろうとするので、現実世界の暗号

に対する攻撃者をモデル化するときには、

計算時間を限定し、暗号の強さを評価しま

す。また、あてずっぽうでパスワードを当て

てしまうこともありますから、その確率がど

れくらいかを保証しなくてはいけません。そ

こでモデル化に、これまで扱ってこなかった

計算量と確率の理論も取り込んでいくこと

になります。モデル化という観点から見る

と、暗号は進歩している、とても難しくて魅

力的な分野のひとつです。最近は、人が

ゲーム理論的に効率よく動くときには安全、

などという理論も出てきました。

 世の中が変化すると、いままでのモデル

化の範疇ではできないことが現れます。そ

れを埋めるようにモデルを拡張していける

ところが理論家の醍醐味です。

 「離散数学」は、「離散」つまり「ばらばら

なもの」を対象とし、その関係や組合せな

ど、問題が本質的に持つ構造をとらえるた

めの数学です。離散数学は、計算機ができ

て実際に計算が可能になり、アルゴリズムが

重要になって、広がりがでてきた分野です。

 AさんBさんとCさんの3人がいるとき、A

さんとBさんは仲が良いけど、Cさんが2人を

嫌いだったら、Cさんは孤立しています。そう

いう関係性を表すのがグラフ理論です。

 これに対して、いまの時間はここ、何かが

来るか来ないかで次の時間にはそこかあそ

こ、その次にはさらに……と状態の遷移を

表現するのがオートマトンです(これは「形

式言語理論」で勉強します)。

 現実の世界に目を向けると、Webページ

のリンクはグラフ構造を持っていますし、ネッ

トワーク通信の制御は状態遷移図で表せま

す。このような実世界のさまざまな現象や関

係を、離散数学で扱うことができます。

 さて、計算機で何かしようとしたとき、デー

タにいい構造があるということは、いい方式

(アルゴリズム)があるということ。いい構造

がないと計算は難しく、実用性がないほど時

間がかかります。どの程度難しいかをランク

付けし、どうしようもないものはスジが悪いと

レッテルを貼るのが計算量理論です。

 「計算量理論」の授業では、チューリング

機械という計算モデルに始まって、最先端

の計算量理論までを解説します。

 情報科学科/コンピュータ科学専攻で

は、100万台の計算機を使って並列計算を

14

たいせつなのは、モノの考え方、見方、とらえる力

自然は計算している̶̶いまあるものばかりが計算機ではない

する、あるいは暗号システムを作るというよ

うな、いまの計算機を題材にした問題を解

くとともに、生物分子計算、量子計算といっ

た次世代の計算機を題材にしたモデル化

を手がけています。

 しかし、モデル化を中心とした理論に対

する風当りは、ときとして強いことがありま

す。たとえば、形式手法の研究者に対して

「月に向かって刀を研ぐ」という悪口があり

ます。結果を急いで手に入れたい実践家に

とって、モデル化の手法の開発から始める

ことは、結果からとても遠いところにいるよう

に思えるのかもしれません。

 しかし、実践的な研究、つまりいまあるも

のをしゃぶりつくすような手法の開発の多く

は、10年もたてば廃れてしまうことでしょう。

これに対して、理論から出た結論はすぐに

使われなくても、50年後、100年後まで残っ

ていきます。

 言い換えると、理論はその枠組みのなかで

は、決して廃れることなく、永遠に生き続け、

100年後に突然役に立ったりするわけです。

ですから、将来、月を切る刀が本当にできる

かもしれません。

 もちろん、いまの世界と接点を持ち、すぐ

にも役に立つような理論もありますが、理

論の研究の最前線では、やっぱり新しい

ことをやっていくという、開拓地にいる感じ

があります。そのようななかで、50年、100

年先のことをやれるのは、まさに理論屋の

冥利でしょう。

○「計算量理論」のノートから

○確率的チューリング機械世の中には、計算機で簡単に解ける問題と、どんな

に工夫しても時間がかかって実質手に負えない問

題があります。計算量理論では、どんな計算モデル

ならどれくらいの時間・メモリで解けるかによって問

題をクラス分けし、問題の難しさを考えます。

計算モデルのなかでももっとも基本的なものは、

ヘッダが無限に長いテープ(パソコンのメモリにあ

たる)を読み書きしながら右へ左へ動くことによっ

て計算をするチューリング機械です。通常のテープ

のほかに、赤で書いてあるテープを読み込むことを

許されているものを、確率的チューリング機械と呼

びます。

○ベン図ベン図は、実際に問題をクラス分けしたときの、各

クラスの包含関係を表したもの。クラス分けはたと

えば、「普通のチューリング機械を使って、入力の

長さに対して多項式時間で解ける問題はPという

クラスに属す」というように行います。

計算をモデル化する̶̶計算機の源に遡る

100万台の計算機を使って並列計算をする

めぐる抽象化̶̶記号化した世界が現実世界になって、再び抽象化の対象になる

ばらばらの世界を取り扱うばらばらの世界を取り扱う̶̶計算機ができて̶̶計算機ができておもしろくなった離散数学おもしろくなった離散数学

理論家は月に向かって理論家は月に向かって刀を研ぐのか?刀を研ぐのか?

Column 2情報を失う計算はエネルギーを生じる 1970年代は、「計算の物理」が盛んに研究されていました。その中心には、「情報を失う計算はエントロピー的にエネルギーを発生する」というランダウアーの原理があります。たとえば、回路のAND素子は2つの入力に対して出力が1つなので、そこで1ビットの情報が失われます。この失われた情報分のエネルギーが消費されてしまうので「計算にはエネルギーが必要になる」というのです。 そこで、現在では量子計算で有名なベネットは、情報を失わない可逆計算ならエネルギーを使わずにできるのではないかと考え、DNAの転写反応をモデルにした仮想的な分子機械を考えました。平衡状態で可逆的に動けば、ほとんどゼロのエネルギーで計算できるというものです。 その後、エーデルマンが実際にDNAで計算可能なことを示し、並列計算の観点とともに消費エネルギーも注目を集め、生物分子計算の端緒となりました。

15

Page 9: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

16 17

安定したファイルに見せかけ、透過的に移

動させるのは、とほうもないことである。チャ

レンジの甲斐がある難問だ。

 数値計算は、並列計算でもっとも成功し

てきた分野だ。世の中の現象の多くは並列

に推移するので、それらを並列計算で扱う

のは自然なことである。しかし応用の立場で

は、実際に速くなければ意味がない。

 たとえば気象シミュレーションでは、現在

のある状態と過去の観測情報から、3日先、

1年先を予測する。プログラムは時間に沿っ

て逐次に現象を計算する必要があるが、時

間ステップで進む物理現象を時間方向に

並列化して計算することは、現在のところう

まく行っていない。

 一方探索問題は、違う作戦で複数の経

路を並列にたどることによって、高速化の

望みがある。自然言語理解の分野でも、何

万とある単語の組み合わせを評価するため

に、並列化が効果を上げている。

 並列計算を実用的なものにするカギは、

いかに並列性のあるアルゴリズムを編み出

すか。そこはまさに、アルゴリズム分野の腕

のふるいどころだ。そのうえで、並列計算の

妨げとなるプログラム間のデータのやりとり

を、量、頻度ともに絞っていく。

 最近よく使用されているGPU(汎用に使

用できる画像処理プロセッサ)や、SIMD

(1回の命令で複数データを同時処理でき

るプロセッサの高度な機構)は、逐次処理

の呪縛から一歩踏み出したハードウェアだ

といえる。逐次処理をあっさり捨ててアルゴ

リズムをがんばると、これまでできなかった

ことに手が届くようになるだろう。

 未来への夢からいまある技術まで、思い思

いの並列話。平木 敬教授(ハード屋さん)、

石川 裕教授(OS屋さん)、須田 礼仁教授(ア

ルゴリズム屋さん)に語っていただいた。

 ところが実は、ハードウェアの中身は並列

に動作している。プロセッサ内では数億のト

ランジスタが独立に動き、クロックですべて

同期しているように見せかけられている。メ

モリには複数コアが勝手に読み書きを要求

するが、データの整合性は保たれる。このよ

うな多数の技術マジックで、ハードウェアは

やっと逐次処理が可能な1つのシステムに

見せかけられているのだ。ハード屋はまさ

に、このことのために額に汗している。

 さらに、数万のプロセッサをつなぎあわせ

た場合はどうだろうか。隣のプロセッサに

データが届くまでの時間は1ナノセカンド、

いちばん遠いプロセッサは、「京」スパコン

の場合で10マイクロセカンド。両者には1万

倍の時間差がある。近くは速く、遠くは遅

い。その時間もあいまいだ。

 それが自然の姿なら、遠くを操作するとき

は1万倍の時間、近くを操作するときは1万

分の1でも動くというアルゴリズムがあるべ

きではないか。その自然形をどう使うかがわ

からないから、現在はプログラムの因果関

係を保たないと計算ができない。

 ハードウェアは並列動作が「天然」。そし

て、自然の現象も世の中の現象も、たいてい

は並列に起きて、並列に推移していく。それ

をどうやって並列に解くかが、問われている

のではないだろうか。

 とはいえ、プログラムの動作は逐次処理

が基本。並列計算のプログラム開発はやっ

ぱり難しい。プロセッサとネットワークの性

能差は大きいので、プログラム間の通信に

時間がかかってしまうつくりでは、並列化の

意味がない。しかしそれでも、性能を求める

ためには並列化せざるを得ない。

 基盤ソフトウェアの立場で重視するの

は、結局のところデータの移動――プログラ

ム間の通信とファイルシステムをどうするか

だ。計算にはデータが必要だからだ。

 ファイルシステムについていえば、数値計

算は、テラバイト、ペタバイト級のファイルを

はき出す。一方、最近ビッグデータといわれ

る分野では、Webやセンサーから集めた何

万、何億もの小さなファイルを扱う。それをい

かにして格納し、プロセッサに供給するか。

 コンピュータは、速さも容量も大きく異な

る部品をつなぎあわせてできている。何万

ものディスクの中では、円盤が非同期に回

転し、データがばらばらに記録され、それは

次の瞬間に故障で消えるかもしれない。そ

の不均衡と不安定の上で、データを1つの

 この数年、コンピュータのプロセッサチップ

は、計算コアを複数内包するようになった。ク

ロック周波数を上げてプロセッサを高速化す

るのは難しくなったので、複数のコアを集め

てトータルで性能をだそうとしているのだ。

 複数コアの性能を引き出すためには、プ

ログラムをそれぞれのコアで動作させ、うま

く連携させていくことになる。そしてその考

え方は、たくさんのコンピュータをネット

ワークでつなぎあわせた分散・並列システ

ムへとつながっていく。

 このような並列計算の概念は、古くから

あったが、プログラムの並列化は一部の分

野に限られていた。面倒な並列処理を書か

なくても、プロセッサの性能成長が速かっ

たからだ。とはいえ、クロック周波数は伸び

悩み、いまはコンピュータをたくさん集める

ほか、妙案はないように見える。

 そこで、立ち位置の異なる3人の研究者

に尋ねた。「並列」って、どう?

 現在のコンピュータの根底にある動作原

理は、チューリングマシンである。並んでい

る命令列を順に計算していくというモデル

は、まさに逐次処理そのものだ。

ハード屋さんの言い分:ハード屋さんの言い分:本当は並列に動いている計算機本当は並列に動いている計算機

実際に動かすOS屋さんの言い分:実際に動かすOS屋さんの言い分:データの移動、それが問題だデータの移動、それが問題だ

アルゴリズム屋さんの言い分:アルゴリズム屋さんの言い分:速ければすべてよし速ければすべてよし

逐次処理と並列処理をめぐるハード屋の気持ち、ソフト屋の気持ち逐次処理と並列処理をめぐるハード屋の気持ち、ソフト屋の気持ち

されど並列計算されど並列計算

20世紀前半に活躍した英国の数学・気象学者、ルイス・フライ・リチャードソンは、いかにして数値計算による気象予測を実現できるかを考えていた。著書“Weather Prediction by Numerical Process”のなかでは、「予測工房」の構想を著している。巨大な劇場に6万4000人の計算手を集め、地球の表面を細分化して気象の変化を手分けして計算するというものだ。1922年、まだコンピュータが登場するまでにしばらく待たねばならないころのことである。この構想は実際には実現しなかったが、その後のコンピュータを使った数値計算による天気予測の原型といえる。(イラストは、1984年9月22日発行のスウェーデンのDagens Nyheter紙に掲載された)

「リチャードソンの夢」:Illustrated by Alf Lannerbäck

Page 10: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

A D A Y O F I S e r s

理学理学部7号館の一日号館の一日理学部7号館の一日

 3年生の冬学期になると『情報科学実験II』(CPU実験→P.10)が始まる。この授業は、5~6人の班でCPUからコンパイラやツールまで設計・製作する。各人の担当作業を調整しながら、発表会までにより速いコンピュータ作りを競うので、チームワークが大事。 A君はもう1人と、CPUの開発と基板製作のハード周りを担当。「ツールはいつごろできそう?」「命令語を1つ追加したいのだけど」とミーティングを繰り返しながら製作を進めている。

携帯電話のアラームで目を覚ます。歯磨きをして2階の教室へ階段を駆け上がる。

A君の場の場合・3年冬学期学期

コンピュータの中核を作る……

CPU実験に没頭する1日

 4年生になると『情報科学科演習III』が始まる。演習では、3つの研究室に1カ月ずつ仮配属となり、その後の卒業研究の方向性を探りながら、研究課題に取り組む思考法・実践法をトレーニングする。理論の分野を志望しているBさんは、毎週、テーマに沿って自分で新しい解法を探り、その経過と成果にアドバイスをもらって、さらに思考を深めている。 吹奏楽のクラブに所属しているので、放課後週3日と土日は部活、残りの週2日はバイト。ハードだけれど充実している毎日だ。

Bさんの場んの場合・4年4年夏学期学期

論文を読んで考えて……

思考力を鍛えあげていく1日

10:10am

学部生のワークスペースで起床。

3:00am

2:00am

1:00am

0:00am

11:00pm

10:00pm

9:00pm

8:00pm

7:00pm

6:00pm

5:00pm

4:00pm

3:00pm

2:00pm

1:00pm

0:00pm

11:00am

10:00am

9:00am

8:00am

コンパイラ担当がバイトから戻る。弁当(+フライドチキン)を食べながらミーティング。生成プログラムの高速化とサイズ圧縮を要望した(そんなご無体な)。

7:00pm ローソン弁当で夕食。

10:15am

自転車を飛ばして家に到着。郵自転車を飛ばして家に到着。郵便物を確認してシャワーを浴便物を確認してシャワーを浴び、すぐにまた自転車で戻る。び、すぐにまた自転車で戻る。

自転車を飛ばして家に到着。郵便物を確認してシャワーを浴び、すぐにまた自転車で戻る。

11:45am

昼休みに自宅へ戻ってシャワー。

午後にもらったコメントを思い起こしながら、午後にもらったコメントを思い起こしながら、次の発表のことを考える。「あっ!」と思いつい次の発表のことを考える。「あっ!」と思いついたので、部室に着いてすぐ計算。たので、部室に着いてすぐ計算。

午後にもらったコメントを思い起こしながら、次の発表のことを考える。「あっ!」と思い付いたので、部室に着いてすぐ計算。

5:00pm

部活のため電車で駒場に移動。

仲間と話をしながら夕食(コンビニで買って仲間と話をしながら夕食(コンビニで買ってきたパスタ弁当とサラダ)。新しい解法をがきたパスタ弁当とサラダ)。新しい解法をがんばる。いくつかの文献に目を通していくうんばる。いくつかの文献に目を通していくうち、気になる論文を見つけた。ち、気になる論文を見つけた。

仲間と話をしながら夕食(コンビニで買ってきたパスタ弁当とサラダ)。新しい解法をがんばる。いくつかの文献に目を通していくうち、気になる論文を見つけた。

10:00pm

練習終了後、本郷に戻る。

キャンパス内に駐輪してあった自転車にキャンパス内に駐輪してあった自転車に乗って帰宅。勉強再開。乗って帰宅。勉強再開。キャンパス内に駐輪してあった自転車に乗って帰宅。勉強再開。

1:00am

帰宅する。

ハシゴをよじ登って、秘密の練習場でクラリネットを吹く。「情熱大陸」は最高に気分がいい。

11:00pm

リフレッシュにクラリネット練習。

見つけた論文(30ページもある! おまけに英語だ……)を読む。読み慣れない英語論文を必死に読んでいたら、いつの間にか机で眠ってた。

3:00am

論文と格闘。

6:00pm

吹奏楽の練習開始。

お風呂で解法のアイデアを思いついたので、早速計算してみる。こんなときは、紙に手計算。

8:30am

出かける用意をしながら計算。

3:00pm 実験の作業開始。

第二食堂の作りたて「竜田揚げ弁当」(350円)がお気に入り。

0:45pm 学内で昼食。

学校までは自転車で15分。計学校までは自転車で15分。計算に夢中になって、少し遅刻し算に夢中になって、少し遅刻してしまった。てしまった。

学校までは自転車で15分。計算に夢中になって、少し遅刻してしまった。

10:15am

選択科目の選択科目の『計算アルゴリズム論』の『計算アルゴリズム論』の講義。講義。

選択科目の『計算アルゴリズム論』の講義。

仮配属の研究室で4年生3人がそれぞれ発表。この1週間で読んだ論文と考えた解法を話し、教授と先輩からコメントをいただく。

1:00pm

『情報科学演習III』の発表。

お風呂でゆっくりしながら、昨夜に勉強したお風呂でゆっくりしながら、昨夜に勉強した「整数計画法」の問題を考える。整数計画法の「整数計画法」の問題を考える。整数計画法のLP緩和と近似について……離散構造と連続LP緩和と近似について……離散構造と連続構造をいきつもどりつ。構造をいきつもどりつ。

お風呂でゆっくりしながら、昨夜に勉強した「整数計画法」の問題を考える。整数計画法のLP緩和と近似について……離散構造と連続構造を行きつ戻りつ。

8:00am 起床後すぐに入浴。

この日はSRAMの信号のやりとりの説明この日はSRAMの信号のやりとりの説明があったあと解散。あとはワークスペースがあったあと解散。あとはワークスペースで各班がおもいおもいに作業を進める。で各班がおもいおもいに作業を進める。製作2号機に「TSUGUMI」と命名、命令製作2号機に「TSUGUMI」と命名、命令セットより熱い議論。セットより熱い議論。

この日はSRAMの信号のやりとりの説明があったあと解散。あとはワークスペースで各班がおもいおもいに作業を進める。製作2号機に「TSUGUMI」と命名、命令セットより熱い議論で決定。

1:00pm 『情報科学実験II』。 0:00

amみんなでローソンに買い出し。

最初の関門を越えたことを示すピンクの画面を見たあと、急に眠くなる。はっと気付くと、机の上に「動いたね!」のメモが。ぐっとくる。そのままワークスペースにステイ。椅子の上で睡眠(仮眠)。

3:00am

コンピュータ、夜間に成長中。

朝イチ(といっても2限)の理論の講義。だんだん目覚めてきた!!

0:15pm 研究室の机で昼食。

生協のサンドイッチを食べな生協のサンドイッチを食べながら、午後の発表資料を用意がら、午後の発表資料を用意する。朝の問題の続きを考えする。朝の問題の続きを考えながら、仕上げを急ぐ。ながら、仕上げを急ぐ。

生協のサンドイッチを食べながら、午後の発表資料を用意する。朝の問題の続きを考えながら、仕上げを急ぐ。

2:30pm アキバに買い出し。

1918

情報科学科の学生は自分たちのことを「ISer(アイエサー)」と呼びます。つまり「情報科学(Information Science)する者」。ISersはどんな情報科学漬けの日々を送っているのでしょうか。3年男子学生A君と4年女子学生Bさんのある1日を追ってみました。

必修の『言語モデル論』の講義。

シミュレーターを走らせている間に部品を買いに。シミュレーションの結果が気になるので、アニメショップはまたこんど。

動作を安定させるためにCPUの動作を安定させるためにCPUのヒートシンクを交換。合間に自宅ヒートシンクを交換。合間に自宅通学の2人(ツール担当)と打ち合通学の2人(ツール担当)と打ち合わせ。わせ。

動作を安定させるためにCPUのヒートシンクを交換。合間に自宅通学の2人(ツール担当)と打ち合わせ。

本日はマーチングの練習。無心にクラリネットを吹く。うまくステップを踏めない後輩をイジる。みんなで笑ってばかりいた。

おやつ(チョコ+野菜ジュース)でエネルギーを充おやつ(チョコ+野菜ジュース)でエネルギーを充てん。息抜きに雑談をすこし。就職先のこと、高速てん。息抜きに雑談をすこし。就職先のこと、高速化のヒントなど。化のヒントなど。

おやつ(チョコ+野菜ジュース)でエネルギーを充てん。息抜きに雑談をすこし。就職先のこと、高速化のヒントなど。

Page 11: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

わりしています。あ、お金がいらないわけでは

ないんですよ(笑)。

岡野原 最初の1年はソフトウェアを作るこ

とに注力しました。最初は無給でやって、製

品が売れ始めたらそこから給料を出すこと

にしたんです。

西川 僕らは製品を広く売っていきたいの

で、チューニングをしなくても性能に満足で

きる製品をめざしたんです。そのために、検

索に使用するインデックスデータをメモリ上

に置くようにして、データが増大したらそれ

に合わせて自動的に複数のコンピュータで

分散検索ができる仕組みを作りました。その

後、SSDを利用するようになりましたが、基本

的な設計コンセプトは受け継がれてます。

西鳥羽 最初のバージョンは、西川がシス

テム全体の設計を担当、コアエンジンは岡野

原が担当、僕は他のメンバーといっしょに

サーバーの部分を担当しています。

岡野原 よくあることですが、論文に書いて

あるとおりでは動かなくて、コアエンジンでも

そこは押したり引いたり。

西鳥羽 始まりは、3人でバイオ系の創薬ベ

ンチャーでアルバイトしたこと。DNAの塩基

配列を解析して、似たような配列を探す仕事

をしていたんです。あれは経験になったよね。

岡野原 特に起業の空気を味わえたのは

大きかった。「このくらいがんばれば会社は

回る」ってわかったから。

西川 バイオのベンチャーにはやはり資本

が必要で、そこではベンチャーキャピタルか

ら億単位の資本を受けていたんです。でも、

少し業績が悪くなって……。

岡野原 僕らがいた部門はなくなってしまっ

た。手がけていた分野は時期尚早と考えたの

でしょう。そのころに会社を設立しました。

西川 起業のきっかけは、国内外の人との

出会いが大きかったな。ACM/ICPC(国際

的なプログラミングコンテスト→P.38)に出

場して、不利な点はあったけどそこそこ闘え

た。知識や技術は互角だと実感できました。

うまく役割分担して補完し合えば、チームと

してはスーパーになれる。会社も同じだと

思ったんです。

岡野原 僕は「未踏」(IPA未踏ソフトウェア

創造事業)をユースから経験していて、そこ

でも刺激を受けました。

西川 僕は、岡野原の検索エンジンを何と

か実用化したいと考えるようになったんだよ

ね。で、「自分たちでやろう」となった。

西川 起業した当初は、事業の方向性も

はっきりしていなかったんです。でも、あくま

で自分たちで作った技術を元にビジネスを

していこうと、それだけは固く決めていまし

た。もうひとつ、バイオベンチャーでの経験が

あったから、自己資本にこだわっています。

僕らは、すぐには収益に結びつかない技術も

探っていきたい。だから、自分たちでできる

範囲でやることにして、投資の話は全部お断

西鳥羽 結局、学部で学んだことがすべて、

いまの仕事に通じていると感じます。

岡野原 『CPU実験』では西川と同じ班

だったんですよ。その延長上に、いまの会社

があるような気持になることがあります。

CPU実験では、西川が途中からネットゲー

ムの世界に行ったきり戻ってこなくなってし

まって、CPUができないのでみんな困ったな

あって。でも、最後はちゃんと責任もって期日

どおりなんとかなるんです。

西川 僕は、人の心が脆弱だと知ったよ(笑)。

岡野原 授業は真剣勝負。うかうかしてい

ると置いていかれそうな授業が多かった。だ

けど、コンピュータ科学の必要不可欠なトレ

ンドは、体系的に網羅しているので、そこか

ら身につく基礎力は大きいですね。海外で出

合った優秀な開発者は、理論的な研究分野

をしっかり押えていて、プロダクトに活かして

いました。それを知って、僕はさらにもっと勉

強しようと博士課程に進みました。

西鳥羽 そうやって、設立1年目は開発に充

てるつもりだったけれど、製品は夏ぐらいに

はできました。意外と早かったですね。

西川 だけど、売れなかったんだな。

岡野原 だって、営業の方法がわからない

んだもん。誰も社会人経験がないから、どの

部署のどんな役職の人に話をすればいいの

かさえもわからない。

西鳥羽 企業のホームページからアドレス

を集めて、リリースメールを送ってみたり。

岡野原 「info@×××.co.jp」なんて宛先

じゃ、絶対に担当者に届かないよ(笑)。

西川 ようやく最初の商談が設立したのは

12月。僕は、客先で納入作業をしながら、持

参したPCで修士論文を書いていました。製

品が売れたあとも、入金されるまでに何カ月

かかるかを知らなくて、あわてる一幕も。

岡野原 実際に研究とビジネスの両方を

やってみると、研究者、開発者、ユーザーの

視点はまったく違うことを痛感します。研究

者の視点では「検索精度98%」が達成でき

たら、それはスゴイこと。ところがユーザー視

点では「2%のバグがある。直してください」。

休日でもメールが来ます。

西川 理論上100%達成は無理。僕ら、その

証明もできる(笑)。

西鳥羽 10万分の一の確率でも、ユーザー

にとっては「困るものは困る」わけです。

西川 当然のことなんだけど、本当に必要な

ことは何かを、お客さんの立場からも考えな

くてはいけない。製品は、「研究」「開発」「運

用」の3つの視点がうまくバランスしてはじめ

て、活用されるんですね。学生時代は「速け

ればいい」と思っていて、ユーザビリティは大

嫌いな分野でした。でも、必要性がわかって

きて、最近は食わず嫌いはなくなりました。

西川 僕らのいまのターゲットは検索エン

ジンだけれども、20年前ならデータベースを

手がけていたかもしれないね。

西鳥羽 技術にはブレークスルーがあるか

ら、時代によって手がける技術も変化します。

岡野原 次に来る技術に思いをめぐらせる

とき、僕は、いま流行っている技術が過去に

どうだったかを見ることがあります。音声や

画像の認識技術、機械翻訳あたりは、もっと

おもしろくなりそうな予感がします。

西川 僕は英語が苦手だから、機械翻訳の

いいのができればなぁ(笑)。

独自の検索エンジン技術で注目を集めるベンチャー企業「PFI」。創業したのは、情報科学科の先輩たちだ。かつて同級生だった3人は、自らの技術力で勝負する。

情報科学科の先輩たち

2006年3月、記事登場の3名を含む6名のエンジニアが集まって設立。エンタープライズ向けの全文検索エンジン『Sedue(セデュー)』を核に、レコメンドエンジン、連想検索エンジン、関連記事推薦エンジンなど、自然言語処理/大規模データ処理系のミドルウェアを開発している。社名は「純粋関数型言語(Purely Functional programming language)」の頭文字PFに由来する。

株式会社プリファードインフラストラクチャー(Preferred Infrastructure:PFI)

ソフトウェア開発でいま最も熱い分野のひ

とつ̶̶検索エンジン。激しい技術革新と

し列な開発競争が繰り広げられるなか、情

報科学科で学んだ3人を含む6人の仲間が

PFIという小さな会社を創業した。自分た

ちの技術力を信じて、「とんがった技術」で

勝負したいと考えたのだ。

高速で使いやすく、マシンを増やすだけで

データの成長に追従できる検索エンジン

『Sedue』。それは、携帯通信会社、大手新

聞社、ポータルサイトへと次々に採用され

ていった。

メンバーの多くが社会人経験のないなかで

の創業。コンピュータ科学とビジネスの間

のギャップに驚くことの連続だったが、PFI

はしだいに「気鋭の技術者集団」と目され

るようになっていった。メンバーは早くも次

の技術に思いをめぐらせる。

西川 徹 T o r u N i s h i k a w a

代表取締役社長・最高経営責任者1982年生まれ。東京大学大学院情報理工学系研究科修士課程修了。在学中は平木研究室でハードウェアとネットワークを研究。PFIでは社長業のほか、システム全体の設計を担当。 http://preferred.jp/

20 21

僕らは技術の王道を駆けていく

岡野原 大輔D a i s u k e O k a n o h a r a

特別研究員1982年生まれ。東京大学大学院情報理工学系研究科博士課程3年。辻井研究室で自然言語処理を研究。PFIでは、コアエンジンの開発を担当。

J i r o N i s h i t o b a西鳥羽 二郎研究開発部門マネージャー1982年生まれ。東京大学大学院情報理工学系研究科修士課程修了。在学中は今井研究室でアルゴリズムを研究。PFIでは、分散検索システムの開発を担当。

Page 12: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

22 23

卒業までの卒業までのあんなことあんなことこんなことこんなこと

ISerの進路

(所属は2009年3月のインタビュー当時のものです)

IBM トーマス.J.ワトソン研究所

菅原 豊(情報科学科22期)

ーアメリカ・ニューヨーク州在住

1977年生まれ。修士・博士課程では平木研究室に所属、ネットワークプロセッサやFPGAなど超高速コンピュータのハードウェアを研究する。研究室助手を経て、2008年米国IBM入社、研究員となる。

 コンピュータが好きで、使うことより作ることに興味があった私は、コン

ピュータについて深く学べると聞いて情報科学科に進み、ハードウェア系

の研究をする道を選びました。

 所属研究室では博士課程のとき、超高速コンピュータ「GRAPE-DR」、

大容量データの遠距離高速通信「データレゼボワール」と2つの大規模プ

ロジェクトに参加する機会を得ました。海外学会でのデモに苦労しながら

国内外の研究者と交流したことは、貴重な経験です。

 現在は、IBMワトソン研でスーパーコンピュータのLSI開発に携わってい

ます。それまで、LSIの設計で最も難しいことは性能を出すことだろうと考

えていましたが、実際に実用システムのプロジェクトに参加してみると、そ

れ以上に正しく動作させることのほうが難しいと知りました。情報科学科

では、単に知識が得られただけでなく情報科学的な感覚や考え方が身に

付き、それがいま役に立っていると感じます。

スーパーコンピュータのLSIを開発

Sun Microsystems

川口 耕介(情報科学科22期)

ーアメリカ・カリフォルニア州在住

1977年生まれ。情報科学科在学中の1998年に有限会社Swiftを設立。2001年Sun Microsystems入社。2002年コーネル大学大学院で修士号を取得。2003年Sun Microsystemsに復帰、現在はオープンソースソフトウェアの開発に従事。

 中学生のころからプログラミングが楽しくてしょうがない少年でしたか

ら、情報科学科に進学するのは自然な流れでした。在学中にXML関係の

ソフトウェアを開発する会社を設立、根津の会社と本郷キャンパスを往復

する毎日を送りました。

 思い出の授業はやはり「CPU実験」です。僕はCPUの設計を担当しま

したが、得意のソフトウェアを書くのとは似て非なる分野。大いに楽しみ

ました。仕事では絶対に使わない言語のMLやPrologに触れる機会が

あったこともよかったです。このときの知識がいまも役立つのが不思議。

情報科学科では知らず知らずのうちに「知の基礎体力」を身に付けてい

たのだと思います。

 Sunに入社したのは、僕が作成したソフトウェアが先方の目にとまったた

めでした。現在はオープンソースソフトウェアの開発をしています。

 ソフトウェアの開発のおもしろさは、常に世界一を目指して戦うところ。

世界を股にかける感覚で自分の仕事を世界中に通用させていく̶̶そこ

に醍醐味を感じます。

夏休みなどを利用して、国内・海外企業や研究所でインターンに行く人も。

卒業生の約90%が、情報理工学系研究科コンピュータ科学専攻に進学。

オープンソースソフトウェアを開発

海外で活躍する先輩たち

○情報科学科卒業生の就職レピダム

○修士課程修了者ACCESS、朝日ネット、NTTコミュニケーションズ、NTTドコモ、グーグル、ゴールドマン・サックス・アセット・マネジメント、ソニー、特許庁、日本アイ・ビー・エム、博報堂、富士通、マイクロディプロプメント、ヤフー、リクルート

○博士課程修了者NEC、東京大学、日立製作所

●2010年度情報科学科卒業生の進路

●2010年度卒業生の就職

●2010年度コンピュータ科学専攻修士課程修了生の進路

大学院進学 22名 企業就職 1名

博士課程進学 6名

官庁就職 1名

企業就職 16名

卒業後の進路

 近年、情報科学科の卒業生の約95%は大学院(コンピュー

タ科学専攻)に進学し、約5%が企業もしくは官公庁・公共企業

体に就職しています。

 情報科学科、コンピュータ科学専攻の修士課程、博士課程

修了後の就職先イメージは、以下のとおりです。卒業年時点の

集計ですので以下の数字には表れていませんが、博士課程修

了後は大学に在籍したあと、企業の研究機関や国外の大学に

就職する例もあります。

学科・専攻の「就職ガイダンス」で、就職事情をチェック。キャリアサポート室と連携した企業の求人情報や技術説明会などもある。

卒業論文は英文で提出。英語ネイティブの講師による論文執筆方法を受講。

研究科の「進路ガイダンス」をチェック。企業人が語る「グローバル時代に求められる人材とは」、就職活動Tips、博士課程で培った力をいかに活かすかのOBトークなど。

視線と姿勢、構成の組み立て方、よりよい言い回しなど、英語でのプレゼン方法を少人数クラスで特訓。

Page 13: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

2524

 研究室のドアをふさいでいるクマ君は、

はじめ、落書きからコンピュータの画面の

中の立体として誕生した。

 画面に落書きした「まる」は、円を閉じた

瞬間、もこもこした球に。さらに描いた球

を最初の球にくっつければ、だんご鼻に。

こうして、落書きはあっという間にふっくら

したクマに姿を変えた。落書きの「まる」に

は、もともと中心となる点や傾きのような

「構造」がない。いわば、骨なきところに

忽然とそれらしき立体ができるのである。

不思議だなあ。

 さて、この画面のなかのクマ君、どう

やってぬいぐるみになったのだろうか。ぬ

いぐるみの型紙は、立体モデルの表面を分

割し、平面に展開したものだ。落書きから

生まれた立体モデルにも、分割・展開のア

ルゴリズムを応用して型紙を作れる。しか

し、実際に型紙からぬいぐるみを作ってみ

ると、かならずしも元の立体そっくりの形

状にはならない。

 立体から平面にするときに、若干の「ゆが

み」が生じるうえ、中の詰め物がぬいぐるみ

の皮を押し上げて変形させるからだ。第一、

自動生成した型紙では、気に入らない場所

に縫い目ができてしまうかもしれない。

 そこでできたのが、仕上がりイメージを

確認可能な型紙の自動生成ソフトだ。立体

モデルに落書きふうに縫い目を書き込む

と、型紙が作成され、それを縫い合わせた

形状に力学的なシミュレーションが施され

て、リアルタイムに表示される。

 仕上がりは、縫い目のつけかたしだい

で、変わっていく。クマ君も、だんご鼻が

高くなったり低くなったりしながら、実世

界に出てきたのである。

参考文献:Yuki Igarashi, Takeo Igarashi. "Pillow: Interactive Flattening of a 3D Model for Plush Toy Design" Lecture Notes in Computer Science, Springer (SmartGraphics 2008), Vol. 5166/2008, pp.1-7, ISBN:978-3-540-85410-4, Rennes, France, August 2008.

①立体モデルを作る。ここでは、Smooth Teddyを使用。ほかの3Dモデル制作ソフトでもよい。

計算機から抜け出た「くまたん」落書きからぬいぐるみへ続くユーザーインターフェイス

②落書き感覚で、ささっとふっくら「くまたん」が完成。3Dデータで保存ができる。

③できた立体の構造はこのとおり。

④Pillowで3Dデータから型紙を自動生成。立体モデルに縫い目を書いて、仕上がり形を調整できる。

⑤自動生成された型紙。縫い目の指定に合わせて型紙の形状や型紙ピースの数が変わる。

⑥できた型紙を縫い合わせ、詰め物をした状態。力学的なシミュレーションを施して表示される。

⑦実世界に出てきた「くまたん」。

Page 14: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

2726

情報科学科の研究室紹介萩谷研究室 論理計算機科学

今井研究室 アルゴリズム論

西田研究室 コンピュータグラフィックス

平木研究室 計算と通信の高速化

石川研究室 並列分散システム

須田研究室 数値シミュレーション、高性能計算

五十嵐研究室 ユーザーインターフェイス

高橋研究室 データの可視化とその視覚応用

小林研究室 理論計算機科学

蓮尾研究室 情報現象の数理モデル

p.28

p.29

p.30

p.31

p.32

p.33

p.34

p.35

p.36

p.37

情報科学科では、コンピュータに関連する分野を扱う10の研究室が協調しながら活動しています。

研究室ごとに特色のある専門を持っていますが、狭い分野だけを扱うのではなく、

他の領域への広がりがあります。詳しくは研究室ごとの紹介をご覧ください。

Page 15: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

2928

れます。すると、さまざまな疑問が湧いてき

ます。形式体系の個々の対象がいったい何

を意味しているか。形式体系のもとでの計

算は常に停止するのか、計算できないこと

はないのか。

 以上のような性質を個別に考えるのでは

なく、計算モデルに対してなんらかの「論

理」を定義することにより、さまざまな性質

を統一的に導くことが可能になります。さら

に、論理を形式体系(公理系・推論規則)と

して与えれば、推論の自動化や機械化が可

能になります。これは、以下で述べるよう

に、実際的な検証技術へつながります。

 研究室では、以上のような方向で計算モ

デルに関する研究を行っています。

 情報技術の進展とともに、計算モデルに

関する研究テーマも変遷してきました。ネッ

トワーク技術やユビキタス技術などの進歩

により、また生物を扱うためにも、「定量性」

と「場」を持った計算モデルが重要となって

います。「定量性」とは、確率や物理量(エネ

ルギーや濃度)などの定量的な尺度を扱う

ことを意味します。「場」とは、ネットワークに

おけるように、計算の主体がなんらかの関

係を持ちつつ分散していることを意味しま

す。生物におけるさまざまな情報処理もな

んらかの「場」を活用しています。

 上で述べたように、計算モデルとその論

理に対して形式体系を定義し、自動的にコ

 皆さんは、チューリング機械とかラムダ

計算などの言葉を聞いたことがあるかもし

れません。これらは、「計算」というものを数

学的に捉えるための「計算モデル」の典型

例です。計算モデルによって、「計算」という

もやもやとしたものが科学的解析の可能な

対象となります。

 いうまでもなく、このような計算モデル

は、コンピュータを作るための指針になりま

すが、実際に作るときは、さまざまな観点か

ら計算モデルにない機能を多く追加してし

まうことがよくあります。すると、実際のコン

ピュータは、もとの計算モデルとは似ても

似つかないものになってしまい、実際のコ

ンピュータに即したモデルを考えよう、とい

う方向に研究が進みます。

 また、コンピュータを作るためではなく

て、自然界を理解したり再構築したりするた

めに計算モデルを考えることもあります。特

に、生物が行うさまざまな情報処理は生物

学で活発に研究されている課題ですが、生

物が行う情報処理に即した計算モデルが

あれば、生物の情報処理をモデル化して解

析するだけでなく、生物と同様の情報処理

をコンピュータに行わせたり、生物の情報

処理を再構築することが可能になります。

 計算モデルの研究は、計算概念を計算

モデルとして数学的に定式化し、それをさ

らに「形式体系」として定義することに始ま

ります。形式体系のもとで、計算は厳格に

定まった規則による記号操作として定義さ

支配する点に着目して、新原理として量子

力学を使ってみようというのだ。

 量子力学に従う状態(量子状態)で情報

を表現し、操作して計算し、相手に送って通

信するのが量子情報処理だ。これでニュー

トン力学ではできない情報処理ができるよ

うになるのだろうか? 答えは「イエス」で

ある。量子力学には、測定すると状態が変

わってしまうという量子不確定性原理があ

る。情報処理的には、量子通信する途中で

盗聴されるとこの原理で状態が変化して相

手に届くことになり、これをうまく通信方式

として構築すれば、長距離通信においても

途中で盗聴がないことを保証できるはじめ

ての通信方式になる。これはニュートン力

学でデジタル情報処理をしているだけでは

不可能な画期的技術革新である。

 この暗号通信方式は1984年に提案さ

れたものだが、2007年に我々の研究グ

ループが情報科学を駆使し、世界で初めて

定量的に安全性を保証した量子暗号シス

テムの実験実証を行ったところである。

 計算の効率という点でも量子状態を

使って計算すると、量子重ね合せという性

質とフーリエ変換を組み合わせて、いまの

コンピュータでは効率よく解けないと思わ

れている整数の素因数分解の問題を効率

よく解くことができるようになる。これは

1994年に示されており、当研究室では、代

 量子力学を研究してみるのはどうだろ

う、いまのパソコンやインターネットを凌駕

した新しい情報科学技術を展開するため

に。これだけだと脈絡がつかめないかもし

れないが、10年、20年先の情報環境がどう

なっているか、想像してほしい。いまのパソ

コンやインターネットがそのまま10年、20

年先までも幅を利かせているわけはないの

だから。

 昔を思いおこすと、東大では1980年代

にはメールを世界とやりとりできるように

なり、今井も1985年にStanford大学の共

同研究者との論文執筆のやりとりにメール

を使って、国際会議投稿の締切りに間に合

わせた。メールは現時点では最もポピュ

ラーな通信手段であるが、それがこれから

もずっと情報交換手段の主役というのでは

世界は変わっていかないのだ。

 若い世代の特権として、それまでにない

世界を切り拓く挑戦ができるということが

ある。ぜひ、そのターゲットとして、いまや社

会基盤となった情報科学技術を革新する

ことに挑んでもらいたい。その先には、自分

の研究が世界を変えるという素晴らしい体

験ができるはずだ。

 では、具体的にいまの情報処理を革新す

るにはどうすればよいだろう? ひとつのア

プローチは、いまある情報処理原理ではな

い、新しい原理を使うことである。いまのパ

ソコンや携帯電話を制御するVLSIチップ

がニュートン力学で「0」「1」のデジタル情

報を処理するのに対し、VLSIチップの集積

度向上に応じてチップ内では量子力学が

論理計算機科学

「安心・安全」から「あやしい・あぶない」まで論理からコンピュータシステムのしくみを追求する

アルゴリズム論

さらにその先へ!アルゴリズムの基礎から量子情報科学へ

萩谷昌己教授 M a s a m i H a g i y a 今井浩 教授H i r o s h i I m a i

形式体系と論理

●参考データ萩谷研究室:http://hagi.is.s.u-tokyo.ac.jp/http://hagi.is.s.u-tokyo.ac.jp/~hagiya/分子コンピューティング:http://hagi.is.s.u-tokyo.ac.jp/mp/

●参考データ今井研究室:http://www-imai.is.s.u-tokyo.ac.jp/ERATO-SORST量子情報システム:http://www.qci.jst.go.jp/

■ 研 究 室 紹 介 ■ ■ 研 究 室 紹 介 ■

計算モデル 新しい情報モデルを求めて

研究テーマ

■分子コンピューティング ■計算モデルと形式的検証■プログラミング言語

研究テーマ

■量子計算■アルゴリズム論■組合せ最適化■計算幾何

ンピュータシステムの正しさを検証する技

術が重要になります。このような研究分野

は「数理的技法」とか「形式的手法」と呼ば

れています。

 現代社会は情報技術に大きく依存してお

り、数理的技法は情報社会をより「安全・安

心」にする技術として期待されています。研

究室でも、暗号プロトコルの検証(暗号系の

破られ易さを考慮にいれた確率的な議論を

可能にする形式体系)とJavaプログラムの

モデル検査(モデル検査という検証技術を

用いてマルチスレッドのJavaプログラムを

検証する技術)の研究を進めています。

 既存のシステムを安全・安心にするだけ

でなく、新しい計算モデルを考えることもた

いせつです。新しいことは当然、最初は「あ

やしい・あぶない」ものです。「あやしい・あ

ぶない」技術が有用になって社会に広がる

と、今度はそれらを「安全・安心」にする必

要がでてきます。

 本研究室では、「あやしい・あぶない」計

算モデルの研究として、分子コンピュー

ティングや合成生物学に関する研究を行っ

ています。分子コンピューティングでは、計

算モデルを考えるだけでなく、実際にDNA

などの生体分子を用いた計算システムを実

装しています。

あやしい・あぶない

量子情報モデル

新しい研究に取り組む面白さ

安全・安心

数的に深化を進めて量子アルゴリズム研

究を展開するとともに、量子計算ではじめ

て可能になるコンピュータ間のリーダ選挙

方式を、世界初で提案・実証している。

 ここまでで、量子情報科学の面白さをす

こしでも感じていただけたなら、若手の

方々にはぜひこの注目を集めている分野

で新しいテーマに取り組む楽しさを実感

してほしい。

 新規テーマに取り組むには、まず新しい

ことを知らないといけない。量子情報科学

を展開するには量子力学が必要だ。しか

し、それは物理や電子工学分野の人と同

じレベルの量子力学を学ばないと先に進

めないということではない。量子情報科学

のために必要な量子力学は、実は大学生

にとってはたいへん取り組みやすいもの

で、大学入門線形代数を理解していれば

スタートできる。

 こうした壁を冒険して乗り越えることで、

新しい世界が広がっていく。交流する研究

者もさまざまな分野にわたり、分野の垣根

を超えた交流はきっと有意義なものとな

る。こうした楽しさをぜひ体感してほしい。

Page 16: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

T o m o y u k i N i s h i t a

3130

生まれたCGという分野で、私は光景の背

後にある物理現象を計算することによっ

て、リアリティを追求してきました。

 照明に浮かびあがるティーポット、天井

や壁面の相互反射を考慮したやわらかい

光とぼんやりした影、雲の水粒子間の光の

やりとりを計算した雲の色。これらの画像

の1点1点は、物理現象を計算して描画さ

れているのです。とはいえ、このような複雑

な計算にも、無限に時間をかけるわけには

いきません。実用的な時間で描画できるよ

う、計算方法やプログラムのアルゴリズム

に工夫が凝らされます。

 今日、実物よりリアルだとすら評される

ハリウッド映画やゲームのCG映像には、こ

うして開拓されたアルゴリズムが応用され、

さらに新たな手法へとつながっています。

物理現象のシミュレーションCGが

役立つのは、リアルな映像だけでは

ありません。少し変わったところで

は、キャンバスの材質やナイフの特

性を考慮して油絵の具の塗布をシ

ミュレーションすると、油絵の質感を

持つ画像を作りだせます。

また日常的なところでは、光景が目

にはいる原理を応用して、複雑なレ

ンズの設計に役立てたり、車道夜間

照明が車の運転者の目にどう映るか

をシミュレーションすることができます。

 CG分野の最も権威ある学会は、ACM

SIGGRAPHです。毎年夏に開催される

SIGGRAPH会場では、学術会議とともに

技術とアートの粋を集めた華やかなデモン

ストレーションが繰り広げられ、多くの来場

者で賑わいます。2005年、その学会から、

CGへの長年にわたる貢献が認められ、

S.A.Coons賞を受賞しました。日本発祥の

CG研究が世界に認知されて、たいへん嬉

しい気持ちです。

 CGはしあわせな学問です。なんといって

も、目に見えるもの、綺麗なものができるの

はうれしい。そして、できあがった画像を、

誰もが楽しめます。

 西田研究室は、形状モデリング、レンダ

リング、アニメーションを中心に、CGの基

礎技術から応用までを手がけています。特

にリアルな画像生成では、ラジオシティ法

やベジエクリッピング法など、世界に大き

な影響を与えた技法を編み出してきまし

た。このページで紹介している画像は、そ

の一部です。

 ルネッサンス時代の巨匠レオナルド・ダ・

ヴィンチは、「モナ・リザ」などを制作した画

家としてよく知られていますが、科学者でも

ありました。人の体がどのようにできている

のか、鳥はなぜ飛べるのか、月が光る秘密。

目にはいるさまざまな事象に向けられた探

求スタイルは、絵画にも影響を与えていた

に違いありません。

 ルネッサンス時代からおよそ500年後に

画像のリアリティと科学

●参考データ西田研究室:http://nis-lab.is.s.u-tokyo.ac.jp/~nis/topicja.html開発したCG手法の軌跡とアニメーション:http://nis-lab.is.s.u-tokyo.ac.jp/~nis/sampl_img.htmlhttp://nis-lab.is.s.u-tokyo.ac.jp/~nis/animation.html

コンピュータグラフィックス

もっとリアルに、もっと速くコンピュータグラフィックス技術の世界をリードする

西田友是教授

■ 研 究 室 紹 介 ■ ■ 研 究 室 紹 介 ■

可欠なものとなった。

 情報という抽象化は、処理だけでなく通

信にも大きな変化をもたらした。かつては

電信で文字、電話で音声しか送れなかった

が、ディジタル化̶̶すなわち世界を情報

の集合体として抽象化し、モデル化するこ

とによって、さまざまなものが通信可能と

なった。今日のインターネット技術は、すで

に物体以外のすべてのものを遠隔化できそ

うな様相を見せている。

 では、情報により抽象化する意味は何だ

ろうか?

 それは、情報処理における計算の万能性

にある。データを移動する、四則演算をす

る、条件を判断して適用する処理を選択す

る、これらの組合せですべての情報に

対する処理を実現できることは、

チューリングマシンの理論が教えて

いる。詳細は分かっていないものの、

人間の脳はこのようにして情報を処

理していると考えられている。

 しかしながら21世紀になっても、

コンピュータは人間が楽々とできる

こと、たとえば視覚認識、気の利いた

会話、翻訳、囲碁、将棋などは遠く及ばず、

知を持つものには程遠い。万能の計算がで

きるはずのコンピュータはなぜ人間に及ば

ないのか? なぜ、コンピュータは人間ほ

ど情報を取り入れられないのか?

 計算の万能性は、コンピュータには個性

がなく、コンピュータとネットワークを用い

て必ず必要な情報の処理ができることを約

束している。しかしながら、現実のコン

ピュータで実現するためには、アルゴリズ

ムなどのような実現の方法論を明らかにす

るとともに、実際上の制約となっている計

算の速度、記憶の大きさ、データの移動速

度の性能を向上させる必要がある。これ

が、人間にならび、人間を超す情報処理を

実現し、いままで解決しなかった問題解決

の鍵となる。

 私たちは、ようやく鰐までになったコン

ピュータとネットワークを、いかに人間まで

育てるかをテーマとし、コンピュータ、ネッ

トワークやソフトウェアシステムの高速化

に取り組んでいる。目標は決して遠くない。

あと10万倍の高速化だ。過去50年間で

1000万倍の高速化をコンピュータ、ネット

ワークともに実現してきたことは、その大き

な支えとなる。

 目から入ってきたもの、耳から入ってきた

もの、さわって味わって感じてみたもの、内

からわきでてくる思考・感情は、人間に内在

する情報となる。書籍、写真、動画、それを

ディジタル化したものは、人間が取り出し、

抽象化して作りだした情報である。同じよ

うに、世界中の森羅万象有象無象、そして

生命体の存在自身が、情報として抽象化す

ることにより人間のものとなる。物理は世界

を場と物体を用いて抽象化する。化学は物

質、生物は生命を中心に世界をモデル化

し、理解する。情報では、世界を「1」と「0」の

列に代表される情報の集合体としてモデル

化し、理解する。

 情報が他の科学と大きく異なるのは、世

界をモデル化・理解するだけでなく、計算と

いう過程により情報を操作し、処理できる

ことだ。昔、情報処理はおもに人間の脳で

行っていた。いまから70年くらい前のある

日、情報は電気信号になってコンピュータ

で処理できるようになった。最初は大砲の

弾の落下場所の計算、飛行機の翼設計、暗

号の解読がコンピュータの扱える計算だっ

た。それから70年たち、宇宙や銀河創生、

地球全体の気象を再現し、チェスやオセロ

では人間の能力を凌駕し、我々の生活に不

計算と通信の高速化

もっと速く、もっと遠くへ未来の情報基盤をもとめて

平木敬教授K e i H i r a k i

速い情報処理「̶鰐」から「人間」へ

●参考データ平木研究室:http://www-hiraki.is.s.u-tokyo.ac.jp/intro.htmlGRAPE-DR:http://grape-dr.adm.s.u-tokyo.ac.jp/Data Resevoir:http://data-reservoir.adm.s.u-tokyo.ac.jp/

研究テーマ

■超並列スーパーコンピュータ■コンピュータアーキテクチャ■超高速TCP通信■データ共有システム■値の局所性を用いたアプリケーションの高速化の研究■Javaと実行時コンパイラの研究

研究テーマ

■コンピュータグラフィックス(自然物・自然現象の可視化、照明シミュレーション、CADシステム、形状幾何モデル、計算結果の可視化、絵画風CG)

地球はなぜ青いのかを証明。空気の分子に光が当たると、青の波長がいちばんよく反射する。それを考慮して、宇宙から見た地球を計算。宇宙飛行士の毛利衛さんが、実際と似ていると太鼓判を押した。

風になびく髪。そよいでいる髪の毛ひと筋ひと筋の間の力関係と光の乱反射を、忠実にシミュレーションしている。複雑な計算をしつつ、リアルタイムに表示している点がポイントだ。

SIGGRAPHで次に注目されるのは君だ!

開発したGRAPE-DR用プロセッサ。1チップあたり512G FLOPSの処理能力がある。

2003年11月、24000km離れた2点間で7.56Gbpsの長距離高速データ転送を記録、世界記録を更新した。以来、2007年の最終記録まで記録を更新し続けた。

海の中のシーンをシミュレーションしたアニメーション。水を通した光の屈折・散乱・集光効果が考慮されている。西田研究室のトレードマークとなった。

カタチあるものの研究 情報とは何だろうか?

Page 17: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

で実行できないようなバグを、ソフトウェア

開発時のツールで取り除けるようにする。

またソフトウェア実行時には、OSによる

ディペンダビリティ支援機能を提供する。

これらはおもにLinux上で実装しているが、

FreeBSDなどのUnix系OSのカーネルで

の稼動も目指し、将来は独自OSカーネル

の開発も視野にいれている。

 本来1台で使用する目的で作られたコン

ピュータをネットワークでつなぎ、並列コン

ピュータとして使うようにしたシステムを、

クラスタと呼ぶ。現在、多くのスーパーコン

ピュータがクラスタ構成をとっている。ま

た、異なる組織に設置されているコン

ピュータ群を使って並列処理を行う、グリッ

ドコンピューティングという形態もある。

 並列処理プログラムはおおむね、各コン

ピュータでの計算とコンピュータ同士の

データ交換を繰り返し、各コンピュータが

結果をファイルに格納するように動作す

る。このため、並列計算システムの性能を向

上させるためには、データ交換とファイルシ

ステムの高速化がポイントになる。

 石川研究室では、高速化の研究ツールと

して、データ交換のための業界標準である

MPI通信ライブラリ規格を

独自実装し(YAMPI)、さら

にYAMPIを基に、産業技術

総合研究所とグリッド向け

MPI通信ライブラリの実装

であるGridMPIを研究開発

している。また、クラスタ向

けファイルシステムの研究

3332

■ 研 究 室 紹 介 ■

高性能並列計算システム環境

新たな研究開発が始動

開発も進めている。

 並列コンピュータ上の多数のコンピュー

タを調停し、効率よくたくさんのアプリケー

ションを動かすためには、アプリケーション

の動作を管理するソフトウェアが必要にな

る。SCore(エスコア)は、石川が経済産業

省のプロジェクトで開発を主導してきたそ

のようなソフトウェアである。SCoreは、筑

波大学や理化学研究所の計算センターで

使われている日本発のクラスタシステムソ

フトウェアであり、石川研究室のクラスタ関

連の研究成果も、SCoreに組み込んで世に

出されている。

 並列アプリケーションは、並列コンピュー

タの特性に強く依存することから、プログラ

ミングに深い計算機知識を要し、作ったプ

ログラムは異なるアーキテクチャのコン

ピュータでは動作しないことが多い。研究

室では、さほど深い知識がなくても記述可

能で、さまざまなタイプの並列コンピュータ

で効率よく動作するようなプログラミング

環境̶̶プログラミング言語、ライブラリ、

ミドルウェアを研究開発していく。

 家庭、オフィス、工場、自動車、飛行機、鉄

道、あらゆるところでコンピュータが使わ

れ、それらがネットワークでつながる時代。

たとえ1台のコンピュータが故障しても、シ

ステム全体に波及しないようにすることが

たいせつだ。故障は、ハードウェアだけでな

くソフトウェアの不具合に起因することも

多い。ネットワークアタックによるシステム

停止やデータ漏洩など、システムに対する

新たな脅威も生じている。

 このような不具合が生じないシステムを、

「ディペンダブルシステム」と呼ぶ。ディペン

ダブルシステムが持つべき要件には、

Availability(可用性)、Reliability(信頼

性)、Safety(安全性)、Confidentiality(機

密性)、Integrity(健全性)、Maintainability

(保守性)がある。

 石川研究室は、米澤研究室、筑波大学、

早稲田大学、慶應義塾大学とともに、ハー

ドウェア故障、ソフトウェアのバグ、ネット

ワークアタックに強く、電力消費と性能・実

時間性に配慮した、ディペンダブルシステ

ムを研究開発している。

 この取り組みでは、ディペンダビリティを

阻害する論理的なバグや所定の時間範囲

 A(Algorithm):計算方法によって、速度

や精度がまったく違う。適切な計算方法を

設計することが重要だ。

 S(Software):スーパーコンピュータな

どでは、それに適したプログラミングが必

要になる。

 H(Hardware):コンピュータの性能を

最大限に引き出すには、ハードウェアを正

しく理解しなければならない。

 未来を拓くシミュレーションには

SMASHのどれひとつも欠かせないが、実

はこのなかでかなめになるのが中央にある

「A」である。アルゴリズムが適切でないと、

計算はできても精度がまったく足りなかっ

たり、プログラムをいくら工夫しても、コン

ピュータの性能を活かしきれないなど、根

本的な問題がいろいろと発生する。

 我々の研究室は、この「A」と2つ目の「S」

をおもな研究テーマとして、新しいハード

ウェアを活かしたプログラム手法、高速ア

ルゴリズムなどに取り組んできた。気象計

算に使われる球面調和関数変換の世界最

高速のアルゴリズムは、我々が考案したも

のである。最近はハードウェアに自動適応

する「自動チューニング」の研究にも取り組

んでいる。科学技術シミュレーションの未

来を拓くために、これからもさまざまな問題

に貪欲に取り組んでいきたい。

 コンピュータは小さな宇宙だ。宇宙には

何があるか? 空間と、それを満たす物質

と、物質の挙動を決める物理法則である。

物理法則に従って、実に多様な現象が宇宙

の中で起こる。コンピュータも同じだ。宇宙

空間の代わりにメモリ空間があり、物質の

代わりに情報(データ)がメモリ空間に満ち

ている。そして、物理法則の代わりにデータ

の挙動を決めるのはプログラムである。ど

ういうデータをメモリに満たし、どういうプ

ログラムをつくるかによって、コンピュータ

の中にはさまざまな世界が広がる。現実の

世界を模擬することもあれば、現実にはあ

りえない世界をつくりだすこともできる。コ

ンピュータの中にどんな世界をつくりだす

か、それは君たちの想像力しだいだ。

 スーパーコンピュータが登場してから、コ

ンピュータシミュレーションは「第3の科学」

といわれるようになった。「第3」というからに

は、先行するものが2つあるわけだが、それ

は「実験」と「理論」である。シミュレーション

という言葉の意味は模倣だが、実際には模

倣以上のものである。理論はむろん重要だ

並列分散システム

機能し続けるシステム安全・高性能・高生産コンピュータシステムを目指してシステムソフトウェアは進化を続ける

数値シミュレーション、高性能計算

コンピュータの中の小宇宙科学技術シミュレーションの未来を拓く

石川裕教授 Y u t a k a I s h i k a w a

●参考データ石川研究室:http://www.il.is.s.u-tokyo.ac.jp/PCクラスタコンソーシアム:http://www.pccluster.org/

●参考データ須田研究室:http://olab.is.s.u-tokyo.ac.jp/~reiji/sudalab.html

■ 研 究 室 紹 介 ■ ■ 研 究 室 紹 介 ■

研究テーマ

■高性能・高生産並列計算環境■ディペンダブルシステム■実時間分散システム

研究テーマ

■数値計算アルゴリズム■計算の高速化・並列化■科学技術シミュレーション

ディペンダブルシステムソフトウェア

コンピュータの中にどんな世界をつくるか?

アルゴリズム、高性能プログラミング、これが我々の研究テーマだ

OSカーネルによるモニタリング ・実行時耐性保証 ・故障・状態変化検知

・ソフトウェアの論理的な正当性・時間制約の検証・消費電力見積もり・耐故障性の検証

ソフトウェア開発時 実行時

プログラム

検証ツール

検証・解析

プログラム

SCore

高速球面調和関数変換法を用いた気象シミュレーション

須田礼仁教授R e i j i S u d a

第3の科学̶シミュレーション

が、ちょっと複雑な問題になると数値計算

に頼らざるを得ない。実験では実現できな

いような理想的な条件がシミュレーション

では設定できるし、現実にない性質の物質

を使ったり、地球や宇宙の変化のように物

理的に実験できないものでも、シミュレー

ション上で実現できる。風洞実験では測定

器が設置してある場所以外の流れは測定

できないが、シミュレーションなら空間のす

べての点における流れの情報を得られる。

このように、シミュレーションは実験や理論

に並ぶ研究手段となった。工業製品などの

設計・最適化にコンピュータシミュレーショ

ンが大活躍しているのもよく知られている

だろう。

 では、コンピュータさえあればやりたいシ

ミュレーションが簡単にできるのかという

と、話はそれほどたやすくない。シミュレー

ションの実現のために必要なものを

「SMASH」だと言う人がいる。

 S(Science):まずシミュレーションの対

象そのものに対する理解が必要だ。

 M(Model):シミュレーションしたい対

象物や法則を、コンピュータで扱えるよう

に表現する。

Page 18: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

3534

して手を差し延べてくれるような、「気の利

く」コンピュータの実現だと、我々は考えて

いる。バーチャルリアリティで右側を見たい

ときは、「右を見たい」とコマンドを打つので

はなく、顔を右に向ければよい。コンピュー

タが自身の所在をGPSなどで把握していれ

ば、人はわざわざ現在地を手で入力する必

要がなくなる。気の利くコンピュータの実現

には、コンピュータあるいはユーザーの置か

れている状況を適切に把握し、どのような

状況のときどのように動作すべきかが適切

に設定されていることなどが必要である。

 このような問題意識のもと、さまざまな

新しいインターフェイスを研究している。

 ひとつは、ペン入力を活用したインター

フェイスのデザインであ

る。ペン入力には、大まか

な情報を手早く入力でき

ること、また文字だけでな

く絵や図も同時に入力で

きるという特徴があるが、

既存のペン入力手法はそ

の良さを活かしきれてい

ない。そこで、より自由に

描画しつつ高度な使い方

が可能な手法を開発して

いる。

 コンピュータグラフィックス(CG)のコン

テンツを手早く簡単に作成する技術も開発

している。従来、CGは専門家が時間をかけ

て作るもので、素人が作成するのは難し

かった。開発中の、手書きスケッチによる

3次元モデリングや、操作の記録と再生に

よるアニメーション作成手法は、初心者で

も簡単に3次元CGやアニメーションを作

れるようにするものだ。

 画像を利用したコミュニケーション支援

手法、大量の情報を効率よく収集・分析・利

用するための手法、また将来に向けて、家

庭用ロボットを操作するためのユーザーイ

ンターフェイスも研究対象である。

 ユーザーインターフェイスはまだまだ新

しい研究分野で、解決しなければいけない

問題が多く残されている。また、個人のアイ

デアがすぐに世界中で使われる可能性が

あり、エキサイティングな分野でもある。よ

り多くの人がこの分野に興味を持ってくれ

ることを期待している。

 昔のコンピュータは、何をするにも命令

をいちいちキーボードから打ち込まなくて

はならず、使いにくいものだったが、ウィン

ドウ、アイコン、メニュー、マウスを駆使した

グラフィカル・ユーザーインターフェイスの

普及によって、一般の人にも使えるように

なった。しかしよく考えてみると、入力デバ

イスがキーボードからマウスに代わっただ

けで、人間がやりたいことをいちいち細かく

指示しなければいけないことに変わりはな

い。このような受動的なインターフェイス

は、ウェブやメールのような簡単な操作に

は問題がなくても、映像の作成・編集や、他

人とのビジュアルなコミュニケーションな

どといった、膨大な情報をいちどに扱うよう

な操作には適していない。また、今後家庭

にはいってくると期待されるロボットのよう

な、実世界を扱う場面にも不十分である。

このような問題を解決する、未来のイン

ターフェイスが求められている。

 未来のインターフェイスに必要なのは、

人間がコンピュータにいちいち指示を与え

るのではなく、人間の自然な動作からコン

ピュータが人間の必要としていることを察

ユーザーインターフェイス

情報ビックバン時代の可視化処理̶やわらかい可視化プロジェクトン時代の可視化処理 やわらかい可視化プロジ クト

人の目を通した情報の理解を探求

准教授

●参考データ五十嵐研究室:http://www-ui.is.s.u-tokyo.ac.jp/http://www-ui.is.s.u-tokyo.ac.jp/~takeo/index-j.html

■ 研 究 室 紹 介 ■

研究テーマ

■ペン入力インターフェイス■CGを簡単に作るためのインターフェイス■ロボットのためのインターフェイス

気の利くコンピュータ

アイデアいろいろ

手書きスケッチによる3次元モデリング

直接操作によるアニメーション作成手法

五十嵐健夫 教授 T a k e o I g a r a s h i 高橋成雄S h i g e o T a k a h a s h i

は大胆に省略し、視覚情報に変換するとい

う方法で、あふれるデータのなかから本当

にほしい情報を効果的に抽出し、視覚的に

提示します。

 実例をお見せしましょう。図1は陽子と水

素原子の衝突をシミュレーションしたもの

です。左側は単純な可視化処理で得られた

不明瞭な画像、右側は適切なデータ解析

を施して改善しています。実は、シミュレー

ションを行った研究者も、右側の画像を見

てはじめてループ状のエネルギー分布があ

ることに気付いたそうです。可視化技術が

ふだん見すごしている情報を気付かせてく

れた、好例です。

 可視化は、情報ビックバン時代の到来と

ともに価値が高まってきています。

 ところが、可視化しようとするデータが複

雑になると、誇張されて可視化された情報

でも人の注意をうまくとらえることができ

なくなります。図2の左側は、視点が不適切

なために可視化結果がだいなしになってい

ます。そこで、心理学実験の知見を採り入

れ、人がモノを見るときの視点の定め方を

当てはめて適切な視点で可視化したもの

が右側です。

 また、人の視覚には融通性があって、実

際とは異なる少し嘘の混じった映像をうま

く理解できます。図3は山道を描いたもので

すが、我々の実験から、右側のように投影

図にデフォルメを加えて道路が山に隠れな

いようにしても、ほとんどの人は違和感なく

3次元シーンを想起できることがわかって

います。これは可視化に、データの解析の

みならず、人の視覚の仕組みを考慮する必

要性を示唆しています。

 このように、可視化は情報ビックバンの

現代を生き抜くための道具となりつつあり

ます。日々流れ込んでくるデータから必要

な情報を引きだし、視覚を通して確実に人

に伝達させることは、人の叡智を最大限活

用するための活動といえるでしょう。

 「百聞は一見にしかず」̶ ̶これは、可視

化の話をするときによく言われることわざ

です。実際、人が持つ五感(視、聴、触、嗅、

味)のうち、視覚は空間的にも時間的に最

も解像度の高い知覚であり、人への情報伝

達に中心的な役割を果たしてきました。可

視化は、人が理解すべきデータをコン

ピュータを用いて画像などの視覚的な情報

に変換し、わかりやすく伝える技術です。

 コンピュータの性能向上が顕著になると

ともに、核融合などの複雑な物理現象のシ

ミュレーションを短時間かつ高精度に行っ

たり、あるいは経済などの統計データをリ

アルタイムに処理できるようになりました。

けれども、このようなデータを手に入れただ

けで、データに潜在している意味がわかる

わけではありません。むしろ逆に、データが

膨大になればなるほど、必要な情報を得る

ことは大海から真珠を拾い集めるくらい難

しくなっているのです。このように、あふれる

データに翻弄されている現代を、「情報ビッ

クバン時代」と呼んでいます。

 可視化では一般的に、データを解析して

必要な情報を強調しつつ必要でないもの

●参考データ高橋研究室:http://visual.k.u-tokyo.ac.jp/

研究テーマ

■3次元画像や関連性データの解析■奥行き手がかりを考慮に入れた投影図生成■人の視覚注意のモデル構築と可視化応用

伝わらなければ意味がない

視覚は人への高解像度入力デバイス

本当に意味のある情報を拾い上げるのは難しい

情報ビッグバン時代を生き抜く道具となれ

図1 陽子と水素原子の衝突シミュレーションで衝突直後を可視化。(左)データ解析を施さない可視化画像、(右)データ解析を施して改善。

図3 投影図にデフォルメを加えた例。(左)写真と同じ投影図表現、(右)デフォルメを加えて道路が山に隠れないように改善。

図2 歯のデータに対する人の視覚特性を考慮に入れた視点選択。(左)悪い視点からの見え方、(右)最も良い視点からの見え方。

■ 研 究 室 紹 介 ■

データの可視化とその視覚応用

気の利くコンピュータとは?未来のユーザーインターフェイスをデザインする

Page 19: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

3736

頼性を上げるという工学的な意味だけで

なく、「学問的にみて奥が深く面白い」とい

う点も研究の大きな動機です。

 たとえば、高レベル言語で書かれたプロ

グラムは、「ラムダ計算」というものを用い

てモデル化できますが、この「ラムダ計算」

は実にシンプルで奥深いものです。

 「ラムダ計算」の世界には「関数」という

概念しかなく、許される演算は「関数を作

る」「関数を適用する」の2つのみです。にも

かかわらず、これだけで実際のプログラム

を記述するのに必要な概念、整数や木構造

などのデータ、条件分岐、繰り返し、再帰な

どの制御構造まで、なんでも表せてしまい

ます。

 このラムダ計算は、カリー・ハワード同型

対応というものを通じて論理学の世界とも

つながり、それがプログラム検証の土台に

なっています。学問的な奥深さと幅広さに

加え、現代社会における重要問題の解決に

貢献できること。この両面性が、ソフトウェ

アの基礎理論を研究する醍醐味でしょう。

 現在とりわけ魅せられているのは、高階

モデル検査です。モデル検査というのは、

ハードウェアやソフ

トウェアなどを数学

的にモデル化し、網

羅的に検証するため

の技術です。発案者

らが、コンピュータサ

イエンスのノーベル

賞 と い わ れ る

「チューリング賞」を

2007年に受賞し、産業界にも徐々に採り

入れられるようになりました。

 高階モデル検査は、モデル検査をさらに

強力にしたものです。2000年ごろから理論

計算機科学者のあいだで研究されてきまし

たが、最近まで実際に問題を解く方法に天

文学的な時間がかかる非現実的なアルゴ

リズムしかなく、応用もまじめに研究されて

いなかったのです。

 ところが、我々の研究で現実的な高階モ

デル検査アルゴリズムが見つかり、それに

基づいて世界ではじめての高階モデル検

査器が現実のものになりました。それがさ

らに、さまざまな応用につながっています。

 冒頭でふれたプログラムの全自動検証

ツールは、実はこの成果に基づいています。

また、高階モデル検査をデータ圧縮に応用

する研究も進んでいます。文字列や木構造

データを、「それを生成するプログラム」の

形で表すことにすると、高階モデル検査を

用いて圧縮したままのデータにパターン照

合や置換などの操作ができるのです。

 高階モデル検査は理論的にも奥深く、

我々の成果も「ラムダ計算」などさまざまな

理論を発展・融合させて得られました。

 「学問的奥深さ」と「実用性(といっても

本当に実用になるのはおそらく数十年後の

ことですが)」の両方を兼ね備えたこのよう

な研究テーマに出会えたことは、研究者と

してたいへん幸せだと思っています。

 飛行機や自動車から、銀行のATM、医療

器具にいたるまで、いまや身の周りのあら

ゆるものにコンピュータが内蔵され、ソフト

ウェアによって制御されています。そのソフ

トウェアに致命的なバグ(欠陥)があった

ら? 考えたくないことですが、実際、ソフ

トウェアの欠陥による事故やトラブルは頻

繁に起きており、従来のソフトウェア開発

手法の限界を示しています。

 そこで小林研究室では、数学的理論を駆

使してソフトウェアの信頼性を高める研究

を行っています。

 たとえば最近では、プログラムや暗号プ

ロトコル(ネットショッピングなどで、暗号を

用いてカード番号などの機密データをやり

とりするための通信方式)を検証するため

の理論を構築し、それに基づいた全自動検

証ツールを作っています。理論を応用して、

プログラムに間違いがないことや通信プロ

トコルの安全性を確かめられます。

 ソフトウェアの理論は、ソフトウェアの信

理論計算機科学

数学的視点のチカラ

「抽象数学」で空を飛びつつ「インパクトある応用」を投下

講師

■ 研 究 室 紹 介 ■

小林直樹 教授 N a o k i K o b a y a s h i 蓮尾一郎I c h i r o H a s u o

■ 研 究 室 紹 介 ■

情報現象の数理モデル

バグのないソフトウェアを目指してプログラム理論の深淵探究を実世界に役立てる

「数学的本質」を見究めるパラメータを変えて具体化

ると、理解が難しいと思われていた対象B

のモデルが自動的に得られるのです! (左下

図を見てくださいね)

 得られたモデルは、背後にある数学を知

らなくても利用できます。このように、数学

の一般性=「カッコよさ」を実世界に「役立

てる」ワザ、うまく決まると気持ちのいいも

のです。クセになります。

 いくつか応用を紹介しましょう。余代数

を用いた計算機システムのモデル、普遍代

数を用いた計算機システムの組み合わせ

のモデル、量子プログラミング言語の圏論

的モデル、ハイブリッドシステム(デジタル

データだけでなく物理的な連続データも扱

う)のモデルとその正しさの検証手法など

に、現在取り組んでいます。

 ふだん考えている数学的な理論が、予想

もしなかった情報科学的応用を内包してい

ることがしばしばあります。そのような応用

のタネを見逃さないよう、幅広くアンテナを

はりめぐらせることもかかせません。

●参考データ蓮尾研究室:http://www-mmm.is.s.u-tokyo.ac.jp

王様のように遊び、大統領のように働く

 ニュートンの運動方程式を知っているで

しょうか? この方程式は、物体の運動とい

う物理現象を、微分方程式という数学的な

道具を使って模型化=「モデル化」していま

す。実用では、空気抵抗を除いて単純化し

たり、あるいは特殊相対性理論のほうがよ

り正確なモデルになることがわかっていま

すが、ともかく物理現象を理解・予測すると

き、ニュートンの運動方程式のような「数理

モデル」は大きな武器になります。

 数理モデル化の対象̶̶つまり数学の

応用先は、物理現象だけにとどまりません。

金融工学におけるブラック-ショールズ方

程式や、車の渋滞のセルオートマトンによ

るモデルなど、日常の社会現象・生命現象

にも盛んに使われています。情報科学的現

象も、その例外ではありません。グラフ理論

のグラフや、コンピュータの基礎たるチュー

リングマシン、さらに「プログラムの意味

論」、これらはすべて数理モデルです。

 このような数学と情報科学のはざまが、

ぼくの研究のフィールドです。

 研究では2つのことを心がけています。

1つめは「カッコいい数学を使ってカッコい

い数理モデルを作る」こと。言い換えると

「抽象数学で優雅に遊ぶ」ことです。何が

「カッコいい」のかは難しい問題だけれど、

数学者のあいだでは不思議とある程度の

合意があるようです。それは、「一般的なも

のはカッコいい」という見方です。

 例として、圏論という「数学のコトバ」を挙

げましょう。数学には、代数、幾何、解析……

というようにたくさんの分野があ

りますが、「この分野のこの定理は

違う分野のあの定理になんだか似

ているなあ。式に書くと別物なん

だけど」ということがよくあります。

この2つの定理を「実際同じもの」

として書けるようにするのが、抽象

的で一般的な圏論のコトバです(矢印をた

くさん使います。右図参照)。圏論を使うこ

とで、見た目の違いのウラにある「数学的

本質」にぐっと迫ることができます。カッコ

いいと思いませんか?

 2つめの心がけは、「インパクトある応用

上の成果を追求する」こと。つまり「情報科

学でしっかり働く」ことです。たとえば、よく

研究されている情報科学的対象Aの数理

モデルを、より一般的で抽象的な数学のコ

トバで書き換えたとしましょう。できあがっ

た数理モデルは、より一般的なものになっ

ています(定数aがパラメータpに変わるな

ど)。ここで、パラメータpに定数bを代入す

研究テーマ

■計算機科学における数学的構造■システム検証■並行プロセス論■量子プログラミング言語

FF X F ZF (beheh(c) )

beheh(c)

c finanal

X Z

モデルの一般化と応用

ふつうの計算

元のデータWebページ、ゲノム情報などの

大規模データ

変換後のデータ検索・変換結果

圧縮したデータ元データを生成するプログラム

(ラムダ式)非決定的システム

既存のモデル

Geometry of Interaction

Kleisli圏での余代数

圏論的なモデル

量子計算

確率的システム

新たなモデル

さまざまなシステムとその「ふるまい」の、圏論的特徴付け

高階モデル検査のデータ圧縮への応用

数理モデルとは?

高階モデル検査

応用いろいろ

ソフトウェアの高信頼化は待ったなしの課題

プログラム理論の奥深さと威力に魅せられて

●参考データ小林研究室:http://www-kb.is.s.u-tokyo.ac.jp/

研究テーマ

■プログラミング言語■プログラム検証・変換■高階モデル検査■ソフトウェアセキュリティ変換後の圧縮データ

検索・変換結果を生成するプログラム

圧縮 展開

高階モデル検査に基づく検索・変換

通常の検索・変換

圧縮 展開データの展開なしにデータの展開なしに検索・変換検索・変換

データの展開なしに検索・変換

Page 20: is2012 h1h4 fin - 東京大学 · 代がやってくるだろう。 30年後、30年後、いまよりも十億倍の計算能力を持ったコンピューいまよりも十億倍の計算能力を持ったコンピュー

TopCoder社が毎週オンラインで開催する、個人競技のコンテスト。3問の問題をいくつ正答できるかを競う。勝ち進むと、米国で開催される年に一度の世界大会に出られる。トップクラスのプレイヤーに与えられる「Red Coder」は、参戦者至高の勲章だ。

ACM/ICPC世界2000大学から2万人以上が参加する、大学対抗のプログラミングコンテスト。3人1チームで、制限時間内により多くの問題を、より短時間で解く。国内オンライン予選、アジア地区予選を勝ち抜けると、世界大会へ(ちなみに、東大チームは、世界大会の常連だ)。

TopCoder

●2002年〈ホノルル〉青い海の綺麗なワイキキビーチで、海――ではなくアルゴリズムの世界を力泳。制限時間内に最も多くの問題を、より短時間で正答したチームが勝者となる。時間配分を誤ってしまったものの、上位チームと日本のレベルに大きな開きがないことを体感。チームXXX-TOKYO/世界大会18位

世界大会には、強豪チームがたっぷり練習を積んでやってくる。課題や実験で練習時間が少なく、英語での出題というハンディは、作戦の工夫でカバー。2003年のチームlighthouseはあと1問で銀メダルまでこぎつけ、銅メダルを獲得した。

先輩の命を受けて、強豪ロシアの強化合宿に送り込まれたISer 2人。飛行機と夜行列車を乗り継いだ合宿地は、言葉は通じなくても、誰よりも速く問題を解けば認められる世界だった。その後、修行の甲斐あって手にしたタイトルがずしりと重い。

チームlighthouse/世界大会11位

●2006年〈サン・アントニオ〉テキサスはアラモ砦の近くにやってきたチームGNC。まずは京大チームと小手調べの練習会。そこで仕入れた解法が本戦でそっくり使え、ラッキー! そのとき出会った両大学のメンバーが、その後会社を起業(情報科学科の先輩たち→P.20)。チームGNC/世界大会19位

●2008年〈バンフ〉2008年の世界大会会場は、ロッキーの城と呼ばれるホテル。世界大会が東京だった前年参加者から、羨望の眼差しを向けられる。コンテストのラスト3分、会場に希望と焦りと憔悴がうず巻くなかで1問正答。13位にすべり込んだ。チームUnknown/世界大会13位

ICPCの世界大会に出場できるのは、1大学1チーム。そこで例年、出場をめぐって学内チームが激しい競争を繰り広げる。ISerを中心にしたチームはたびたび世界大会に進出してきたが、2009年は駒場生のモンスターチームHITORI++がISerのチームを抑えて出場権獲得。そのHITORI++も、進振りではめでたくISerとなってさらに腕を磨き、2010年世界大会(ハルピン)へ!チームHITORI++/世界大会20位

地区予選や世界大会では、お楽しみイベントもいろいろ。2007年地区予選では、『Javaチャレンジ』が併催された。課題は「鮭をたくさん獲れるように熊の動きを制御するAI」。kitsune-は鮭を追わずに、「ライバルの熊を追いかけ、途中に鮭がいたらとる」という奇策で善戦。対戦では相手の熊にぴたり貼りつく熊の動きで会場を笑いの渦に巻きこみ、決勝に進んだ。チームkitsune-/世界大会26位

TopCoder Open:wata/2010年Marathon部門1位[[iwi]]/2011年Algorithm部門第7位ACM/ICFP Programming Contest:Unagi:The Gathering/2011年2位

●2005年〈上海〉ところ変われば品変わる。2005年のマニラ地区予選で出た問題は、なんと自分たちで制限を設定しないと解けなかった(適当に制限を加えて突破)。こんなのアリか? 世界大会の上海では、真紅のチャイナドレスの案内嬢がずらりと並んでお出迎え。かわいらしい制服のアテンダントにもとり囲まれて、至福のひととき。チームGokuri-Squeeze

PROGRAMMING COMPETITION REPORT

競技プログラミングにチャレンジスゴ腕プレイヤーが集まる国際的なプログラミング・コンテスト。

そのオンライン競技場で、ISerの魂が熱く燃え上がります。歴代の健闘はいかに?

38