AlphaCodeが実際に書いたプログラム

AlphaCodeが実際にプログラミングした問題を見てみましょう。

下記の画像はAlphaCodeに解かせた「D. Backspace」という問題。

人間に匹敵するプログラミング能力のあるAIが開発される
(画像=AlphaCodeが挑戦した問題(上)と、実際に書いたコード(下) / Credit:DeepMind_Competitive programming with AlphaCode(2022)、『ナゾロジー』より引用)

これはその名のとおり、バックスペースキーに関する問題です。

1つ目の文字列のどこかの文字をバックスペースキーに置き換えると、2つ目の文字列になるかどうかをコンピュータに判断させる、というもの。

例えば「ababa」という文字列は、「①aキー、②bキー、③aキー、④bキー、⑤aキー」の順番でキーボードのキーを押したときに表示されるものです。

そして①④のキーをバックスペースキーに置き換えると、「①バックスペースキー、②bキー、③aキー、④バックスペースキー、⑤aキー」になります。

バックスペースキーには後ろの文字を消す効果があるので、この順番にキーを押すと「ba」という文字列になるはずです。

つまり「ababa」のどこかのキーをバックスペースキーに置き換えると、「ba」になる、と言えます。

どこのキーをバックスペースキーに置き換えるかは関係ありません。

とにかく2つ目の文字列が1つ目の文字列のどこかをバックスペースキーで置き換えたものになっていれば「YES」を、そうでなければ「NO」と答えさせるのです。

ですから、下記の文字列を入力した場合、

  1. 「ababa」「ba」
  2. 「ababa」「bb」
  3. 「aaa」「aaaa」
  4. 「aababa」「ababa」

それぞれ次の結果が出ると良いわけです。

  1. YES
  2. NO
  3. NO
  4. YES

コンピュータにこの問題を解答させるには、何行かのプログラミングコードが必要になります。

AlphaCodeはこの問題にチャレンジし、見事にコードを書くことができました。

人間に匹敵するプログラミング能力のあるAIが開発される
(画像=AlphaCodeの処理を可視化したページ(一部) / Credit:DeepMind、『ナゾロジー』より引用)

とはいえ、現段階ではAlphaCodeがプログラマーの代わりになるわけではありません。

DeepMind社は、プログラマーがAlphaCodeを活用することで、生産性を向上させられると考えています。

今後の改良によっては、AIがプログラマーたちをサポートし、素人でも簡単なプログラミングが組めるようになるのかもしれません。


参考文献

Competitive programming with AlphaCode

DeepMind says its new AI coding engine is as good as an average human programmer


提供元・ナゾロジー

【関連記事】
ウミウシに「セルフ斬首と胴体再生」の新行動を発見 生首から心臓まで再生できる(日本)
人間に必要な「1日の水分量」は、他の霊長類の半分だと判明! 森からの脱出に成功した要因か
深海の微生物は「自然に起こる水分解」からエネルギーを得ていた?! エイリアン発見につながる研究結果
「生体工学網膜」が失明治療に革命を起こす?
人工培養脳を「乳児の脳」まで生育することに成功