みなさん、初めまして。ソフトウェア設計課の楊です。 私がプログラム開発する中で一番難しいと感じたのはアルゴリズムの実装です。 アルゴリズムの中には面白いものがたくさんあり、最近機械学習に関連する強化学習の一つであるQ-Learningに触れる機会があり、それを実証するプログラム(Cheese Puzzle Simulator)を作成してみました。 Q-Learningは、強化学習のアルゴリズムの一つで、自動運転からフィンテックまで様々な分野で活用されています。 ここでQ-Learningのアルゴリズムを簡単に紹介したいと思います。 <課題> 図に示すように迷宮にネズミとチーズと毒薬があります。ネズミはどういうふうに行けば一番高いポイントでチーズの山に辿り着きますか? ポイントは、チーズ*1個=1, チーズ*2個=2, チーズの山=10, 毒薬=-30, 何もない=-3とします。 <解説>