高専ロボコンの事業範囲「十分でない」世界に適合した技術者の育成を目指して

きりくずどう2015 年 09 月 25 日

Twitter における一連の「高専ロボコンと情報処理の地位の低さに関するやりとり」
を Togetter サービスでまとめたところ、19000View を超えることになった。そして、なぜこうも話がすれ違っているのだろうか、ということを自分なりに考えた結果、これは高専ロボコンあるいは高専という組織のアウトプットである技術者がどのようなポジションであるべきか、という話について合意が成立していないからだと、結論を出すに至った。
話をすすめるにあたって、まずは私の考える高専という組織のアウトプットである技術者が優位性をもつであろうポジションについて述べたいと思う。

図１

製品アーキテクチャと市場（『イノベーションへの解』P156 図 5-1 より）

図１に製品アーキテクチャと市場についての図を示す。モジュール式アーキテクチャ
は市場に存在する確立した I/F を利用してモジュール（部品・コンポーネント）を組み合わせ、スピードやコスト面において優位性を出すことができる。特に検証されたソフトウェア部品という思想はこの製品アーキテクチャに適合している。他にもミスミの部品を組み合わせた機構アセンブリや DIN レールと端子台で構築される制御システムなどもこのモジュール式製品アーキテクチャに該当するだろう。そして、これは I/F の組合せの問題なので、普通に高校を卒業した者であれば一定期間の訓練を行えばほぼ誰でもシステムを作り上げることができる。各コンポーネントは各コンポーネントメーカーによって設計が検証され、I/F の範囲内で動作が保証されている。それを守った組合せであればよい。それを行う者は別に工学的な教育を受けている必要はないのだ。
さて。その組合せによる製品アーキテクチャが競争力を得るのはどの時点からだろうか。クリステンセンによれば、それは「ユーザーが利用可能な性能」で決定することになる。つまりモジュール式アーキテクチャによる製品で実現可能な性能（購買指標というほうが正確かもしれない。利便性なども性能に含む。
）がユーザーが利用可能な性能に近づいた段階からモジュール式アーキテクチャによる製品や産業構造が競争力を持ち始めるということになる。では、モジュール式ではない、もうひとつの製品アーキテクチャ、相互依存的アーキテクチャの場合はどうか。
相互依存的アーキテクチャは性能が「十分でない」世界において競争力を持つ。この世界においてはユーザーが求める性能（利用可能な性能）にあらゆる製品が到達していない。場合によっては、モジュール式アーキテクチャを採用するためのコンポーネントが存在していないこともある。そういった世界ではコンポーネントを自分たちで作るとか、最終製品をスクラッチビルドするとか、そういったことになる。市場には確立したI/F などなく、すり合わせにより最終製品の機能を実現していくことになる。
この段階においては工学的な知識が重要になる。市販のコンポーネントを流用するにしてもブラックボックスの中を想定しなければならない。そして、工学的な知識だけでなく、機能部品を実装する能力やそれらを製品としてまとめあげる能力も求められる。
ここにおいて、ようやく高専ロボコンを経験した技術者の出番がやってくる。
図１の相互依存的アーキテクチャにおいて黒線で示した初期の部分が、高専ロボコン経験技術者の主戦場だと考える。十分ではない世界において自分なりの答えを形にすることが勝利条件となる場でこそ、彼らの真価は発揮されるのではないだろうか。
問題はこの部分が短命であり、かつ、市場としては小規模なことである。

図２および図３に示すのは、モジュール式アーキテクチャと相互依存的アーキテクチャのそれぞれが競争力を持つ段階における、産業バリューチェーンである。モジュール式アーキテクチャは産業規模がそれなりの大きさにならなければ成り立たない。サブコンポーネントが継続的に供給されるための利益が出る程度にバリューチェーンの下層まで流れる規模のお金がないと成立しないと言い換えてもいい。これに対して、相互依

図２

モジュール式アーキテクチャにおける産業バリューチェーン

存的アーキテクチャが競争力を持つには、ユーザーが求める性能を実現できるサブコンポーネントなどが出そろっていないことが前提となる。そのような段階では産業規模自体が小さく、ゆえに成り立たない要素も多くある。垂直統合によってユーザーが求める性能をなんとか引き出すことで、ユーザーからプレミアムをより多く引き出すことができ、高い利益率を最終製品から得ることができるだろう。しかし、規模は小さい。

図３

相互依存的アーキテクチャにおける産業バリューチェーン

非ロボコン経験者のソフトウェア技術者の方々が想定されている技術者というのは、彼らソフトウェア技術者が作ったソフトウェア部品モジュールを組み合わせて使う「組合せ作業者」のことだろう。技術者が既存のコンポーネントを「組合せ作業」によって利用することもある。むしろ、8 割方はそういう作業をしているというのが実感だ。しかし「組合せ作業」だけを目的とした「組合せ作業者」の育成を、技術者の育成とイコールだとするのは早計だろう。特に高専においては工学部相当の基礎工学がカリキュラムに含まれている。それは「組合せ作業者」にとどまることを制度が想定していないことだともいえる。
モジュール式アーキテクチャと相互依存的アーキテクチャはクリステンセンが『イノベーションの解』で書いているように相補的なものである。いずれか片方だけでよいというわけではない。それぞれに役割がある。
そして、相互依存的アーキテクチャで支えられる産業規模とその期間は比較的小さく短い。そのような状況に多数の者が適合する必要はない。高専卒業生がマイノリティであることは、少数者だけが適合していればよい、という状況にも合致するのではないかと思う。
ここまでが、高専という組織のアウトプットである技術者が優位性を持つポジションについての、私なりの見解である。これでまず、高専という組織が想定しているアウトプットとしての技術者の姿を多少なりとも想像していただけたのではないかと思う。

高専の想定アウトプットを踏まえたうえで、まずは高専ロボコンの位置付けについてみていきたい。
高専ロボコンは「ロボットコンテスト」と名乗ってしまっているがゆえに、ロボット技術者の育成を行うためのイベントと思われがちである。そこにも今回の一連のやりとりが発生した原因を見ることができるだろう。
だが、高専ロボコンはロボット技術者を育成するためのイベントではない。あくまで技術者教育の一環としてのイベントである。さらに言えば、その技術者教育が目指しているのは、モジュール式アーキテクチャの世界における組合せ作業者ではなく、相互依存的アーキテクチャが競争力をもつ「十分でない」世界における技術者である。
（2014年および 2015 年の森政弘教授のルールブックでの発言を参照されたい）
ロボット競技はあくまで題材である。ただ、参加者にも主催者にも視聴者にもメリットがあり適切な題材が学生が操作するロボットだった（過去形）というだけの話だ。

さて、では現状、ロボットという題材は適当なのだろうか。
ロボットの世界は既に図１における完全撤退点にかなり近づいている。ロボット用のOS でスタンダードが成立しつつあり、ロボット用のハードウェアコンポーネントも普及してきている。FA 用ロボットに関していえば、もう完全撤退点を 20 年近く前に通り過ぎているくらいだ。
（特殊用途ロボットについては永遠に撤退開始点に到達しないかもしれないが……）民生用ロボットも明らかにコモディティだ。SoftBank の Pepper は自律動作して会話もできて数十万円だ。数十万円も出せば自律 UAV だって買える。ルンバなら数万円で買える。ロボットの自律動作（シーケンス動作といったほうが正しいだろうか？）はコモディティになってしまった。
そんな中、テレビ映りのためだけに学生に操作させている、という誤解がうまれるのも仕方ないのかもしれない。そういった時勢ゆえに、ロボットを技術者教育の題材として扱うのはそろそろ限界なのかもしれない。だが、なかなか代わりのものは見つからないだろう。
高専ロボコンではモジュール式アーキテクチャの採用を縛るために意図的に（形式的とはいえ）コンポーネント予算の上限が与えられている。完成品の組合せというものに高専生が学生の時分から慣れてしまうことは適切ではない、という配慮だ。
（そういう縛りがあっても Kinect を使わざるおえないルールがあったり、Maxon 社のモーターが流行したり、いろいろあるのだが……）ただ、その思想もこういったやりとりが生まれるようでは理解を失っていくのだろうと思う。

ロボットという題材から離れられない。しかし、世間には学生の教育のためにモジュール式アーキテクチャを採用されないようにしている話をしても理解されない。そういった状況で、高専卒業生の現役技術者である我々が個人として何ができるのだろうか。
ひとつは「完成品ではないモジュールの提供」だと思う。モジュール式アーキテクチャの採用を忌避しているのは組合せ作業者になることを避けるためだ。組合せ作業者が生まれてしまうのは、インプットとアウトプットがあるブラックボックスに慣れてしまうからである。自分でボックスの中身を理解しなければインプットに対して適切なアウトプットが出せない、そういったモジュールを課外の講義や実習として提供していくことは手弁当でも可能だろう。
（実際、コーチという立場で実施されている方も多い）
また、モジュール式アーキテクチャと相互依存的アーキテクチャに関しての教育方針が理解されないとあきらめてしまっているのもよくないのだろう。これは産業競争力にもかかわる部分だ。産業の創出という段階に適した相互依存的アーキテクチャとそれに適した人材である高専卒業生、さらにそのパフォーマンスとしての高専ロボコン、というパッケージを我々卒業生も推していく必要があると思う。
（ガラパゴスといわれるのは、相互依存的アーキテクチャからモジュール式アーキテクチャへの移行段階で監督官庁や業界団体が下手をうつからなので、それはまた別の対策が必要）
別の手として、本冊子のような形式で技術や考え方を伝えていくのもよいと思う。これは書いている卒業生側も勉強になるし、正確な記述をすれば基礎教材として毎年使うことができる。高専ロボコンで知っていることが望ましい知識と基礎工学の講義内容を結びつけるのはなかなか簡単なことではなく、現役の技術者たちでも基礎工学の応用では悩む部分があるのだから、そういったことを冊子の形で伝えることができれば、カリキュラムの補強という意味でも有意義だろう。
非ロボコン経験者のソフトウェア技術者の方が欠けていると指摘されていた「検証されたソフトウェア部品、特に Validation & Verification の考え方」についても、ソフトウェアの品質保証に関する冊子を現役の組み込みソフトウェア技術者の方が書くことで現役の学生に伝えることができるのではないだろうか。そうすれば、高専ロボコン専用の共通ミドルウェア（検証されておりしかも完成品ではない）も実現できる可能性がある。

あとがき
高専ロボコンの参加者は 17 歳前後の学生である。我々が 17 歳のとき、どれほどのことを知っていただろうか。特別な人もいるかもしれない。しかし、優秀とはいえ 17歳である。若者にあまり多くを求めるのは酷ではないだろうか。また、それはせっかくの才能を磨滅させる行為でもある。
高専ロボコンに参加している学生は、そうでない者もいるが、学習意欲もあり技術に対して貪欲で知識を吸収する能力も高い。適切な提示ができれば新しい概念も理解してもらえるに違いない。大切なのは彼らが経験していないことですら「わかってもらうことをあきらめない」ことなのだと思う。