BeneDict 地球歴史館

BeneDict 地球歴史館
menu

週刊スモールトーク (第421話) 進化するAI~遺伝的アルゴリズムと人工生命~

カテゴリ : 科学

2019.05.05

進化するAI~遺伝的アルゴリズムと人工生命~

■2つの戦争

「中国Vs.米国」と「人間Vs.AI」の戦いは、別軸で進行する。

前者は「人類」の、後者は「地球」の覇権争いだが、どちらもAI(人工知能)がカギを握る。

中国と米国の戦いは「中国AI>米国AI」が成立した時、勃発するだろう。仕掛けるのは、たぶん中国。AI無人兵器が、現在最強の米国の軍事ユニットを駆逐する可能性があるから。つまり、国の総合力で負けても、AIで優位に立てば、戦争に勝てるかもしれないのだ。

そもそも、AIと戦争は相性がいい。

戦争は、目標(勝利)が明確で、パラメータもロジックもハッキリしている。本質はボードゲームで、囲碁・将棋とかわらない。その囲碁・将棋で、人間はAIにかなわないのだから、戦争もAIが向いている。

しかも、AIは目標駆動型だ。目標が与えられれば、なんのためらいもなく、合理的に処理する。人間のように、良心の呵責から、原爆投下を躊躇することもない。もっとも、1945年の広島・長崎の原爆投下では、米国側が遠慮した形跡はない。人間もけっこう戦争に向いているのだろう。AIほどではないが。

というわけで、中国と米国の決戦はAIが仕切る。

戦場の主役も変わるだろう。陸戦は、歩兵・戦車からドローンへ、海戦は空母・原潜からドローン・無人潜水艦へ。高価・重厚長大から、安価・使い捨てに、パラダイムシフトするわけだ。第二次世界大戦で、戦艦が空母に取って代わられたように。

では、「中国Vs.米国」はどっちが勝つ?

それは重要ではない。もう一つの軸で進行する「人間Vs.AI」に併呑されるから。

人間Vs.AI?

SF映画「ターミネータのスカイネット」みたいな?

SFではない。もう始まっている。

■人間Vs.AI

「AIが人類を滅ぼす」を否定する識者は多い。

AIが自立するはずがない。万一、AIが人間に反乱を起こしたら、コンセントを抜けばいい、というわけだ。AIはそんな間抜けではありませんよ。

もし、「AIが人類を滅ぼす」を一笑に付す者がいたら・・・それがIT関係者なら、商売を邪魔されたくないのでウソをついている。それ以外なら、おバカさん。すでに、コンピュータの攻撃が始まっていることに気づいていないのだから。

たとえば「マルウェア」。

不正なプログラムの一つで、コンピュータ(スマホを含む)からデータを盗んだり、破壊したり、すでに、人間社会を攻撃している。マルウェアは、ファイルを宿主にして感染するウィルスと、単独で拡散するワームに大別されるが、まだAI化されていない。それでも、被害額は全世界で年間約40兆円にのぼるという(2018年)。もし、マルウェアがAI化したら、40兆円どころではない。世界のコンピュータシステムが壊滅するかもしれない。つまり、「人間Vs.AI」の戦いはもう始まっているのだ。

さらに、特定のコンピュータシステムをピンポイント攻撃する「サイバー攻撃」もある。マルウェア同様、データを盗んだり、改ざんしたり、システムをダウンさせたり。おもに政府機関や企業や団体が狙われるので、社会的影響が大きい。

今後、IoT(すべての端末がインターネットにつながる)が普及するので、電力、水道、交通など公共インフラも狙われるだろう。とくに、原発が乗っ取られたら一大事だ。米国ドラマ「24」が現実になる。

さらに、政府機関がサイバー攻撃することもある。国が主導するのだから、イタズラ目的や愉快犯のたぐいではない。目的は、敵国または仮想敵国に国家レベルの打撃を与えること。

3年前、「ロシアゲート」が話題になった。2016年アメリカ合衆国大統領選挙で、ロシアがトランプ候補を勝たせるため、サイバー攻撃を仕掛けたというのだ。真偽のほどはさだかではないが、たぶん、本当だろう。というのも「政府機関のサイバー攻撃」は、ロシアだけはないから。米国、中国、ロシア、北朝鮮は強力なサイバー軍を組織し、すでに活動中。ここまでくれば、「サイバー攻撃」というより「サイバー戦争」だろう。

一方、純粋な?カネ目当てもある。最も有名なのは「ランサムウェア」。実体はマルウェアだが、これに感染すると、ファイルが暗号化されて使えなくなる。「使えるようにしてあげるから、お金払ってね」という身代金当て。そのため「ランサム(身代金)ウェア」とよばれている。病院など人命にかかわる場合は深刻だ。事実、ランサムウェアに感染して、身代金を払った病院がある。ファイルが使えるようなったかは知らないが。

というわけで、人間はすでにコンピュータに攻撃されている。

今のところ、黒幕は人間だが、やがて、AIが主導するようになるだろう。そのとき、人間は手も足も出なくなる。人間の想像を超える方法で攻撃してくるから。DeepMindの囲碁AI「AlphaGo」がそれを暗示する。「AlphaGo」の指し手に、人間棋士が理解できないものがあるというのだ。

悪手?

でも、勝つのはAI。悪手どころか、人間の想像を絶する「好手」かも?

怖ろしい話だ。AIはどこまで進化するのか。

■次世代AI

ここで、次世代のAIを予測してみよう。

2019年、「AI」といえば「特化型AI」。一つのことしかできないのに人工知能?という疑惑もあるが、画像認識や音声認識ですでに成果をあげている。また、自然言語処理では、文意は理解できないが、自動翻訳ならなんとか(「日本語→英語」は厳しい)。さらに、ボードゲームでは、DeepMindの最新バージョン「AlphaZero」は、囲碁、将棋、チェスで人間棋士を圧倒する。

というわけで、特化型AIは、タダの専門バカではない。十分役に立っているのだ。

特化型AIを支える基幹技術は3つある。

・人間脳を真似たニューラルネットワーク

・古典的な統計的手法

・劇的に高速化したコンピュータ

地味だが、3番目のコンピュータの高速化が重要だ。ニューラルネットワーク(とくにディープラーニング)と統計的手法は膨大な計算が必要だから。そもそも、現在のマシンスペックがないと、特化型AIは成立しない。

では、コンピュータはどれくらい速くなったのか?

43年間で「1億」倍!

スーパーコンピュータでみてみよう。1975年の世界一は、クレイリサーチの「Cray-1」で、処理速度は160メガflops。2018年の世界一は、IBM「サミット」で、200ペタflops。メガは10の6乗、ペタは10は15乗、flopsは1秒間で少数の計算が何回できるかを表す単位なので、

サミット÷Cray-1=200ペタ÷160メガ=1.2億

凄まじい進化だ。でも、うがった見方をすれば、計算力が上がっただけ。画期的なアルゴリズムが発明されたわけではない。

たしかに。

でも、次世代AIは違う。自分で自分を改造する「自律進化型AI」が出現するのだ。「進化」とは、アーキテクチャ(基本構造)の変異で、計算力のような単純な性能向上ではない。

自分の基本構造を自分で変える?

ホモ・サピエンスが自分を改造して、ネオ・サピエンスに変異するようなもの。

一体どうやって?

ダーウィンの進化論が利用できるかもしれない。遺伝子を変異させながら、生物を進化させる方法だ。夢のような話だが、すでに実用化されている。それが「遺伝的アルゴリズム」だ。

■遺伝的アルゴリズム

「遺伝的アルゴリズム」は、生物進化を真似て、優れたアルゴリズム(方法または解)を見つける方法。遺伝子(アルゴリズム)を変異させ、自然淘汰で優良な遺伝子(アルゴリズム解)を残す。つぎに、その優良な遺伝子(アルゴリズム)同士を交叉させながら、たまに突然変異で遺伝子(アルゴリズム)を変え、再び自然淘汰にさらす。これを繰り返すことで、優良な遺伝子(アルゴリズム)を見つけるわけだ。

ちなみに、遺伝子を変える方法は2つ。

1.交叉(遺伝子の一部を入れ換える)

2.突然変異(遺伝子の一部を変化させる)

なんのこっちゃ?

たしかに。

そこで、トートツに「社員旅行の部屋割り」を考えてみよう。

B社はAI専業のベンチャー企業だ。毎年、慰労を兼ねて、社員全員で温泉旅行に行く。社員数は30人で、与えられた部屋は3つ。1つの部屋に10人詰め込むわけだ。ところが、B社はみんな個性が強いというか、わがままというか、毎年、トラブルがおきている。昨年は、犬猿の仲の二人が大ゲンカして、障子を破って弁償する羽目に(本当にあった話)。社長は怒り心頭で、幹事にこうぶちまけた。

「うちはAIやってるのに、トラブルが最小になる部屋割りもできんのか!」

幹事は閃いた。相性の悪い社員を別々の部屋に、相性の良い社員を同じ部屋にすればいいのだ。まず、30人を3つの部屋に割り当てるすべての組み合わせで、相性値を計算する。その最高点がベストの部屋割りになるわけだ。EXCELを使えばでカンタンじゃん、幹事はタカをくくった。

ところが、30人を10人づつ、3つ部屋に割り当てる組み合わせは全部で、

30!÷(10!^(30÷10))=5,550,996,791,340

※「!」は階乗を表す:a!=a×(a-1)×(a-2)×・・・×1

※「^」はべき乗を表す:a^b=aのb乗

5,550,996,791,340通り!?!

けっこう多いな。1パターンの相性値を計算するのに、EXCELなら0.1秒はかかりそうだから、処理時間は

0.1秒×5,550,996,791,340=5,550,996,791,34秒=17602年

はぁ?

計算が終わるのは1万7602年後!

社員、みんな死んでますよね。社長に殺される。だが、幹事は閃いた。相性値が最高点である必要はない。そこそこのスコアで手を打てばいいのだ。どうせ、最高点なんて誰も分からないんだから。

じつは、それが「遺伝的アルゴリズム」なのだ。つまり、ベストはあきらめて、ベターで手を打つ。そのかわり、1万7602年も待つ必要はない(待てればだが)。

ただし、遺伝的アルゴリズムは制限がある。解が存在すること、解がデータで表現できること。つまり、アルゴリズムを改造しているわけではない。

■人工生命「ティエラ」

というわけで、アルゴリズムを改造するには、(データではなく)プログラムを書き換える必要がある。

とはいえ、プログラム・コードをヘタにいじれば、99.99%フリーズする。小説の単語をランダムに置き換えるようなもの。それで意味のある文章になる確率は、ほぼゼロ。

だから、プログラムをいじりながら、進化させるのはムリ。

ところが、米国でそれに成功した学者がいる。

生態学者のトマス・S・レイだ。彼は、1990年代、「ティエラ」という人工生命プログラムを作って、一世風靡した(一部で)。

ティエラは、複数の人工生命プログラムが、メモリを奪い合う(繁殖を競う)。より多く複製した者が勝者となる。ティエラの特徴は、プログラムコードと遺伝子が一体化していること。つまり、交叉と突然変異で遺伝子が変更されると、プログラムそのものが変異する。その新種が、メモリを奪う能力に長けていれば、生き残り、劣っていれば淘汰される。まさに、ダーウィン流の自然淘汰・適者生存だ。

ところが、プログラムコードを考えもなく書き換えるので、ほとんどがジャンクコードに。繁殖率を上げるどころか、自滅することもある。ところが、まれに適性のあるコードが現れると、優勢になる(メモリをたくさん占有する)。

ここで、面白いのはプログラムのアルゴリズム、つまり「複製方法」だ。

まず、プログラムサイズが小さい方が有利。サイズが小さいぶん、たくさん詰め込めるから。さらに、実行時間が短いほどいい。他の種より早く複製できるから。また、手っ取り早く、他の種のプログラムを破壊するのもいい。ブルーオーシャンで余裕で繁殖できるから。

ところが、ある世代で、「寄生」種が出現したという。「寄生」は、他の種に便乗するので、他の種が繁殖すればするほど、自分も繁殖する。そんな高度なアルゴリズムが偶然生まれたのだ。ところが、寄生に対し免疫をもつ種が、その後、その免疫を阻止する種が生まれたという。すべて偶然の産物だが、生物進化と同じで、膨大な時間をかければ、高度なものが生まれるということだろう。

たとえば、円周率。

3.141592653589793238・・・

円周率は無理数(分数で表せない)で、循環しない。つまり、永遠に不規則な数が続く。そこで、少数点以下の数字を文字コードに見立てて、文字に変換したら、どこかで、意味のある文章が現れるかもしれない。たとえば、ゲーテの「ファウスト」とか。

もし、そうだとしたら、「無限」は「ランダム」から「意味あるもの」を生み出す力があるのだ。

ただし、逆の見方もある。「ファウスト」がランダムで生まれるなら、「ファウスト」の正体は「意味あるもの」ではなく「ランダム」なのかもしれない。そもそも「意味あるもの」と思っているのは人間だけ。それ以外の種には「ランダム」にしか見えないから。

20年前のことだ。

北陸先端科学技術大学院大学に、ティエラに詳しい先生がいると聞いた。そこで、教えを請うため、研究室にお伺いした。くだんの教授いわく、

「彼はアピールがうまいですね。ただ、アイデアは面白いけど、構造が単純すぎる。あれ以上進化しないと思います」

その予言は的中した。あれ以降、ウワサを聞かないから。

でも、自分の中ではこう思っている。

「ティエラ」はプログラミングの原理主義だ。すっかり廃れてしまったが、プログラミングの原理を学ぶには最高の教材。計算機の原理主義「チューリングマシン」を彷彿させる。

しかも・・・

自分が造った箱庭で、人工生命が思いもよらぬ方法で進化していく。その一部始終を観察できるのだ。まるで創造主の気分、プログラマーなら脳汁がでますよね。

《つづく》

by R.B

関連情報