前回までは、人工知能に基づく将棋プログラムのつくりかたをみてきました。今回からはこの将棋プログラムを研修でつくっていくことにします。

 将棋プログラムは、昔ながらの記号処理的な人工知能と、今流行の機械学習を含む非記号処理的人工知能の双方の要素があるので、研修の題材としてはぴったりです。

 それよりも何よりも、将棋の研修は面白く、盛り上がります。

 人工知能プログラムをつくる研修を盛り上げるただ一つの方法は、勝った!負けた!の世界を経験させることです。

 これは、これまでの伝統的なプログラミング研修が嘘のように、全員が興奮します。そして、勝負の結果は皆が納得できる研修の評価になります。(図1)。

図1●将棋プログラムで人工知能研修は盛り上がる
図1●将棋プログラムで人工知能研修は盛り上がる
[画像のクリックで拡大表示]

 さらに研修の途中でも、作成したプログラムと(デバッグと称して)将棋ができますので、あちこちで盛り上がります。もしかしたらデバッグで苦しんでいてナチュラルハイになっているだけかも知れませんが…。

 そして将棋プログラムの研修では、単に人工知能の理解を深めるに止まらず、企画や要求分析、アーキテクチャー設計、プログラム設計からプログラミング、デバッグ、テストまでの研修にできますので、断然お得です。

 筆者は実際にミニ将棋を題材にして、社内でソフトウエア開発プロジェクトの研修を実施しています。そこでこの連載では、研修現場の様子を交えながら、社員向けに研修を企画する方法を紹介していくことにします。研修の最終日に各チームの将棋プログラムで将棋選手権大会を開催していますが、いつも大興奮します。

ミニ将棋プログラムで人工知能研修の開始

 研修の期間は限りがあります。このため研修では、本将棋でなく、ミニ将棋を題材にします。

 それでは早速、研修の企画を始めましょう。研修期間に応じて、題材とするミニ将棋の種類を決めていくところから始めます。ミニ将棋には「5五将棋」や「京都将棋」、そして子供達の間で流行している「どうぶつしょうぎ」があります。この他にももっと小さい「9マス将棋」や「3三将棋」など色々なミニ将棋があります。これらのミニ将棋の概要を図2に示します。

図2●ミニ将棋の紹介
図2●ミニ将棋の紹介
[画像のクリックで拡大表示]

 様々なタイプのミニ将棋から、研修期間や受講生のレベルに応じて、ちょうどいい難度のものを選択してください。

 一般的に、盤面が小さくなるほど手数も短くなり、必勝手順が存在し、思考が簡単になり、人工知能のプログラムも簡単に実装できます。その一方、必勝の手順があることから、将棋選手権大会での盛り上がりはあまり期待できません。

 様々な種類のミニ将棋があることからも分かるように、新しいミニ将棋をオプションでつくるのも楽しい研修になります。たとえば、盤面のサイズを少し拡大するだけで、その将棋の世界が変わります。とはいえ、ゲームバランスがいいミニ将棋をつくるのは意外に難しいもので、こればかりに熱中しないように注意してください。

 題材とするミニ将棋が決まったら、次はいよいよ研修の中身を詰めていきます。将棋プログラムをつくらせるだけでもいいのですが、その他に色々なテーマを与えてみるのも面白いでしょう。

 たとえば、ゲーム制作会社の社員となって将棋プログラムの企画から始めさせるのもいいでしょう。開発コストを見積もらせて、講師陣が扮した企画部門と折衝させるのも面白いですね。折衝術とプレゼン能力を磨く場になりそうです。開発プロセスをアジャイル開発風にするのも、ウォーターフォール型開発も、どちらでもいい経験になるでしょう。