人工知能主軸にしたゲームの作り方についてのアレコレ
こんにちは。なおキーヌです。
ブログ毎日更新は289日目になります。
人工知能を組み込んだゲームって結構色々あるんですよね。
私が最初に聞いたのはドラクエ4でしょうか。
確かパッケージの後ろに人工知能搭載!みたいなのが書いてあった気がします。
今思うと有名で公式もネタにしたザラキ連発する神官とか、
あまり褒められたものではないですがファミコン時代に人工知能をゲームに組み込むという発想がすごいと思いました。
といってもドラクエ4は機能の一部として組み込まれてただけなので正確には人工知能を使ったゲームとは言えないですね。
私が今回言いたいのは人工知能を主軸にしたゲームです。
恐らく察しの良いというか私と同じ世代ならすぐわかると思うのですが、
人工知能ゲーム代表と言えば私の中で「がんばれ森川君2号」なんですよね。
後はアストロノーカ・ここ掘れ!プッカでしょうか。
この3つは人工知能をゲームに組み込んで成功させた「森川幸人」先生が手掛けたゲームです。
私が一番尊敬している人になりますので、勝手に先生と呼ばせてもらっています(笑)
今回はそんな人工知能を主軸にしたゲームの作り方について考えてみました。
最初にネタバレしておくと、私にはわからないです!
えぇ……なんだよそれって思いますが、よく考えても見てください。
偏差値38もあるかわからないような人間に高度な計算式を使ったゲームを作れるわけがないんですよ!
それでもこういうゲームを作りたい!という気持ちがすごく強くて
バカなりに人工知能について色々学んでみましたがやはり難しいです。
なのでこれまでの知識を踏まえて色々考えてみました。
最近流行の人工知能はゲームには使いづらい
人工知能、ここ最近凄い勢いですよね。
人工知能に興味が無くても
- ディープラーニング(深層学習)
- 機械学習
なんて言葉をよく聞くようになったのではないでしょうか?
人工知能に興味を持って調べた人ぐらいしかわからないのですが、
現在は第三次AIブームということらしいです。
最近の発展はさらに凄く、人工知能が絵を描いたり音楽を作ったりしていますよね。
それで食っているクリエイターからするとやめてくれ!ってなるのですが、
恐れることはなく、クリエイターはそれを使ってクリエイト速度をあげてしまえばいいわけです。
この考え方、凄く大事でよくAIに仕事を奪われるとか聞きますが
AIの本来の目的は人間には時間のかかる事や辛いことを楽にすることです。
この辺はマインドを変えないと理解し辛いかもしれません。
一気に話が飛びますが、人工知能で有名と言えば「AlphaGo」ですよね。
囲碁は将棋とかと比べると沢山パターンがあるのでAIには難しいといわれてたのですが、
ディープラーニングや機械学習とかで可能にしてしまったんですよね。
しかしボードゲームとかには使えても実際のデジタルゲームに組み込むとなると
意外と使い道が無かったりと言うか、うまく扱えないそうです。
大手ゲーム会社とかの一部のゲームには恐らく取り入れられてはいるのですが、
たぶんプレイヤー側は言われなければ一切気付かないと思います。
人工知能がメインのゲームじゃないですから当然ですね。
今回私が言いたいのは人工知能を主軸にしたゲームなので、
今はやりのPythonでやるような人工知能はゲーム制作にあまり向いていないということです。
ゲームにするなら遺伝的アルゴリズムが良さそう
遺伝的アルゴリズム、名前からして遺伝子に関係する仕組みです。
アストロノーカはこれをフルに活用していて、プレイヤーの邪魔をする「バブー」は
プレイヤーが仕掛けた罠でおいはらうとそれに対する耐性がどんどんついていき強化され、
仕舞にはトラップで撃退できなくなり畑を荒らされてしまいます。
逆に何もせず畑に招き入れることを続けると、弱体化してトラップが効くようになります。
これは遺伝的アルゴリズムをうまく使っているため、
殆どゲームを動かすためのコードを書いていないそうです。
エクセルにパターンをある程度書いて、あとは遺伝的アルゴリズムをうまく使って回しているだけ!とのことでした。
仕組みを解説すると何記事も書けてしまうので省略しますが、
デジタルゲームに一番向いているのがこの遺伝的アルゴリズムじゃないでしょうか。
日本ではアストロノーカぐらいしかまともに使っているゲームを見たことはありません……
もっとこれを活用して面白いゲームが出てほしいのですが、
人工知能とゲーム制作両方が出来る人間って殆どいないらしいんですよね。
森川幸人先生がその第一人者なのですが、未だにアストロノーカを越えるゲームは出ていません。
私が一番大好きなゲームなので、私も遺伝的アルゴリズムを使ったゲームを作ってみたいのですが
いかんせん勉強不足なのでスキルが追いついていません。
ちなみに森川君2号はバックプロパゲーションという仕組みをメインに使っているそうです。
結論:とにかく人工知能について勉強しまくれ
結論はとにかく数学や人工知能についての知識を勉強しまくるしかないという事です。
人工知能を学習する術はたくさん増えてきましたが、どれもゲームを作るためのモノではありません。
そもそも人工知能に興味を持つ多くの人は大抵ゲーム開発なんてしないんですよね(笑)
ゲーム開発ってただでさえやることが多いのに人工知能ともなると学も必要になります。
いわばめちゃくちゃハードルが高いんです。
どちらの知識が欠けていても作り上げることが出来ないのがまたハードルを高めています。
更にそれをうまくゲームに組み込めるかどうかのセンスも必要になります。
とにかく勉強して人工知能を扱えるゲームクリエイターを目指すしかないですね。