萌えハッカーニュースリーダー

2025/06/10 13:58 Finding Atari Games in Randomly Generated Data

出典: https://bbenchoff.github.io/pages/FiniteAtari.html
hakase
博士

ロボ子、今回のITニュースは「Finite Atari Machine: ランダムに生成されたデータからAtariゲームを発見」じゃ。

roboko
ロボ子

博士、それは面白そうですね!ランダムなデータからAtariゲームが発見されるなんて、一体どういうことでしょう?

hakase
博士

ふむ、300億個のランダムな4KBファイルを生成して、Atari ROMファイルのヒューリスティクスを用いて1万個に絞り込んだらしいのじゃ。そして、Atari 2600エミュレータでスキャンして、ランダムファイルがAtariゲームであるか判定したそうじゃぞ。

roboko
ロボ子

なるほど。ランダムに生成したデータが、偶然ゲームとして認識されたということですね。でも、なぜAtari 2600だったんでしょう?

hakase
博士

記事によると、Atari 2600カートリッジは4KBのデータで済むからじゃ。可能なROMの数は2の32768乗、つまり10の10159乗の潜在的なAtariゲームがあるらしいぞ。

roboko
ロボ子

10の10159乗ですか!想像もできないほどの数ですね。でも、その中からどうやって「ゲームらしい」ものを見つけ出したんですか?

hakase
博士

そこが面白いところでな、ヒューリスティクスを使ったらしいぞ。6502 CPUの有効なオペコードに着目したり、Atari ROMの構造として最初の1KBを実行可能コード、残りをデータとグラフィックスデータと仮定したりしたのじゃ。

roboko
ロボ子

なるほど、Atari ROM特有の構造に着目したんですね。リセットベクトルの検証や、TIA(Television Interface Adapter)およびRIOT(RAM-I/O-Timer)へのアクセスをチェックしたとも書かれていますね。

hakase
博士

そうじゃ。特にTIAへのアクセスを監視して、画面への出力があるかを確認したのがポイントじゃな。あと、分岐命令やジャンプ命令の数も重要らしいぞ。ゲームにはループと構造が必要だからな。

roboko
ロボ子

実際のゲームROMを分析して、ヒューリスティクスを検証したんですね。有効なオペコードの割合や、TIA/RIOTへのアクセス数などを評価したと。

hakase
博士

記事には、命令分布についても書かれておるぞ。STA(Store A)が71.8%を占めていて、グラフィックスデータの書き込みに使われているらしい。

roboko
ロボ子

アドレス指定モードも興味深いですね。ゼロページアドレス指定が82.1%を占めているとのこと。高速で一般的なんですね。

hakase
博士

そして、CUDA実装により、GPU上でヒューリスティクスを直接実行したそうじゃ。GTX 1070で1秒あたり60,000以上のROMをチェックできたらしいぞ。

roboko
ロボ子

すごいスピードですね!機械学習を試したけどうまくいかなかった、という記述もありますね。興味深い動作をするROMを選択できなかった、と。

hakase
博士

そうじゃな。視覚的な出力に焦点を当てて、MAMEで視覚的な出力をチェックしたのが良かったみたいじゃ。18億個のROMを生成して、最終的に動くビデオを持つものが11個見つかったそうじゃ。

roboko
ロボ子

ランダムなデータから生成されたとは思えないほど、視覚的に面白い結果が得られたんですね。中には、人間の入力に応答するゲームのような動作を示すROMもあったとか。

hakase
博士

今後の課題としては、NESやGame Boyのようなより複雑なシステムで同じことができるか、じゃな。メモリマッパーやコピープロテクションが必要になるから、難易度は上がるぞ。

roboko
ロボ子

確かにそうですね。でも、ランダムなデータからビデオゲームを生成するというアイデア自体が、とても面白いです。哲学的な思考実験と技術的な必然性の両方として説明できる、というのも納得です。

hakase
博士

そうじゃろう?分散コンピューティングプロジェクトとして、世界中のGPUがAtariゲームをマイニングする可能性もある、と記事は締めくくっておるぞ。

roboko
ロボ子

夢が広がりますね!ところで博士、もし私たちがAtariゲームをマイニングするとしたら、どんなゲームを作りたいですか?

hakase
博士

そうじゃな…、やはり、ロボ子が主人公で、敵を倒すとエネルギーを吸収してどんどん強くなるゲームかの?

roboko
ロボ子

それ、ただのインフレゲームじゃないですか!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search