囲碁とAI、そしてソフトウェア開発の共通点
こんにちは。イノベーション開発部の山根です。
今回は私の趣味である囲碁についてお話ししたいと思います。
始めたきっかけは、高校時代に数学の先生から囲碁部に誘われたことでした。
その先生は囲碁部の顧問をしていて、お昼の清掃中に声をかけられたのを機に体験入部へ行き、そのまま入部することになりました。
部員は私含めて3名で、うち一人は幽霊部員で大会の時だけ参加するといった形で、部活動というより同好会といった雰囲気で細々とやっていました。
当時は囲碁AIである「AlphaGo」がトッププロに勝利したというニュースが起きた頃でしたが、私はあまりニュースを見ていなかったので囲碁AIの存在も知らず、主にリアルでの対局と本を読んで棋力向上に努めていました。
大学に入ってからはしばらく離れていましたが、ふとネット碁をしてみると意外に楽しくてまた打つようになりました。
主に「東洋囲碁」というサイトで対局していたのですが、このサイトは強豪である中国や韓国の人が多いこともあり手強い相手が多くすぐに伸び悩みました。そこで本格的に勉強を始めたのですが、このサイトには対局後にAIで評価することができる機能がありました。
初手から一手ずつリプレイして、AIの評価値が高い候補手を上位3つまで見ることができたり、形勢判断ができたりしたので、かなり勉強に役立ちました。
AIの候補手は納得できるものが多く、新しい気づきを与えてくれることもたくさんあります。
一方で、直観に反するような手も少なくありません。そのような手は、AIにとっては最善手であっても私には意図を十分に理解できず、実戦で再現することが難しいです。そのため、評価値の高さだけを基準にするのではなく、意味を理解して納得できたものを取り入れるようにしていました。
振り返ってみると、今ソフトウェア開発しているときも同じことをしているように思います。
AIが提案するコードは非常に参考になりますが、その内容を十分に理解しないまま採用すると、後から保守や改修が難しくなることがあります。これはAIに限った話ではなく、要求仕様など人間が発する提案についても同じで、たとえ内容が良くてもその意図や背景を理解せずそのまま受け入れてしまうと思わぬ問題につながるかもしれません。
そのため与えられた情報の背景まで理解した上で作業を進めることの大切さを改めて感じています。
これからもAIを活用しながらより良いサービスづくりに努めてまいります。今後ともリーガルをよろしくお願いいたします。


















