1. Survey/textbooks
    解説・教科書
  2. Report
    活動報告
  3. Media Release
    メディア掲載
  4. Publication
    論文・出版
  5. Discussions on Studies of Design
    デザイン学論考

情報学領域概論科目「情報通信技術のデザイン」の報告

本年度から開始した情報学領域概論科目「情報通信技術のデザイン」は、招待講演、ワークショップ、高校生への発表会など新しい試みを含むものとなった。以下、その概要を報告する。

1. 概論科目の目標

情報通信技術におけるデザインとはどのようなものだっただろうか。コンピュータと通信網は人類が生み出した最も複雑な人工物だろう。情報通信技術の社会的影響が拡大する一方で、情報システムの構造は、基盤技術の高速化、高集積化、広帯域化によって、開発者本人の理解を超えるほどに複雑化した。専門性による分化により、情報通信技術のデザインを包括的に知ることが困難となっている。
情報通信技術が用いてきたデザイン手法を整理するのが「情報通信技術のデザイン」の目標であるが、それには数年をかけた十分な検討が必要である。従って、以下は出発点に過ぎないが、その手法は(1)複雑さを制御するための階層的抽象化、(2)論理を物理で実現する際のトレードオフ、(3)受容性を高めるための人と社会の模倣ではないかと仮定する。
 階層的抽象化は、ソフトウェア設計、回路設計、通信プロトコルなど情報通信技術の至る所に現れる。この支配的な手法があるが故に、複雑な論理システムが実装可能となった。例えばソフトウェア設計では、構造化プログラミング、段階的抽象化、オブジェクト指向、モジュール設計など、階層的抽象化の実例は枚挙に暇がない。Jeannette M. Wing氏は文献1)で、この階層的抽象化を、コンピュータサイエンス的な思考(computational thinking)の中心においている。
 階層的抽象化が論理のデザイン手法であったのに対し、トレードオフは実装のデザイン手法である。論理を物理で実現する場合には、その実装方法により様々なトレードオフが生じる。コストとパフォーマンス、記憶容量と実行速度などはその典型である。こうしたトレードオフは、その時々の技術状況と利用状況を勘案して、様々に解決が図られてきた。プログラミング言語やコンピュータアーキテクチャなど、内部構造と外部環境のインタフェースのデザインにも、トレードオフが働いている。例えば、C++とObjective-Cは、提案された当時の技術状況では、性能面からC++を選ばざるを得なかった。今日、iPhoneでObjective-Cが採用されているのは、コンピュータの性能向上の結果、トレードオフに変化が生じたからである。
 ところで、階層的抽象化とトレードオフという2つの手法は、競合することがある。階層的抽象化は下位の層の論理を隠蔽するため、システムの物理的な振る舞いを見えにくくする。そこで、階層的抽象化による論理の簡明化と、実行性能などの物理的な振る舞いの明瞭化のどちらに重きを置くかというメタな選択肢が生じる。
 人と社会の模倣は、ヒューマンインタフェースやインタラクションのデザイン手法である。デスクトップメタファーに代表される直接操作(direct manipulation)、人を模したエージェントインタフェースなどが、操作性を向上させるために用いられてきた。例えばネット上のショッピングモールには、現実社会のショッピングのメタファが各所に用いられている。「カートに入れる」などは、日常の模倣の典型例だろう。

2. 招待講演

前章の仮説を情報通信技術の様々なレイヤで検証するために、佐藤高史先生、安島雄一郎先生、守倉正博先生、まつもとひろゆき先生、五十嵐健夫先生、喜連川優先生に招待講義をお願いした。本科目の履修生は10名程度にすぎないが、招待講演は情報学研究科に公開したため、常に60~80名が参加し盛況であった。以下に、情報通信技術のデザインという観点から印象に残ったものをまとめる。

招待講演のポスター

招待講演のポスター

(1) LSIのデザイン(佐藤高史先生)
LSIのデザインは階層的抽象化の典型である。今日では、アーキテクチャ設計はプログラミング言語Cで記述されている。それが幾つかの階層を経て、最終的には100Gオーダーのトランジスタに自動展開される。しかしながら、性能と生産性のトレードオフが重要となる場合には、各階層で人手のチューニングが行われている。階層横断的なチューニングはコンダクタに相当する経験豊かな技術者の活躍の場となっている。
 LSIの集積度の幾何級数的な向上はムーアの法則と呼ばれる。この驚くべき曲線に物理学的な根拠があるわけではない。この曲線は、LSIに携わる技術者の情熱が生み出したものである。情報通信技術の上位層の研究者や技術者の夢は、LSI技術者の情熱によって支えられてきた。

(2) コンピュータアーキテクチャのデザイン(安島雄一郎先生)
京のデザインは性能と信頼性などのトレードオフの典型である。今回、目標とされた10PFlopsの性能の実現は、思いのほか容易であったそうだ(50PFlops程度までは設計できたと聞く)。このため、余力は信頼性に費やされた。その結果、27時間に及ぶベンチマークを、1つのプロセサの故障もなく、1回のテストでクリアすることに成功している。
 京に代表されるスーパーコンピュータは市販のプロセサをベースに開発されている。京の場合には、プロセサに若干手を加えられたが、市販品がそのまま使われる場合もある。そうなると、技術の中心はプロセサそのものから、多くのプロセサを繋ぐインターコネクトに移る。京では、信頼性に優れた6次元メッシュ/トーラスが開発され使用されている。

(3) ネットワークのデザイン(守倉正博先生)
ネットワークのデザインはプロトコルスタックのような階層的抽象化が講義されることが多いが、近年は、無線・有線などのトレードオフの変化が顕著である。こうした変化の引き金が社会的ニーズであるということが、ネットワークデザインの特徴である。例えば、電話などの「通信」は、従来は有線であったが、今日では携帯電話などの無線が主体となっている。一方「放送」は、従来は無線が中心であったが、今日ではケーブルTVなどの有線が中心となってきた。
 さらに有線と無線の組み合わせが、帯域資源の枯渇によって求められている。携帯電話やスマートフォンの通信量は無線帯域の限界を超えつつある。しかし、例えば、我が国の場合には、携帯電話やスマートフォンの利用は帰宅後の深夜にピークを迎えることが分かっている。そのため、携帯電話やスマートフォンのトラフィックを、家庭内の無線LANを介して有線へと流すことが検討されている。

(4) プログラミング言語のデザイン(まつもとひろゆき先生)
プログラミング言語は、階層的抽象化の最上位に位置し、機械(コンピュータ)と人間(プログラマ)の接触面を規定する。トレードオフの観点からは、性能と生産性がデザインに影響する。過去においては性能が重視されたが、今日ではコンピュータの性能が十分に向上したため、生産性がより重要となってきている。生産性を向上させるための使いやすさという観点からは、プログラミング言語は単純すぎても複雑すぎても、多くのプログラマに利用されることはない。Dmitry Fadeyevによるユーザインタフェースの8つの条件、Clear, Concise, Familiar, Responsive, Consistent, Attractive, Efficient, Forgivingがプログラミング言語にも求められる。
 プログラミング言語は、多くの場合、少人数によりデザインされ、コミュニティによって支えられ普及して行く。Rubyも例外ではない。提案者のまつもと氏の「自分は幸運であった」という言葉は印象的である。多くの言語が提案されるが、広く社会に普及する言語は十数言語にすぎない。こうした社会的選択がプロセスに含まれているのも、プログラミング言語のデザインの特徴である。そのため、プログラミング言語には歴史的な正統性も求められる。多くのプログラマに支持されて来たアイデアは、新しいプログラミング言語にも引き継がれている。

(5) インタフェースのデザイン(五十嵐健夫先生)
インタフェースのデザインは、人と社会の模倣の典型である。人の高次の知覚や推論を模擬することが、使いやすいインタフェースを導く。一方、技術をブラックボックス化する抽象的階層化とは、思想的に対極にあると言えなくもない。人の持つあらゆる認知的能力を駆使して創作する、創作対象を意のままに操ることを意図する技術だからである。
 インタフェースのデザインは、個人の表現や生産を支援するために進化しつつある。最近では特に、デジタル(パーソナル)ファブリケーションへの期待が、インタフェース研究の重要さを高めている。生産されるものが物理空間におかれるものである場合には、物理的制約を満たしつつデザインを進めるために、リアルタイムなインタラクションが可能な高速アルゴリズムが求められる。

招待講演の様子(五十嵐健夫先生)

招待講演の様子(五十嵐健夫先生)

(6) データのデザイン(喜連川優先生)
データのデザインは、当初掲げた3つの仮説のいずれにも当てはまらないように思える。大量データの分析には、モデルに依存しない分析から、高度なモデルを利用するものまで様々な手法が用いられる。そして、大量データが活用されるためには、それらのデータを標準的なフォーマットで収集蓄積し公開利用するシステムが存在しなければならない。従って、データ、モデル、システムの総体がデザインされなければならない。今後、様々なトライアルの中で、そうしたデザインパターンが蓄積されていくだろう。
 データのデザインは、ビッグデータの時代に重要さを増している。大量データの分析により、社会に資する様々なシステムが生み出されるようになる。例えば、風のデータが蓄積、公開されると、それを用いた風力発電の設置場所を提案するビジネスを生み出される。今後は、データの収取、蓄積、公開、利用の循環を促すエコシステム実現のための法制度を含めた制度設計が重要となる。情報通信技術のデザインの支配的な原理の一つとして、社会システムのデザインが必要となる好い例だろう。

3. 得られた知見

招待講演とその後の議論から生まれた知見は以下のようなものである。即ち、情報通信技術のデザインは、階層的抽象化トレードオフ人と社会の模倣、さらにエコシステムという普遍的な原理と共に、幾何級数的な技術進歩と社会への急速な浸透とフィードバックという情報通信技術特有のダイナミクスに支えられている。

(1) 幾何級数的な技術進歩
情報通信技術の様々なレイヤに共通するのはムーアの法則が示す幾何級数的な技術進歩である。ムーアの法則に従うLSIの技術進歩を予測して通信ネットワークが設計される、コンピュータの処理速度やネットワークの通信容量の幾何級数的な向上がデータの幾何級数的な増大を生み出しているなど、情報通信技術のデザインを語るのに幾何級数的な技術進歩を避けて通ることはできない。

(2) 社会への急速な浸透とフィードバック
情報通信技術のデザインで特徴的なのは社会からのフィードバックである。これは、社会的受容性を高めるよう機能やユーザビリティが改善される、という普遍的な事柄を述べているのではない。例えば、通信ネットワーク技術が携帯電話の普及に伴い、基盤となるシステムが有線から無線へと移行し、そして今また有線の利用が再度検討されている。また、京スーパーコンピュータがサーバー用のプロセサ数万個で開発されたのは、サーバーの普及によるプロセサ価格の低廉化によるものだが、今後はモバイルデバイスのプロセサがスーパーコンピュータ開発に用いられる。情報通信技術のデザインは、その最も基盤的なレイヤでさえ、エンドユーザの動向に左右されている。

では、今後の情報通信技術のデザインにはどのような視点が新たに必要となるだろうか。かつてローマクラブの「成長の限界」が示したように、幾何級数的な成長は有限の地球資源との間で矛盾を生じさせる。情報通信技術の幾何級数的な進歩がサイバー空間の中に閉じていればよいが、物理空間や実社会と接点が広がれば様々な問題を生じさせる。LSIやスーパーコンピュータによる消費電力の問題、データのエコシステムの在り方など、今後の情報通信技術のデザインは、幾何級数的な技術進歩と物理空間や実社会の制約との矛盾を解決する方向に進んで行かざるを得ないと思われる。こうした知見を、来年の科目設計へと継承してゆきたい。

なお、本科目の履修生の評価をどうすべきか悩ましいところであった。通常の試験は科目の主旨に合致しない。まず、招待講演で学んだことを視覚化するために2日間のワークショップを開催した。講師としては須永剛司先生にご指導いただいた。そのプロセスはスライド3)にまとめられている。ワークショップでは、招待講演の振り返りを行い、学んだ内容をスライドや造形により表現しようとした。さらに、京都市内の西京高校、堀川高校の12名の学生を招待し、本科目の履修生がワークショップでまとめた結果の発表を試みた。

ワークショップの風景

ワークショップの風景

高校生への説明会

高校生への説明会

高校生を説明のターゲットとすることで、情報通信技術の全体像を伝えなければならないという状況を生み出した。この企画には、西京高校の藤岡健史先生には大変お世話になった。また、この発表会は毎日新聞に報道された。結局、履修生の評価は、ワークショップによるグループワーク、発表会、そして、全てが終了した後に情報通信技術のデザインを小論文としてまとめることで行った。教員にとっても履修生にとっても記憶に残る新設科目となった。

参考文献

1) J. M. Wing: Computational Thinking, CACM Viewpoint, 33-35, 2006.
2) ドネラ H.メドウズ: 成長の限界―ローマ・クラブ「人類の危機」レポート, 1972.
3) 須永剛司: 「ICTのデザイン」授業で学んだことを視覚表現するワークショップ, スライド, 2013.
(文責:石田 亨)