『最短経路の旅 レナのふしぎな数学の旅』"Das Geheimnis des kürzesten Weges" 読了

 下記の記事を読んで、出てくる本を読んでみようかと思って借りた本。『プロセッサを支える技術』『ハッカーと画家』『見て試してわかる機械学習アルゴリズムの仕組み』も読んでみたい気がしましたが、図書館蔵書なしですし、この本一冊でも荷が重く、歯が立たないと感じたので、ほかの本を読んでも、右から左に受け流す以外何が出来たかと。

[B! プログラミング] Google Japan Blog: エンジニアが厳選した 10 冊を、次世代のプログラミングを担う皆さんに

japan.googleblog.com

最短経路の本 レナのふしぎな数学の旅

最短経路の本 レナのふしぎな数学の旅

 

現在は丸善から売られているようで、以前のシュレディンガー・ねこ社、否、シュプリンガー・ジャパン社はどうなったならと検索したら、和書事業を同社から丸善に譲渡したとのこと。

シュプリンガー・ジャパン - Wikipedia

最短経路の本

最短経路の本

 

 シュプリンガー版はハードカバーです。値段も相応に高いですが、紙質もいいですし(ツルツルでなく落ち着いた紙質)、何より、図版がすべてオールカラーなので、IT業界やはり羽振りがいいなと。オイラー閉路など、色分けしないと分かりにくい図が多いので、その意味でもカラー必須ですが、それ以外に、ドイツの美しい風物と四季折々の写真が随所に挟まれていて、読者のしょぼしょぼした目を楽しませてくれます。舞台は「ドイツの隠れた首都」(頁5)ミュニックですので、風景もしぜんその周辺になります。頁310:シュタルンベルガー湖、頁145:イザール川の岸辺、頁110:英国風庭園の中国様式の塔の前のビアガーデン、頁55、ケーヒニ広場のプロピュライオン(列柱門)とグリプトテーク(古代彫刻美術館)…

シュタルンベルク湖 - Wikipedia

イーザル川 - Wikipedia

エングリッシャーガルテン - Wikipedia

ただ、表紙の絵を描いた人や、装幀者の名前が、奥付等目を皿のようにしても見つけられず、その辺が如何にも出版事業に後発参入した会社って感じでした。

Das Geheimnis des kuerzesten Weges: Ein mathematisches Abenteuer

Das Geheimnis des kuerzesten Weges: Ein mathematisches Abenteuer

 

 原著の表紙は、主人公である15歳の少女って、ドイツだとこうなんよ、というのがよく分かる写真で、これをそのまま使わず、童話風の表紙絵にしてしまった日本は、やはり日本なんだと思います。

「まえがき」「最後に」「訳者あとがき」「索引」あり。カバー折に原著者の顔写真と、ドイツ語からの直訳である旨注記(英語を経由していない)。

まえがき

原書編集部より ―― 本書ではインターネット上のサイトについての言及がなされている.残念ながら,それらのページの内容が第三者著作権を侵害していないかどうかを完全に調査することはできなかった.場合によっては,リンク先のウェブサイトで著作権の侵害が行われているかもしれない。読者の側で、十分な注意を払っていただければ幸いである.

とあるように、「お借りした画像」やウェブのキャプチャー画面も相当にあります。頁26を見ると、邦訳時に、いちおうぜんぶURLが生きてるかチェックしたようで(その順番が最適化された順序かどうかは不明)デッドリンクだが類似サイトあり、などの訳注があったりします。カオス。下記は頁105。

f:id:stantsiya_iriya:20191222173358j:plain

Zum 5. Mal in zehn Tagen:200 000 Pendler saßen fest ChaosBahn Die Wut wächst!大見出しでカオス(Chaos)の S と市電(S-Bahn)の S をかけてミュンヘン市内のダイヤの混乱を伝える記事. tz, 14. 2. 2003

ここまでの引用で分かるとおり、日本語の文章でも句読点は日本語のそれでなく、カンマとピリオドです。横書きだからなのか。

lab.pasona.co.jp

15歳の主人公がセーフ検索とかなしで自由にネットサーフィンしている点などは、まだまだ性善説に基づく甘い幻想が世の知識階級に蔓延してた時代と思います。まえがきには、本書引用のURLはすべて執筆時には無料サイトだったが、読者が見に行く時には有料サイトになってたり、移転したり、消えてたりするかもしれない、それはつまり「現実世界にようこそ!」であると書いています。ヒカキン。頁146にはフロッピーディスク登場。

 https://upload.wikimedia.org/wikipedia/commons/5/5d/Konigsberg_bridges.pngこの15歳の女の子が作中何を食べてるかというと、レンチンのピザとか、街中のドネルケバブケバブサンド買って食べながら歩いたりとかです。フィッシュアンドチップズや、冷食ドリアは出ない。頁150、ケーニヒスベルグの橋の問題(左の図の橋をすべて一回のみの通行で、ぜんぶの橋を渡り切れるかという問題。1735年まで、ヒマな老若男女の余暇活動で、休日にはグルグル回って、なんとか出来ないかと散策するのがレクリエーションだったそう)の導入部で、ボーイフレンドは、今はそこはロシアのカリーニングラード、としか言いませんが、彼女は、ケーニヒスベルガー・クロプセという、肉団子のホワイトソース掛け料理を提起します。

一筆書き - Wikipedia

ケーニヒスベルガー・クロプセ - Wikipedia

https://upload.wikimedia.org/wikipedia/commons/thumb/e/ee/Haus_vom_Nikolaus_eulerian_vert.svg/420px-Haus_vom_Nikolaus_eulerian_vert.svg.pngブロッコリーのクリーム煮はヌーベルシノワの川菜ですので(タイ人の奥さんのいる京都の街中華で聞いた)、"奶油狮子头"みたいな名前でこの料理の漢語版が出ないか検索しましたが、創作料理レシピ以上のものは出ませんでした。

Haus vom Nikolaus – Wikipedia

話をもどすと、1735年に橋の問題にピリオドをうったオイラーという人は、この橋の「ノードの次数」は一つを除いて奇数ばっかりだっから、一筆書き出来ないんだんべ、と言ってるように私には読めたのですが、どうもそう理解してはいけないようで、ドイツの有名な一筆書き「サンタクロースの家」は、本には正解書いてないのですが、ヒントを見ると、ノードにやっぱり奇数があって、奇数から始めないと一筆書き出来ないとあります。確かにその通りなのですが、それを確かめるために、右の図のように、ぜんぶのルートをぜんぶ試してみて、その結果一番早いとか最適解を出していたら、いかに現代のパソウコンやサーバやスパコンクラウドコンピューティングやグリッドコンピューティングが高性能化したとはいえ、スペックいくらあっても実はたりひんのどっせ、うまいことはしょるやり方をAIに指南したげな、路線検索やナビタイムは一個もなりたたへんのどす、と頁41に書いてあり、経過をすっとばして、結論だけをサマリで読む感じで読んで、フーンと思いました。ノードの数が102個のすべての経路計算をするとすると、一秒で百万回の計算が出来るコンピュータで36年かかるんだそうで。せやしサポマ作りよし、サポートマトリックス作って、いらん経路はハナから計算の埒外にしよし、ということではないらしい(と理解しました)

あと、オイラーと訊くと、下記しか連想しません。タタールのくびき。ワールシュタットの戦い(はちがう)

kotobank.jp

サンタハウスの絵は、本書には、ガブリエレ・ハイダーという人の、『キャンバスの上の牛糞』という絵が出てきて、これは、"Haus vom Nikolaus Gabriele heider” で画像検索すると、ドイツの版元サイト、Springer社の"Euler und der Nikolaus"という本書試し読みページが出ますが、電子版を買わんければならんのか、ログインが必要なのかみたいな感じで、バシッと絵は出ません。グーグル検索結果画面でのみ、気軽に見れます。この画家のサイトには、近作がありました。

Gabriele Heider | HAUS VOM NIKOLAUS | Öl und Acryl auf Leinwand 60 x 60 cm | GH | Gabriele Heider | Künstlerin

ルービックキューブも六面達成一度きり、当然偶然という私が一筆書きの理屈を理解出来るはずもなく、さらにその前に遡ると、頁34、寄り道の時間をマイナスにする思考法が、ぜんぜんでした。「ノードの重み」を負にする、という考え。これは、最短時間を計算する際に、すべてのより道をプラスプラスで足してゆくと、前記の36年ではないですが、演算回路のブン回しに負荷がかかるばかりなので、ところどころマイナスにして、式を簡略にしてあげることで、解が出るまでのスピード促進に貢献する、ということと理解したのですが、頁58のように、出発時間より到着時間のほうが一時間早いとか、そういうバカ計算が即現出します。それらを防ぐコツというところが、いろいろ書いてあって、チャプター9のタイトルなぞ、土井たか子並みに、「ダメなものはダメ」というタイトルなのですが、それでも、どういう時なら負が使えて、どういう時は正数のみなのかが、多分文章だと分からない人は分からず、「サポマ作れ」「サマリで説明しろ」「今北産業キボンヌ」ryしか言わないんじゃいかと思いました。

頁95には、スタート駅から到着駅まで、何駅かかるかという最短を計算させると、人間は乗換にかかる手間を無意識or意識的に回避して、少ない乗換数でかかるルートの駅数をいうが、コンピュータは与えられた命題だけを盲目的に追及するので、いくら乗り換えても駅数が少なければ少ないほどいい、の発想しかないルートを上げてくる話があります。その辺を、バカみたいに「コンピュータのとおりですよ」で押すだけの人が設計してたら、それを修正するだけのタスクの人をもう一人雇って人月が2バイ2バーイになるんだろうかと思ったりしました。

で、これらを読んで、ああ、ほんたうに、世のカーナビやグーグルだか何だかの地図アプリには、有料道路を経路検索から外したはずが、ナビがすぐに上使うルートをあげてきて、漫然と運転してるとうっかりすぐ高速高架に乗ってしまう喜劇(距離的には遠回りでも、渋滞のない時間だと早く着くという、コンピュータに時間をプライオリティで計算させるとそうするというルート選択。ただしもちろんコンピュータが金払うわけでないので採算度外視。アプリ供給会社は知らんけんしゅたいんかな)とか、もっとひどいのは、自転車用の経路ナビでないのに使って、「ナビがナビが」で歩行者自転車125cc以下"的摩托车"通行禁止の首都高等に迷い込むビギナーチャリダー(原チャリは看板も見ないで突っ込むが、チャリはナビしか見ないで迷い込む気がします)とか、浜の真砂は尽きるともで、尽きないものなんだなあと嘆息します。PGも悪気があってアルゴリズムを設計してるわけでもないだろうに、ただ単に善意の幅が狭いのか、世界が大きく巨大すぎるのか。運用の問題もありましょう。

さらに言うと、私が昔、JR相模線と相鉄線とJR京浜東北線を乗り継いで通勤してた頃、一枚のIC定期で対応出来ず、三つの路線を乗り継ぐ際は、定期ふたつ作ってた時代も、そういう理由だったのかなあと。すべてに対応するプログラムを作ってたら、千年あっても完成せず、かつ解にたどりつくスピードも激おその実用化に耐えないものしか出来なかったのかもしれない。当時の私は、仕様作ってた人間が、三路線乗り継ぎで通勤とか考えられない田舎者だからこんなものを作るんだ、くらいにしか思っていませんでした。今は確か三路線乗り継ぎの定期を一枚のICカードに入れられたと思うので(違うかもしれませんが)千里の道も一歩からで、たゆまずプログラミングしつづけてゆく人たちがこの世を住みよくしてるのかしら、なんて能天気にお花畑で花摘みにいそしんだりしています。

頁25、「フェールセーフ」なインフラシステムを例にあげて、グラフの連結の重要性を説いています。大動脈の供給経路が複数確保されてなくて、たったひとつしかなく、それがボトルネック、隘路になったり断になったりすると、被害が甚大なものになるという。例として1965年のアメリカ大停電の事例を、ドイツ紙の当時の報道の切り抜きつきで論じています。ここで、AIというか、この物語の指南役の人口知性と、主人公は「英語は問題ないよね」「ないわよ.小学校5年生から習っているからね」というやりとりをして、時の大統領リンドン・ジョンソンが連邦動力委員会議長にあてた手紙を読ませています。もともと数学の成績はよかったが、ハンブルグからミュンヘンに転校したら教師がアレで数学嫌いになったという設定で(転校先のクラスメートもその教師を好いてない)しかし英語も教育を受けてるドイツ人だから出来ますぅ、という。

1965年北アメリカ大停電 - Wikipedia

こういう話になると、私は、福島第一原発の冷却用電源が、津波で洗い流されてしまった、むき出しの一系統(無防備)しかないという、「フェールセーフ」思想なき設計だったのが残念でならないです。地中に副回線埋めとくとか、ねえ、というアイデアを後付けでしか言われないとしたら、その世界は荒涼すぎる。

頁157、家に来た彼氏(夜は弟の子守をするので外出しない)に出す「黒い森のサクランボアイス」は、下記のケーキにアイスもあるということなので、それだと思います。

ja.wikipedia.org

むしょうに食べてみたくなりましたが、クリスマスの時期のものではない気瓦斯。

頁201

中国の郵便配達問題のアルゴリズム

 

Input:  重み付きグラフG=(V,E)

Output:  Gのそれぞれの辺を含み、長さが最小となる閉じた経路

 

ステップ1:Gで次数が奇数となるノードの集合V’を定める.

ステップ2:V’に属する任意の二つのノードv,wの最短経路の長さを定める.

ステップ3:V’のノードの集合による完全グラフG’において,

      これらの距離に関して最適化するマッチングMを定める.

ステップ4:G’とマッチングMの辺に属するGの経路から,

      多重グラフG”を構築する.

ステップ5:G”でオイラー閉路を定める.

 中国人郵便配達問題 - Wikipedia

邮递员问题 - 维基百科,自由的百科全书

本書では1962年に菅、否、管梅谷(すげ・うめたにとは読みません。かん・うめたにとも読まない)という中国人が発表したから、"Chinese postman problem"と呼ばれているとありますが、中文ウィキペディアによると、山東師範大学の彼がこれを発表したのが1960年、米国国立標準技術研究所のアラン・ゴールドマンが1962年にこういう名前をつけたんだそうです。日本語ウィキペディアは、ゴールドマンの名前をカタカナ表記しないわりに、菅、否、管梅谷の名前を"Mei Ko Kuan"とウェード式で書いており、外来語のカタカナ表記に自信のない台湾系というか中華民國系の人かな、とプロファイリングしてみたり。本書では菅、否、管梅谷の名前は、「グァン・メイグウ」と、おそらく原書のピンイン表記をカナに直したものをつけています。

baike.baidu.com

管梅谷 - 维基百科,自由的百科全书

管梅谷-山东师范大学

彼がこれを発表した1960年は、大躍進の過ちで毛沢東がおとなしくさせられて、劉少奇市場経済を許容した調整政策を行っていた時期で、この後毛沢東プロレタリア文化大革命を起こして劉少奇を失脚させるわけですが、文革中の管梅谷さんの処遇は上記に書いてありません。どうしてたんですかね。その後(改革開放後)、"学习兴隆"とはあまり言いませんが、そんな感じでご活躍で、よかったです。

http://www.robot.t.u-tokyo.ac.jp/asamalab/lectures/lecture4/files/optimization101217prn.pdf

http://www.ji.u-tokai.ac.jp/hamalab/hama/tokyometro.pdf

http://www.cc.kyoto-su.ac.jp/~isida/sekaiA/12A-03.pdf

「中国人郵便配達問題」で検索すると、たくさんのacアカウント、大学サイトのpdfが出て来ます。頁207、実際の道路は一通、一方通行がたくさんあるという指摘に対し、「操業橋渡し運行」で対応すると書いてあるように理解しましたが、違うかもしれない。「一番簡単な解決法は,ごみの収集車両は一方通行にも進入可能だとする特別許可を出してもらうことかな.さしあたって、街中の通りが(すべて)一方通行だと仮定しようか」(頁207)たちまち事故が起こりそうな極端な解決法をしめしておいて、さらっと冗談だよみたいに流して、その次は逆方向に極端な、極限状況のモデルを示して、さあどうすると迫ってくる。ドイツ人は面白いですね。

つづく。【つづく】

ja.wikipedia.org

頁213、こういう一筆書き遊びのサイトに行って、ゲームが始まります。で、インターネットには、チートというか、解とか謎解きサイトがゴマンとあることに二人も気づき出しますので、それを使い始め、お互い参照先が違うので、頁219のように、「ウォーンスドルフの法則」(この単語は検索で出ませんでした)が「いつもうまくいく」と書かれたサイトが、その理由をはしょっていて、「いつもうまくいく」のはこの条件の時だけ、というのが正解と分かる場面が出て来ます。

ヒューリスティクス - Wikipedia

ヤンはSF好きという属性があり、この辺りでスタートレックのスポック博士を出します。その前は、銀河ヒッチハイク(私は未読)

銀河ヒッチハイク・ガイド (河出文庫)

銀河ヒッチハイク・ガイド (河出文庫)

 

 ハミルトン路 - Wikipedia

この「ハミルトン路」の検索結果で、トップに出る画像が、個人の方のはてなブログなのが、面白いというかもどかしいというか。前のほうの黒い森のサクランボアイスを検索した時、関連で、スパゲッティアイスが出ました。そんなのもドイツ(もしくはスイス)にあるんだと思ったら、頁249に出ます。二人前食べてもいいんだとか。

en.wikipedia.org

本書にも画像が出ますが、不鮮明で、しかも珍しくモノのまわりを切り取っているのが、プロの編集者から「処理がアマい」と上から目線で言われそうな出来です。プロの数学者≠フォトショペのプロ。

頁248、マインスイーパーのように、「いつもうまくいく」ものは、「なぜうまくいくのか」を示すために、「効率的な解法アルゴリズム」を使う必要があるんだとか。

ヒロインはそこそこのめりこむ性格なのですが、彼氏がうまいこと中和してくれて、二人はちょくちょくさくっと気分転換しに外出します。甘いものやケバブサンドもですが、頁236のように自転車で郊外の親戚の家まで遠出したりもします。パソウコンに向き合いすぎて、やや日が翳ってからの出発になってしまったというところがリアルで、帰りがまっくらになるので、その解決法もドイツだと思いました。要するに帰りは自転車を市電か地下鉄に持ち込むという。もちろん、それが他の乗客の迷惑にならないかどうか、通勤ラッシュの時間帯でないことを見計らって判断するところもよいこたちです。これは数学的才能とはべっこの、社会常識"common sense"ならぬ「良識」"good sense"の領域でしょう。もっとも、こういうのが息苦しいと感じる若者が多いのは、アルミホイルがちらばる公園や、注射針、鉄板入りのブーツで蹴り飛ばしても壊れないようホーロー引きでなく、ステンレスの板を張っただけの男性用トイレなどを見ても分かります。

で、こういう気分転換がサクサク入るので、自然にこの子たちも、切り替えがうまくできる人間に育つのではないかと思いました。主人公は水泳を休みませんし、彼氏はサッカー。スマホはこの時代もう出てますが、まだ蔓延はしていないはず。アイフォンがモバイルスイカにも定期にもオサイフケータイにも対応してなくて「つかえねー」とか言われた頃だと思います。それでも、主人公は父親がIT企業勤務ですので、まず父親が家でのモバイル禁止令を出されていて、湖で過ごすレクリエーション時期には、彼女も母親から同じ禁止令を出されます。(それでもこっそり車にパソウコンを持ち込もうかと策を練るくだりはありますが)

で、この一筆書き問題がどうなるか、頁253、アフリカの96都市を最短距離で廻ろうサイトが出て(http://www-m9.ma.tum.de/java-applets/tsp-afrika-spielなんてサイトが今でもあるのか知りません)半導体の基盤に穴を開ける順番の最適化の話になり、最短経路だけでなく、機械の特性によるやりやすさやりにくさもあるんじゃないと思う私は、もう「TSP問題」「NP困難」"w.l.o.g"("without loss of generality")などの単語についてゆく気力も、検索する気力もなくなり、頁296にチーズが出てくると、これは平面の最短経路でなく、立方体を分割する最短回数の話に移行してるのですが、そんなの分かりま千円で、わあーチーズやあ、と彦摩呂のようにつぶやくだけでした。

で、一筆書きは、クイズとかゲームになって、「たのしめてるか」というパワハラ、否、余暇活動になりますので、全米48の州都周遊問題となり、1987年にノード数666の世界周遊となり(1990年にTシャツになった)1991年に3,038ノードが解け、本書頁306には、ドイツ全土の15,112個の村や町をすべて一度きり通るツアーが紹介され、

レナ▶変じゃない! どうしてライラント・プファルツ州にノルトライン・ヴェストファーレン州より多くの町があるのよ? 

 町村合併も影響してるそうで。これの本書時点のワールドレコードは、2004年5月の、24,978のスウェーデンの町や村を巡るツアーだそうです。

http://www.math.uwaterloo.ca/tsp/sweden/index.html

上記のサイトには、UK49687というのも載ってました。

UK Pubs Traveling Salesman Problem

US49603というのもありましたが、割愛。日本はいまのところ9,847。カザフスタンが9,986で、中国は71,009だそうです。ビルマの33,708とか、インフラ状況を鑑みると、どうやってという気はします。実際に回らなくてもいいのかな。

http://www.math.uwaterloo.ca/tsp/world/countries.html#JA

作中の十代の登場人物たちがオンオフの切り替えをうまくやっているのに、その感想を書いていて時間を食ってしまうのは本末転倒です。さあ、次のことをしようと。以上

(2019/12/24)

【後報】

あと、本書は最初の方で、「時間」と「距離」どちらを優先するかで、最短経路の意味が変わる(プルダウンメニューで切り替える)話が出て来ますが、これはアウトバーン全面無料のドイツだから第三のプライオリティー、支払い金額の多寡が出てこない、有料道路ばっかの日本じゃ話が違う、と思ったのですが、検索すると、ユーロならではの事情で、ドイツも1995年からトラックは有料にしてるんだそうで。その話が本書に出てこないのは、ちょっと不思議だと今思っています。

ja.wikipedia.org

(同日)