SF小説家・野尻抱介氏が、原始的な遊びを通して人類のテクノロジー史を辿り直す本連載。
前回はスリングショット猟の実践から、狩猟採集の営みとディープラーニングを比較対照しました。
人工知能や仮想現実などなど、先進技術を怖がらず、翻弄されず、つかず離れず「ぱられる=横並び」に生きていく。プレ・シンギュラリティ人類のたしなみを実践します。
1章 世界は計算でできている
このスクリーンショットはニコニコ動画の宇宙コミュ、にせぽこ氏 によるバーチャルキャスト配信の様子だ。ダイレクトビュー・モードでスタジオに入り、舞台裏を見せてもらった。配信画面とほぼ逆向きの視点なので、フレーム外にある国際宇宙ステーションのモデルが見えているし、アバターたちは背中を向けている。
こうしたVR世界に飛び込むと、世界が計算で成り立っていることを思い知らされる。そこにある風景、調度類、人物はすべてコンピューターの絶え間ない計算によって実現している。私はそのシステムの処理内容を知らないが、見えている部分から想像してみよう。
アバターが一歩動くとその骨格が関節部で連鎖しながら動き、全身に波及する。その骨格に結びついた無数の小さな平面、いわゆるポリゴンが位置を変える。にせぽこ氏が常用しているアバター、千駄ヶ谷渋は約35000ポリゴンからなっており、そのすべての頂点の位置を算出しなければならない。レイトレーシングや影の落ち方は省略ないし簡略化されているように見えるが、立体感や位置関係を示せる程度には描画されている。
周囲の物体と相互作用があるから、アバターが動くたびに衝突判定をしているはずだ。アバター自身の四肢や髪、衣類、コメントビューアのスクリーン、ギフトで投げ込まれる湯飲みや跳ね回る鮭などのガジェットに接触したかどうかを判定し、それがあればつかむ・放すなどの相互作用を生成する。幽霊のように他の物体を貫通することもあるが、その場合でも描画されるのは表面だけになる。この隠面除去処理だけでもたいしたものだと思う。
そんなアバターが10人から100人程度、同時に動く。そうしてできあがった世界が視点ごとに描画されて一枚の画面ができあがる。その画面はフレームレートぶん、つまり毎秒10回から数10回程度作り直されている。途方もない計算量が残像となって使い捨てられていく。
配信画面を眺めるだけならスマホでもできるが、VR空間で相互作用する参加形態だとPC側のクライアントに相当な計算負荷がかかる。VRchatで開催される大型イベントでは込み入ったワールドが用意され、同居するアバターも多いので、つよつよPCが必要だ。そういうワールドに入るたび、ハイエンドなゲーミングPCに買い換えたいと思う。ただし青色LEDがギラギラ光らないやつで。
こうした計算集約的な世界構築はシンギュラリティの基盤になるだろう。文明の担い手は有機知性から無機知性へ、世界はアトムからビットへ――つまり物質から情報へ移行してゆく。よく「ゲームの世界に引っ越したい」という人がいるが、幸か不幸か文明はその方向に向かっている。ただし現在のようなコンピューターを使うとは限らない、というのが本稿のテーマなので、終わりまで読んでほしい。
未来を洞察する手がかりは過去と現在にある。過去と現在の2点に定規を当てて延長線を引く。その線上に未来がある。これを外挿法という。ただしシンギュラリティは特異点なので、その先は予想できない。外挿法で見当がつくのはシンギュラリティの直前までだ。それでも、直前までわかれば収穫は大きい。物理学も極限と微分を使って未知と向き合い、成果を上げてきた。
というわけで今回から2回くらい?「計算」の過去、現在、未来を考えよう。
2章 魔術師ネイピアの大発明
1550年、スコットランドの裕福な領主の家に生まれ、21歳で男爵になったジョン・ネイピアはオカルティストで発明家で数学者という面白い人物だ。周囲からは魔術師と思われていたらしい。
こんな逸話がある。あるとき城内で盗みがあった。加担した従者を見つけるためにネイピアは一計を案じる。
「この黒い雄鶏は秘密を言い当てる。悪事をなした者が触れると、雄鶏は鳴くであろう」と言って、従者を一人ずつ、雄鶏のいる暗い部屋に入って鶏をなでるように命じた。全員の検分が終わっても雄鶏は鳴かなかった。ネイピアは従者たちを明るい部屋に集め、両手を上げるように命じた。一人を除く全員の手に煤がついていた。その一人が犯人だった。黒い雄鶏には煤がこすりつけてあったのだ。
オカルトのふりをして合理的な解決に結びつく面白い話だ。できすぎているので眉唾だが、そういう逸話とともに語られる人物である。
これは「ネイピアの骨」または「ネイピアの棒」と呼ばれる計算器具を自作したものだ。ネイピアはこれを1617年に発表した。
構造は単純で、九九の表を一列ずつ、棒に書き出したものだ。1の桁と10の桁の間には斜線が入る。
「3」の棒なら縦に3、6、9、12、15、18、21、24、27となる。10の桁と1の桁の間には斜線が入る。
314159 X 27 を計算してみよう。写真のように棒をピックアップして台の上に314159と並べる。すると31459に1~9を掛けた表ができあがる。
この表で「7」の行を見てみよう。2/1 /7 2/8 /7 3/5 6/3 となっている。/で囲まれた数字は同じ桁なので足し合わせる。桁上がりがあれば上の桁に加える。答えは2199113。この手法は古くから世界各地にあり、格子乗算法という。慣れると足し合わせは一瞥でできるようになるが、複数桁の計算では写真のように筆算を併用する。
「2」の行を見ると/6 /2 /8 /2 1/ 1/1/8 なので628318。10の桁なので一桁左にずらして2199113と足すと8482293。これが答えだ。足し算は筆算でやる。つまりネイピアの骨は掛け算を足し算に変換してくれる器具だ。
「なあんだ、九九を覚えてる我々なら不要じゃんか。これだから欧米人は」と思うかもしれないが、欧米にも九九はある。12進法があるイギリスでは12×12まであったりする。それに九九を使って筆算で掛け算するよりはネイピアの骨+筆算の足し算のほうがやや楽だ。九九を覚える時間を他のことに使ったほうが有益、という考え方もあるだろう。
ネイピアの骨は割り算になるとさらに有効だ。8482293÷314159を解いてみよう。台のセッティングは先の写真のままでいい。被除数の上6桁、848229以下で最大の行を探す。「3」行だと最上位が9だから多すぎる。「2」行の628318が該当する。該当する行を探すときは上位の数だけ比較すればいいので簡単だ。
848229から628318を引いて219911、それに被除数の1桁めにある3をつけて2199113、それ以下で最大の行を探すと「7」行がぴったり合う。商は27となる。
ネイピアは「骨」に先立って対数を発明している。実はこの対数こそ彼の最大の業績だ。対数の概念に最初に到達したのは別の人物だが、ネイピアは20年かけて対数表をつくりあげ、普及に貢献した。
対数は数学において重要な発明だが、実用面での貢献も大きい。対数はネイピアの骨とはまったく異なるアプローチで掛け算を足し算に、割り算を引き算に転換できる。ネイピアの対数は現在の対数とはちょっと異なるのだが、本質は変わらない。
これはネイピアの発表から270年後、ボストンで1885年に刊行された対数表――正確には『5桁 対数および三角関数表』だ。61ページからなる書籍だが、これもひとつの計算器具である。
対数表では普通、10を底とした常用対数が使われる。どんなものかというと「1000は10の3乗である」を対数でいうと「1000の常用対数は3」となる。「314は10の2.4969乗ぐらい」を対数でいうと「314の常用対数は2.4969ぐらい」となる。
この対数表は1から1000までの対数が載っている。それ以外の数字は小数点を動かして対応する。
6415×3237を計算してみよう。1000未満の値にしたいので、641.5×323.7×100、としておく。対数表を引くと641.5の常用対数は2.80720、323.7の常用対数は2.51014。
ふたつの常用対数を足すと5.31734。答えは10の5乗ちょっと、ということになる。5桁は対数表の範囲外なので、1000で割って扱う。1000の常用対数は3。対数では割り算は引き算だから、5.3124から3を引いて、2.31734 + 3 と考える。
対数の足し算が終わったら、それを普通の数(真数)に戻す。対数表で2.3174を探すと、いちばん近い真数は207.7。これに100と1000を掛けて20,770,000。電卓で計算すると20,765,355。誤差はあるが仕様だ。
対数表の説明のため常用対数を使ったが、ネイピアの十八番は自然対数で、その底はネイピア数と呼ばれている。ネイピア数はeと表記される。円周率と並ぶ重要な定数で、2.71828…と無限に続く。覚え方は鮒一鉢二鉢~(ふなひとはちふたはち~)だ。
ネイピア数は1年で元の2倍になる利子の複利計算をどんどん細かくしていったときの極限を示す値だ。
年利100%の貯金は1年後に2倍になる。それを年に2回の配当にするかわり利率を1/2の50%にすると、1年後には2.25倍になる。年に10回、利率も1/10にすると、1年後には2.59倍になる。どんどん小刻みにしていくと、2.7倍くらいで頭打ちになる。この極限の値がネイピア数eだ。
ネイピア数には宇宙の真理が宿っていて、物事の成長する速さが量に比例する現象を表している。成長して量が増えると成長の度合いも増えて、グラフはどんどん急傾斜になるのだが、そこにeが顔を出す。
数学史上最も美しいといわれるオイラーの等式にもeが登場する。この等式は数学のすべてが宿る人類の至宝と呼ばれていて、よくTシャツにもあしらわれる。
ネイピアが対数を発表して数年後の1620年代、ウイリアム・オートレッドとエドマンド・ガンターが相次いで計算尺を発明した。どちらが先かははっきりしない。最初期の計算尺は木に目盛りを刻んだ、なんだかよくわからないものだが、それから三世紀にわたって改良されていった。
計算尺は物差しの形にした対数表だ。基本部分は1から10までの数を対数目盛りで表している。目盛りは10までだが、対数表と同様、大きい数字も仮数部と指数部に分けて扱えば制約はない。ただし精度には限界があって、有効数字は3桁ぐらいだ。
この写真は計算尺の仕組みを示したものだ。ふたつの物差しを継ぎ足すように使うと足し算・引き算ができる。この写真では 15 + 8 = 23 を示している。
計算尺も同じことをしている。写真の下は学習用の素朴なマンハイム型計算尺で、リコーの製品だ。固定尺の間に滑尺(すべりしゃく、かっしゃく)が挟まれていて、左右にスライドできる。これを使って、目盛りの値を足したり引いたりする。しかし目盛りは対数なので、足し算は掛け算になり、引き算は割り算になる。ヘアラインのついた透明な部品はカーソルといい、離れた尺の値を読んだり、値を一時保存するのに使う。
これはブラウザ上で操作できる計算尺シミュレータのスクリーンショットだ。
この計算尺には8本の尺があり、それぞれの尺の左端に名前が記されている。上からDF尺、CF尺、CIF尺、CI尺、C尺、D尺、A尺、K尺だ。
最も多用するC尺とD尺は左端が1、右端が10で真ん中は3ぐらい。対数尺なので右に向かうにつれて目盛りは密になる。目盛りの間隔と精度も場所によって変わるので、慣れないうちは間違いやすい。
この画像ではC尺の1をD尺の1.5に合わせている。ほかの場所を見ると、こんな関係になっている。
C尺 D尺
1 1.5
2 3
3 4.5
4 6
5 7.5
つまりC尺とD尺はどの場所も2:3の関係になっている。これを比例計算という。一回の操作で数値空間全体を演算できてしまうのが計算尺の素晴らしいところだ。
もうひとつ、ぜひ紹介したいのがA尺の働きだ。これは1~100までの目盛りがあり、D尺の2乗になっている。見比べてみよう。
A尺 D尺
1 1
2 1.414 (一夜一夜に人見頃)
3 1.732 (人並みにおごれや)
4 2
9 3
つまりA尺の平方根がD尺に現れている。C尺のセッティングと組み合わせると、A尺上の任意の値xについて「ルートxの2/3」がC尺に現れている。このように尺を組み合わせることで複合した計算が一度にできてしまう。この点では電卓やコンピュータより優れているかもしれない。次の章でこの機能を生かした計算を実演する。
3章 計算尺と宇宙飛行
これは1959年のSF雑誌、アスタウンディング・サイエンス・フィクションの有名な表紙だ。光線銃を片手に軽金属の梯子を登ってきた宇宙海賊は、口に計算尺を咥えている。この時代、将来宇宙で活動する人々は計算尺を手放さないと考えられていた。我々がスマホを持ち歩くようなものだろうか。
1950年代のR・A・ハインラインのSF小説でも宇宙航行に計算尺が使われていて、航法計算の上手下手を競ったりしている。計算の名手、その名もスリップスティック・リビィ(計算尺リヴィ)なる人物が登場して、ちょっとあこがれたものだった。
このような古いSFの計算尺の描写は、いまでは笑い種になっている。「計算尺で宇宙船の航法計算なんてできっこないでしょ」という。しかし検討してみると、実はそれほど非現実的ではない。
まず、このようなSFに登場するロケットは核エネルギーを使ったものが多く、かなり融通が利く。現在の化学燃料ロケットは軌道変更能力に余裕がなく、どこかで計画値を外れたとたん破綻してしまう。当時のSF作家は、人類が非力な化学燃料ロケットにいつまでも頼っているとは考えなかった。核ロケットなら飛行中に目的地を変更することも不可能ではない。
次に計算の内容だ。現代の軌道設計はコンピューターをぶん回して数値積分を繰り返す。これは計算尺ではとても無理だ。しかし解析解がある場合は計算尺でもできる場合がある。たとえば地球の周回軌道での軌道変更なら、(ほぼ)二体問題なので解析解がある。多少精度が悪くても、軌道修正を繰り返して目標に近づけていけばいい。ジェミニ計画では計算尺を使ってランデヴーを成功させた宇宙飛行士がいた。アポロ計画の軌道計算プログラムは円周率を「3.14」ぽっきりで定義しているそうだから、計算尺並の有効桁でも役に立つのだろう。
物は試しだ。ホーマントランスファーという軌道変更を計算尺でやってみよう。高度500kmの地球低軌道から高度35786kmの静止軌道への移行を想定する。その楕円軌道の近地点で1回、遠地点で1回噴射する。宇宙船には加速度を積算する計器が搭載されていて、飛行士はそれを見ながら、必要な増速が得られたら噴射を止める。その増速量がわかれば航法計算ができたことになる。簡単のため面外制御は行わない。同じ軌道面で高度だけを変えるので、噴射時の姿勢は接線方向だ。加速はインパルス近似、つまり瞬間的に増速が行われるものとみなす。
ご覧のとおり、4分半で計算できた。結果は近地点ΔV1が2.36、遠地点ΔV2が1.445となった。電卓で検算してみると2.3695と1.4460だったから充分だろう。
ホーマントランスファーには開平計算がたくさん出てくるが、動画を見ても、どこでやったか気がつかないだろう。前の章で説明したようにA尺で乗除算して、カーソルを使ってD尺に移行することで開平している。ほとんど手間をかけずに開平できるのが計算尺の強味だ。そろばんや機械式計算器で開平するとかなり時間がかかる。
計算に使ったのはヘンミ計算尺で最強のNo.260だ。計算尺の強さとは何かというと、最大要因は尺の数だろうか。リコーの学習用は6本だったが、No.260は両面あわせて25本の尺を持つ。長さは長いほど精度が上がるが、携帯性や扱いやすさとの兼ね合いもあるのでいちがいには決められない。標準は10インチで、ポケットに入る5インチサイズも多い。一説によれば工学部の学生は10インチ計算尺をホルスターに入れて腰に吊り、理学部生は5インチを胸ポケットに挿す傾向があったという。
以下に手持ちのつよつよ計算尺を示しておこう。
右側の丸いのは現在も生産を続けている日本の計算尺メーカー、コンサイスのNo.300。同社の汎用計算尺では最強だ。
直線型のものは上からリコー No.102、先に述べた学習用で尺は6本。
アポロ宇宙船に搭載されたピケットN600-ES。コンパクトな5インチサイズだ。
ピケット最強のN4-ES。尺の構成が普通と違うので、これを最強とするには異論もある。
動画で使ったヘンミNo.260、機械工学用。かつてヘンミ計算尺は世界シェアの8割を占め、外国人への贈り物にするととても喜ばれたと聞く。フロリダの博物館にアポロ計画で技術者が使った計算尺が展示されていたが、それもヘンミ製だった。ヘンミ計算尺はカーソル線が目盛線より細いので読み取りやすく、積層した竹から削り出された滑尺の動きはバターのように滑らかだ。こうしたスペックに現れない物理的な工夫が計算精度を上げている。
いちばん下はファーバー・カステル2/83N。30本の尺を持つ、世界最強の計算尺と言われているものだ。10年くらい前まで製造されていた。いずれもネットオークションでわりあい簡単に入手できる。
手っ取り早く計算尺を試してみたい人に。PCブラウザで使える計算尺シミュレータがこちらに集められている 。取扱説明書もネットに転がっているので、その例題を順にやっていけば理解できる。
スマホアプリもあるので「slide rule」で検索してみるといいだろう。
計算尺は17世紀はじめから350年にわたって人類の文明を担った。四則演算のできる電卓が登場しても、計算尺はまだ優位を保っていた。計算尺は開平計算やべき乗、三角関数が使えたからだ。
しかし1972年にヒューレット・パッカードの関数電卓HP-35が発売されると、計算尺はまもなく姿を消した。1980年頃、名古屋大須のジャンク屋の店先に計算尺が山積みになっていた。ヘンミの立派な両面計算尺が一本1000円だった。
私は学校で計算尺を習った最後の世代だ。1973年、中学生の私は数学の授業で計算尺に出会った。先に示したような学習用の計算尺が配られ、教師は指導用の長さ1m以上ある計算尺を黒板の前に掲げて操作を示した。滑尺を動かすだけで魔法のように計算できるのに感動して、プラスチック板で自作したりした。
計算尺終焉の年、1972年はたった50年前だ。その時までに成し遂げられたことのなんと多いことか。
マンハッタン計画で作られた最初の原子爆弾は1945年。
世界初の原子力空母エンタープライズの就役は1961年。
アポロ計画の有人月着陸が1969年。IBMの大型汎用コンピューターが導入されて、地球ー月ー宇宙船からなる三体問題を解いたが、多くの場面では計算尺が使われていた。その様子は映画『アポロ13』にも登場する。
911テロで破壊された世界貿易センタービルは1966年に起工し、1973年に落成した。設計段階では計算尺が使われたにちがいない。
ロッキードの超音速偵察機SR-71は「計算尺で設計された最後の航空機」と言われている。その初飛行は1964年。
もちろん、クフ王のピラミッド、東大寺と大仏、ベルサイユ宮殿、タージ・マハル、パナマ運河、金門橋、戦艦大和、フーバーダムも電子計算機の助けなしに作られた。
あらためて、冒頭で述べたVR空間の計算量と、ネイピアの骨や対数表、計算尺の営みを較べてみてほしい。たった一回の掛け算に、先人たちがどれほどの労力を払ったか。思えば遠くにきたもんだ、としみじみ思うことだろう。
それは同時に「何を計算しないか」の判断でもあった。限られた計算リソースを何に使い、何で代用するか。現代に生きる我々の大多数はその意識を持たず、呼吸するように膨大な計算を実行している。そうなったのはつい最近のことだ。
特撮映画を見比べてみればわかるだろう。CGが使えなかった頃はミニチュアセットを作り、火薬で爆破したり火をつけて燃やしたりしていた。それは人間がコンピュータに計算させる代わりに、物質そのものに計算させていたことになる。ミニチュアの戦艦大和の船首波が不自然に粗いのは、水の物性がそのように計算するからだ。
人類の計算量はシンギュラリティに向けて増大していくだろう。しかしそこに到達してからは、何が計算の主体になるかわからない。我々が考えているようなコンピューターで、SFに登場するような、現実と見分けがつかない電脳空間を構築できるだろうか?
35000ポリゴンのアバター運用は膨大な計算量をともなうが、それでもはりぼての人体を描いているにすぎない。中身まで再現できるリアルなモデルを構築できるだろうか? 人体には37兆個の細胞があり、個々の細胞は30億個のタンパク質があると見積もられている。そのタンパク質分子1個を0.1秒シミュレートするのにスパコンで数か月かかる。人間一人ぶんの全タンパク質に1個ずつスパコンを割り当てるとしよう。そのスパコンは技術革新によってリアルタイムでタンパク質をシミュレートでき、体積はたったの1立方mしかない。それでも全体は直径6万キロの球体になる。地球の4倍以上だ。それならばタンパク質自身に計算させようという発想もでてくるだろう。
この記事を読んで手計算の非力さを思い知ったと思うが、その人体はスパコンなど及びもつかない計算を続けていることを忘れずにいよう。自然が手強い相手だというのはそういうことだ。
野尻抱介
SF作家、Maker、ニコニコ技術部員。1961年生まれ。三重県津市在住。計測制御・CADのプログラマー、ゲームデザイナーをへて専業作家になったが、現在は狩猟を通して自給自足を模索する兼業作家。『ふわふわの泉』『太陽の簒奪者』『沈黙のフライバイ』『南極点のピアピア動画』ほかで星雲賞7回受賞。宇宙作家クラブ会員。第一種銃猟免許、わな猟免許所持、第三級アマチュア無線技師。JQ2OYC。Twitter ID @nojiri_h