NVIDIA Research、ゲームのルールを学習したAIによるゲームの自動生成手法を使ってパックマンの自動生成に成功 42
ストーリー by hylom
AIが人間にチャレンジを求める時代が来る 部門より
AIが人間にチャレンジを求める時代が来る 部門より
NVIDIA Researchが、ゲーム「パックマン」をプレイする様子を人工知能(AI)に学習させ、そこから同じルールのゲームを自動生成することに成功したという(PC Watch)。
このシステムは、ゲームをプレイするシステムと、ゲーム環境を生成するシステムという2つのシステムを組み合わせて実現した。このような互いに相反する目的を持つ2つのAIシステムを組み合わせる手法は、敵対的生成ネットワーク(GAN)と呼ばれている。
AIがゲームのクローンを作れる? (スコア:0)
AIがインプット無しで学習してゲームを攻略し、同等のゲームを生成できるということ?
Re: (スコア:0)
今んとこ「同等」じゃなくて「同じ」かな
Re: (スコア:0)
大元のNVIDIAのブログ見ても詳細がつかめないけど、一般的なGANと同じ手法だったら
・自分のプレイしているのが本物のパックマンとジェネレータの生成したパックマンもどきのどちらなのか弁別して学習するプレイヤー
・プレイヤーに自分の作ったものが本物のパックマンだと思わせるように学習するジェネレーター
が互いに競い合って精度を上げていった、でいいのかな?
https://blogs.nvidia.com/blog/2020/05/22/gamegan-research-pacman-anniversary/ [nvidia.com]
オバケの性格まで模倣できていたらすごい (スコア:0)
人が見ても性格にルールが有ると見抜ける人は少ないだろうが。
# フルーツの出現法則は見抜けたかな?
Re:オバケの性格まで模倣できていたらすごい (スコア:1)
モンスターの動作には、パックマンを追いかける「追跡モード」と、定位置をうろちょろする「待機モード」の二つのモードがありますが、
追跡中はアルゴリズミックに動く(そこに、4キャラの「性格」付けがある)から、むしろ学習しやすいんじゃないですかね。
で、待機中のランダムウォークの方が学習しにくいんじゃないかと思う。
ってことで、完全アルゴリズミックで乱数要素が存在しない「グラディウス」あたりは、学習再現しやすいんじゃないかと思うけど、どうなんだろう。
Re: (スコア:0)
プレイヤーはどう識別されるのだろう。
モンスターを操作してパックマンを倒すゲームにならないために条件を与えたのか、
そういうゲームになっても良いことにしたのか。
Re: (スコア:0)
「ゲームをプレイするシステム」はプレーヤーをどのように動かしたら死なずに全ドットを食えるか、
「ゲーム環境を生成するシステム」は各モンスターがどのようにプレーヤーを追うかを学習させたんでしょ。
Re:オバケの性格まで模倣できていたらすごい (スコア:1)
GIGAZINEの記事によると、攻略することを前提にゲームが作られたようで、
下手なプレーをすると難易度を下げてクリアさせようとするらしい
って事で、今のレベルでは模倣品であって製品レベルじゃないって事だろな
Re:オバケの性格まで模倣できていたらすごい (スコア:1)
https://gigazine.net/news/20200525-nvidia-ai-recreate-packman/ [gigazine.net]
この記事ですか、なるほど。
キー入力も食わせてるなら入力にどのキャラクターが反応しているのかは明らかだな。ムービーだけかと思った。
Re: (スコア:0)
幕間劇も学習・生成したのかな?w
ソースは? (スコア:0)
AI はブラックボックスとはよく言われるけど、
その生成物であるソースはどんな物になるのかは気になる。
可読性はどうなんだろう。そもそも、ヒトに読めるものなのかどうか。
Re: (スコア:0)
ソースを生成するんだろうか。
どちらかというと子供が出し物でやるような「人力○○ゲーム」で
人力のところがAIに置き換わった感じなんでは
# 多分AIのほうが正確にコピーしてくる。楽しいかどうかは別
Re: (スコア:0)
今のAIは自分で構造を書き換えたりループを作ったりはできない
(やりゃあできるだろと思うかもしれないがやっても動かない)ので
例えば
640x640の前のフレーム画像を取り
64x64の浮動小数点数配列の32枚で掛け
16x16の浮動小数点数配列240枚で掛け
…
128x128の浮動小数点数配列16枚で掛け
そのフィルターを通った画像を一つの一次元配列に潰し
別プログラムから受け取ったキー入力を末尾に入れ
前の配列の全ての要素を4096の異なる浮動小数点数と掛けた配列を作り
前の配列の全ての要素を4096の異なる浮動小数点数と掛けた配列
ハックしたゲーム動画が含まれていないか検証したのだろうか (スコア:0)
1個でもあったら完コピ無理
コピー商品作り放題? (スコア:0)
ソースをコピーするわけでもリバースエンジニアリングするわけでもなく、ただプレイ画像を見せるだけでコピー商品が作れるんですよね。
キャラクターをちょいちょい、といじってコピー商品一丁上がり、ってならない?
あと、これが進化するとAIが生成したWindows互換OSとかもできる?
Re: (スコア:0)
激レアイベントとか激レアアイテムとかは未実装になりそう。
Re:コピー商品作り放題? (スコア:2)
デッドコピーじゃないから、隠しクレジット表示が再現されない!
新時代のゲームの作り方 (スコア:0)
1.フルCGでデモンストレーションムービーを制作する
2.AIが学習してゲームを生成する
実在しないゲームでも、ムービーさえあればゲームが作れる時代へ。
メインプログラマーが要らなくなるな。
Re: (スコア:0)
学習用のCGムービーを何万通りも作るのが大変だ
↓
ゲームプレイムービーを作るプログラムを作ろう
Re: (スコア:0)
そこは実写でいいんじゃない?
新宿交差点の定点カメラとかで。
Re: (スコア:0)
横断歩道を渡るゲームが出来上がるんですね。
Re: (スコア:0)
フロッガーか。(違
いろんなプラットフォームで実装されてますね。
Re: (スコア:0)
1. の時点でUnrealじゃね?
すごい (スコア:0)
ディープラーニングって「すごいけど実用からは微妙に遠い」ってパターン多いよね。
でもすごいと思う。
壁の存在とかある程度条件を絞ればディープラーニングなしでも似た事はできそうだけど、人間様の手を煩わせないのが強いんだろうね。
しかし技術的な面白さはあるけれど、やっぱり実アプリケーションへの影響はまだ限定的な印象。
いずれ手軽に実用レベルのものが作れるようになるだろうけど、その頃は色々整備されてもっと気楽に使えるようになってればいいな。
Re: (スコア:0)
サンプルがパックマンしか無いというのは、パックマンを生成することしか出来ないという事でしょう?
Re: (スコア:0)
間違って平安京エイリアンのビデオが入って居たら何故か穴が掘れたり、ラリーXが混ざって居たら煙幕が出る様になるのかな。
Re: (スコア:0)
レベル2運転支援で使う動作模倣や物体検出はかなり実用レベルだと思う
何するかは分からんけど従来手法より滑らかで自然
Re: (スコア:0)
ゲームの場合は人間の「おもしろい」「つまらない」感情をAIが持たないと無理だしね。
とはいえ「自動生成して後で人間が調整」ってだけでも相当な作業軽減だし実用的な方向での研究と成果なんでしょうね。
Re: (スコア:0)
いやいや、成果物を人間は調整できないでしょ。AIに無理を言って高級言語で出力してもらっても難しいと思う。
Re: (スコア:0)
つまりデバッガとか人間をループの中に組み込めば!(うひー
Re: (スコア:0)
プレイ情報も学習されれば良いのでは?
沢山の人間が長時間プレイする方が「面白い」とでもすればそこそこは行けそう。
つか、類似パターンばかりのソーシャルゲームなんかだと、類似品生成させて作ったゲームを経営させれば、「売上」って判り易い基準で判断すると思う。
パックマンをパクるAI (スコア:0)
そんなコメントを思いついたら元タレコミのタイトルに書いてあった。
どこで消えてしまったのだろう
Re: (スコア:0)
hylomがパクッと胃の中へ
生成ソースの言語はなんだろう (スコア:0)
と思ったけど人間が理解できなくてもいいから機械語か
Re: (スコア:0)
手書き部分はPython+PyTorchでウェイト設定ファイルはHDF5だろ
NVIDIAだから
AIオプチマイザ〜車輪の再発明 (スコア:0)
「パックマン」ということで色々思うことはある。
まだプログラムの著作権が認められる前は「映画の著作物」として画面出力そのものが
著作権違反だった時代もあるし、当時の判断基準ではアウトだろうな、とか。
# あの事件そのものはデッドコピー基板だったけど。
これ、例えば制約条件としてZ80インストラクションセットを食わせても
古のパックマンのデッドコピーを出力したりはせんだろう?
最初のうちは人間より質の悪いコード吐いてるだろうが、速度やサイズ優先の指定で
人間を凌駕するすげぇアルゴリズムのコード吐くようになるんじゃね?
いずれは関数の入出力仕様だけからコードを自動生成できるようになるんだろうが、
その前段階としてAIオプチマイザってのが一瞬流行るかも。
# 単純なソート作業を見せてやったとき、どんなアルゴリズムが生まれるかちょっと興味がある。
Re: (スコア:0)
何人か勘違いしてる方がいるようですが、GANはソースコードを出力するシステムではないですよ。
例えばこのへんとか
"The GameGAN edition relies on neural networks, instead of a traditional game engine, to generate PAC-MAN’s environment." [nvidia.com]
シンギュラリティいつ来るの? (スコア:0)
既存のものを学習させるんじゃなく、まったく見たことのない新しいゲームが見たいんだ。
Re: (スコア:0)
つまりその、数年前にあったCNN使って出力した悪夢のような動画的なものとか?
まあもちろんそういうものではないんでしょうけど、何かの萌芽なのかも?
この技術の本当に凄い応用は (スコア:0)
例えば古典的なビデオゲームのフロッガーとかスネークとかポンとかをたくさん学習させると
そのうち今まで人間が考えたことの無い新しいゲームができるかも、ということでは?
未来は単純なゲームなら無限に新しいゲームができる(遊べる)とか普通になるかもね
Re: (スコア:0)
GANの仕組み上、「フロッガー(スネーク、ポン)っぽいけど微妙に違うもの」にしかならなさそう。
さらにそれを人間がプレイして面白いかどうかは全く保証されない。
Re: (スコア:0)
収束も保証されない上に、歪んだゲームとか滲んだゲームとかが量産される訳ですね!