SlideShare a Scribd company logo
1 of 7
pygame+gymで強化学習
ぶとー(ぴくぽ@buto_risa)
ぶとーです
● 都内SI企業で働いています
● Python歴 7ヶ月
● PyLadiesのLTは2回目です
技術ブログ:https://buto.qrunch.io
あらすじ
★ 2020/4〜 1ヶ月の(給料)ドロボー生活
★ ドロボーの良心?で強化学習にチャレンジしてみる
★ 「強化学習」でヒットしたQiita記事のゲームを再現(pygame)
○ DQN(Deep Q Network)を理解したので、Gopherくんの図を使って説明
★ 自作ゲームをOpenAIGymで強化学習してみた
ステップ1 ゲームを作る
● Qiita記事をパクる!
○ 【初心者向け】Pythonでゲームを作ろう
● ケーキを取ったらスコア+100
● 左上に現在のスコア
● 20秒でスコアを表示して終了
ステップ2 gymと連携
● これが一番時間掛かった。。。
● gymからゲームをできるように関数をオーバーライドしていく
○ reset : ゲームの再スタート(スコア初期化)
○ step : 1回分のゲームで行うこと(画面描画、キー操作
検知、報酬計算)
○ render : passのみ書いてエラー回避
○ _key_action : キー操作
○ _get_observation: 画面の画像を配列にして返す(多分)
ステップ3 ハイスコアが出せるよう調整
● (最初)終了時スコアで報酬の値を決める 101〜500なら+5
○ 100台も500台も同じ報酬なので極力動かなくなった
○ 自作ゲームで強化学習 #2 その他トライエラーはこちら
● 動いたら報酬をプラス
○ 動くようにはなったがケーキを取る行動ではない
● ケーキの隣のマスだったら報酬をプラス
● policy(他の動きをしてみる確率)を大きくした(0.001→0.1)
○ 機敏に動くようにはなった ちょっとスコアアップ
まとめ!
新人もAIも
ほめてのばす時代

More Related Content

What's hot

ZendEngine Study Meeting @Tokyo
ZendEngine Study Meeting @TokyoZendEngine Study Meeting @Tokyo
ZendEngine Study Meeting @Tokyo
Masaki Fujimoto
 

What's hot (16)

Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )
 
Pythonの会社を
9年間経営してきて分かったこと
Pythonの会社を
9年間経営してきて分かったことPythonの会社を
9年間経営してきて分かったこと
Pythonの会社を
9年間経営してきて分かったこと
 
Prott Story ( Prottができるまで )
Prott Story ( Prottができるまで )Prott Story ( Prottができるまで )
Prott Story ( Prottができるまで )
 
Pythonの10年と今、これから
Pythonの10年と今、これからPythonの10年と今、これから
Pythonの10年と今、これから
 
オンラインPython学習サービスPyQの価格決め
オンラインPython学習サービスPyQの価格決めオンラインPython学習サービスPyQの価格決め
オンラインPython学習サービスPyQの価格決め
 
万年ビギナーによるPythonプログラミングのリハビリ計画
万年ビギナーによるPythonプログラミングのリハビリ計画万年ビギナーによるPythonプログラミングのリハビリ計画
万年ビギナーによるPythonプログラミングのリハビリ計画
 
MARICON発表資料
MARICON発表資料MARICON発表資料
MARICON発表資料
 
ZendEngine Study Meeting @Tokyo
ZendEngine Study Meeting @TokyoZendEngine Study Meeting @Tokyo
ZendEngine Study Meeting @Tokyo
 
Vtuber hacktokyo2019 mid
Vtuber hacktokyo2019 midVtuber hacktokyo2019 mid
Vtuber hacktokyo2019 mid
 
The tale of I and python / Python とのはなし
The tale of I and python / Python とのはなしThe tale of I and python / Python とのはなし
The tale of I and python / Python とのはなし
 
独学プログラマーのその後
独学プログラマーのその後独学プログラマーのその後
独学プログラマーのその後
 
Google Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめGoogle Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめ
 
【kintone Cafe 名古屋】kintone×○○○の可能性
【kintone Cafe 名古屋】kintone×○○○の可能性【kintone Cafe 名古屋】kintone×○○○の可能性
【kintone Cafe 名古屋】kintone×○○○の可能性
 
Contribute to terraform-provider-aws
Contribute to terraform-provider-awsContribute to terraform-provider-aws
Contribute to terraform-provider-aws
 
株式会社ジョイゾー_kintone hive
株式会社ジョイゾー_kintone hive株式会社ジョイゾー_kintone hive
株式会社ジョイゾー_kintone hive
 
Go conference 2021 autumn
Go conference 2021 autumnGo conference 2021 autumn
Go conference 2021 autumn
 

More from risa buto

無償ケア労働図鑑 〜これって愛なの?搾取なの?〜
無償ケア労働図鑑 〜これって愛なの?搾取なの?〜無償ケア労働図鑑 〜これって愛なの?搾取なの?〜
無償ケア労働図鑑 〜これって愛なの?搾取なの?〜
risa buto
 
手作りのものが食べたい
手作りのものが食べたい手作りのものが食べたい
手作りのものが食べたい
risa buto
 

More from risa buto (20)

無償ケア労働図鑑 〜これって愛なの?搾取なの?〜
無償ケア労働図鑑 〜これって愛なの?搾取なの?〜無償ケア労働図鑑 〜これって愛なの?搾取なの?〜
無償ケア労働図鑑 〜これって愛なの?搾取なの?〜
 
電子工作で猫との暮らし改善
電子工作で猫との暮らし改善電子工作で猫との暮らし改善
電子工作で猫との暮らし改善
 
座禅入門 by佐谷さん
座禅入門 by佐谷さん座禅入門 by佐谷さん
座禅入門 by佐谷さん
 
20230108_AWS試験山張り会
20230108_AWS試験山張り会20230108_AWS試験山張り会
20230108_AWS試験山張り会
 
20230107_AWS試験山張り会
20230107_AWS試験山張り会20230107_AWS試験山張り会
20230107_AWS試験山張り会
 
20221231_資格もくもく会
20221231_資格もくもく会20221231_資格もくもく会
20221231_資格もくもく会
 
エンジニアとして生き残るには
エンジニアとして生き残るにはエンジニアとして生き残るには
エンジニアとして生き残るには
 
node.js入門
node.js入門node.js入門
node.js入門
 
汗っかき問題と対策
汗っかき問題と対策汗っかき問題と対策
汗っかき問題と対策
 
terraform基礎
terraform基礎terraform基礎
terraform基礎
 
手作りのものが食べたい
手作りのものが食べたい手作りのものが食べたい
手作りのものが食べたい
 
Invitation of Musical
Invitation of MusicalInvitation of Musical
Invitation of Musical
 
画面テスト自動化
画面テスト自動化画面テスト自動化
画面テスト自動化
 
発声練習
発声練習発声練習
発声練習
 
ミュージカル入門
ミュージカル入門ミュージカル入門
ミュージカル入門
 
Javaキャッチアップ(SE9-12)
Javaキャッチアップ(SE9-12)Javaキャッチアップ(SE9-12)
Javaキャッチアップ(SE9-12)
 
Androidの非同期
Androidの非同期Androidの非同期
Androidの非同期
 
about me
about meabout me
about me
 
Pixel game creation
Pixel game creationPixel game creation
Pixel game creation
 
料理はじめました
料理はじめました料理はじめました
料理はじめました
 

Recently uploaded

Recently uploaded (11)

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 

pygame+gymで強化学習