データ実験・系譜学

人類の最も遠い親戚
— 系譜グラフの直径を測る

「6次の隔たり」は、知らない誰かと自分が驚くほど近いという話だ。では逆に、繋がってはいるが最も遠い二人は誰だろう。今上天皇を起点にWikidataから世界中の血縁・婚姻を集めた68万人のネットワークで、最短でたどっても一番長くなる二人を探した。答えは、孔子の末裔とマレー半島の王。二人を283の親族リンクが結んでいた。

問い ── 最も遠い親戚は誰か

この実験室では、親子・配偶者のリンクをたどって世界中の家系を一枚の星図に描いてきた。日本の皇室から中国の王朝、イスラムのカリフ、ヨーロッパの貴族まで、ひとつながりの「本土」になっている。ならば自然な問いが立つ。この大陸の差し渡し── 二人を選んで最短の親族経路を引いたとき、それが最も長くなるのはどの二人か。

グラフ理論ではこれを直径(diameter)と呼ぶ。全ペアの最短経路のうち、最大のもの。「世間は狭い」の反対側、系譜の果てと果てだ。

n² の壁と、その避け方

素朴にやるなら、全員から全員への最短距離を測る。重みのないグラフなら各頂点から幅優先探索(BFS)を一回、それを人数ぶん繰り返す。計算量は頂点数を V として概ね V×(V+辺数)。V が68万では、68万回のBFS。現実的な時間では終わらない。

しかも厄介なことに、これは本質的に速くできないことが分かっている。Roditty と Williams(2013)は、強指数時間仮説(SETH)のもとでは、疎なグラフでさえ直径を厳密に「二乗よりはっきり速く」求めるのは無理だと示した。つまり最悪ケースの壁は「全頂点からBFS」なのだ。

だが救いがある。現実のグラフは最悪ケースではない。系譜は森にきわめて近い── 親子でどんどん枝分かれし、婚姻でたまに枝が合流するだけの、ループの少ない疎なグラフだ。この性質を突く実グラフ用のアルゴリズムがある。

iFUB(iterative Fringe Upper Bound)と2-sweep。 まず適当な人からBFSして一番遠い人 u を見つけ、u からBFSして一番遠い人 v を見つける(2-sweep)。木ならこの d(u,v) がそのまま直径だ。一般のグラフでは下界にしかならないので、u–v 経路の中央の人を起点にもう一度BFSし、同心円(fringe)を外側から内へ順に「その円上の人の偏心度」で上界を詰めていく。下界と上界がぶつかった瞬間に停止── そこが厳密な直径。tree-likeなグラフでは、これが数回のBFSで終わる。

BFS 4回で、283が出た

本土(今上天皇の連結成分。同名別人の誤リンクを掃除した後の 684,549人)にこの手法をかけた。結果はあっけないほど鮮やかだった。

283本土の直径(最短でたどって最も遠い二人の距離)
4 iFUBが使ったBFSの回数 ── 全頂点なら684,549回

68万回のはずが4回。系譜のtree-likeさが、そのまま計算量に化けた。理論の「壁」は最悪ケースの話で、記録された血縁という現実のデータでは、直径はほとんど一瞬で確定する。

孔子からマレー王家まで ── 283ステップの旅

最も遠い二人は、孔尚任(1648〜1718年、清の劇作家・詩人。戯曲『桃花扇』の作者で、前552年頃に生まれた孔子の64代目の子孫)と、12〜13世紀にマレー半島にあったケダ王朝のスルタン Mu'adzam Shah。二人を結ぶ最短経路は、大陸をまたいで283人を数珠つなぎにする。主な結節点だけ抜き出すと、こうだ。

▼ 中国 ── 聖家の直系をさかのぼる 孔尚任(清・1648) → 孔氏歴代当主の長い直系 → 孔子(前552) ▼ 春秋戦国から三国へ(2〜3世紀、三国時代の中国) 宋・斉の君主群 → 陸遜(呉の大都督・183)→ 孫策・孫堅 → 曹操・曹植(魏) ▼ 王朝を北へ、草原へ(11〜13世紀、女真族の金からモンゴル帝国へ) 北宋皇帝 神宗・徽宗 → 阿骨打(女真族を統一し金を建国した初代皇帝・1068)→ チンギス・カン(モンゴル帝国の初代皇帝・1162)→ トルイ → フレグ(チンギスの孫で西アジアに遠征しイルハン朝を創始) ▼ 西アジア ── カリフとイマームの連鎖(8世紀、アッバース朝=現イラク・バグダードのイスラム王朝) ジョージア王 → セルジューク朝 → アッバース朝カリフの長い鎖 → ハールーン・アッ=ラシード(アッバース朝第5代カリフ・766)→ シーア派イマーム → ジャアファル・サーディク(シーア派第6代イマーム・702) ▼ 紅海を渡り、東南アジアへ イエメンのサイイド家(Ba'alawi) → マレー半島パハン王家 → ケダ王朝スルタン群 → Sultan Mu'adzam Shah

中国の聖人から、モンゴルの征服者を経て、バグダードのカリフをくぐり、東南アジアの海の王で終わる。血と婚姻の鎖だけで、ユーラシアの端から端が一本につながっている。途中にチンギス・カンハールーン・アッ=ラシードが結節点として現れるのが、いかにもこの大陸の背骨らしい。

直径は、記録の細かさも測っている

正直に書いておくべき点がある。片端が長いのは、Wikidataが孔子の宗家(衍聖公)の歴代当主をひとりずつ細かく登録しているからだ。孔氏の直系がずらりと連なる分だけ、経路は稼がれる。だから「283」という数字は、純粋な血の遠さだけでなく、どの家系がどれだけ丁寧に記録されているかという、データの粒度も同時に測っている。

それでも「孔子 ↔ マレー王家」という骨格は本物だ。記録の濃淡を差し引いても、聖家の末裔と海の王のあいだに、これだけの歴史の結び目があるという事実は動かない。距離の絶対値ではなく、その道が誰を通っていくかを味わうのがいい。

地図で、自分の道を探す

この経路は、系譜の全体図で実際に光らせて見られる(リンクを開くと孔子とスルタンが選択され、二人を結ぶ道が浮かび上がる)。全体図では二人をクリックすると最短親戚パスが引ける。面白いパスを見つけたら、🔗ボタンでその状態のURLをコピーして誰かに送れる。「こんな道を見つけた」を共有できるようにした。

比べてみると、283という数字の意味が立ってくる。たとえば今上天皇とイギリス国王チャールズ3世は、明治期の国際結婚を含む経路でわずか29ステップで繋がる(詳しくは「草原の道」に書いた)。王家どうしは何世紀も婚姻で編み合わされていて、驚くほど近い。直径283とは、その密に編まれた芯から最も遠くはみ出した二人の距離だ。あなたの推しの二人は、その芯のどのあたりにいるだろう。

この直径の裏では、地道なデータ掃除が効いている。生年のない「エーヴァ」という空ノードが無関係な三家族に共有されて偽の近道を作っていたり、同名別人が数百年を飛び越えて家系を誤って融合させていたり── そうした誤リンクを検疫しないと、直径は不当に縮んでしまう。データの掃除については「Wikidataの系譜、その歪みと美しさ」に書いた。

追記(2026年7月)── 直径は伸び、相方が交代した

この記事を書いたあと、世界の全君主をSPARQLで列挙して系譜データを大幅に拡充した(約75万人)。同じ方法(掃除後の本土714,531人に2-sweep)で測り直すと、直径は283歩から304歩に伸びていた

面白いのは端の顔ぶれだ。孔尚任は最遠の座を防衛した。聖家の直系という「長い廊下」の奥は、データが増えても揺るがない。交代したのは反対側で、13世紀のマレーの王に代わってAtmono Suryo——20世紀インドネシアの外交官(1925〜2016)——が新しい最果てになった。今回の拡充でマレー・スルタン網が本土に合流し、その先に続く現代インドネシアの名家の系譜が、王朝の奥のさらに奥へと廊下を継ぎ足したからだ。個々の道は近道の開通で縮んでも、大陸そのものが育てば差し渡しは伸びる。最果てが中世の王から現代の外交官へ移った——記録の大陸は、いまも端から成長している。ちなみに新しい最果ての相方は、星図には表示されないほど記録の薄い人でもある——「最も遠い人」は星図の解像度の外側に立っている。孔尚任の側だけは地図で見られる

追記2(2026年7月)── 本土が71万人から122万人に増えても、直径は動かなかった

さらにその後、クロールで拾いきれていなかった末端の人々をQLeverでのWikidata全表スキャンによって一括取得し、本土に編入した。本土サイズは714,531人から1,219,185人まで膨らんだ——約1.7倍。同じiFUB+2-sweepで測り直したが、直径は304のまま、両端の顔ぶれ(孔尚任 ↔ Atmono Suryo)も動かなかった

これは示唆的な結果だ。本土の人数が50万人近く増えたのに、最も遠い二人の距離が1歩も伸びなかったということは、新しく編入された人々のほとんどが、既存の系図の途中の枝にぶら下がる末端(親や配偶者の記録はあるが、その先の祖先や有名な子孫までは繋がっていない人々)であって、記録の「奥」──孔氏の宗家やAtmono Suryoの家系のように、何世代も後ろへ伸びる長い廊下──を新たに継ぎ足すタイプの追加ではなかった、ということだ。大陸の厚み(人数)は増えても、差し渡し(直径)は記録の深さに律速される。人数を増やすだけでは、この記事の主役である「最も遠い二人」は動かない。