بيئة التعلم Pygame (PLE) هي بيئة تعليمية ، تحاكي واجهة بيئة التعلم الممرات ، مما يتيح بداية سريعة لتعزيز التعلم في بيثون. الهدف من PLE هو السماح للممارسين بتركيز تصميم النماذج والتجارب بدلاً من تصميم البيئة.
يأمل PLE في نهاية المطاف في بناء مكتبة متوسعة من الألعاب.
قبول PRS للألعاب.
يمكن العثور على مستندات المشروع هنا. هم حاليا WIP.
يمكن العثور على الألعاب المتاحة في المستندات.
يتطلب مثيل PLE
لعبة تعرض مجموعة من أساليب التحكم. لرؤية الأساليب المطلوبة ، انظر إلى ple/games/base.py
.
إليك مثال على استيراد Pong من مكتبة الألعاب داخل PLE:
from ple . games . pong import Pong
game = Pong ()
بعد ذلك ، نقوم بتكوين وتهيئة PLE:
from ple import PLE
p = PLE ( game , fps = 30 , display_screen = True , force_fps = False )
p . init ()
خيارات أعلاه توجيه PLE لعرض شاشة اللعبة ، مع display_screen
، مع السماح Pygame بتحديد توقيت التأخير المناسب بين الإطارات لضمان 30 إطارًا في الثانية مع force_fps
.
أنت حر في استخدام أي وكيل مع PLE. أدناه نقوم بإنشاء وكيل خيالي ونتخذ الإجراءات الصحيحة:
myAgent = MyAgent ( p . getActionSet ())
يمكننا الآن أن يكون لدينا وكيلنا ، بمساعدة PLE ، يتفاعل مع اللعبة على عدد معين من الإطارات:
nb_frames = 1000
reward = 0.0
for f in range ( nb_frames ):
if p . game_over (): #check if the game is over
p . reset_game ()
obs = p . getScreenRGB ()
action = myAgent . pickAction ( reward , obs )
reward = p . act ( action )
مثل هذا لدينا وكيلنا يتفاعل مع بيئة لعبتنا.
PLE يتطلب التبعيات التالية:
استنساخ الريبو وتثبيت مع PIP.
git clone https://github.com/ntasfi/PyGame-Learning-Environment.git
cd PyGame-Learning-Environment/
pip install -e .
اضبط ما يلي في الكود الخاص بك قبل الاستخدام:
os . putenv ( 'SDL_VIDEODRIVER' , 'fbcon' )
os . environ [ "SDL_VIDEODRIVER" ] = "dummy"
بفضل wooridle.
cd
في دليل PyGame-Learning-Environment
وقم بتشغيل ما يلي:
git pull
إذا ساعد PLE في بحثك ، فيرجى الاستشهاد به في منشوراتك. مثال على إدخال bibtex:
@misc{tasfi2016PLE,
author = {Tasfi, Norman},
title = {PyGame Learning Environment},
year = {2016},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {url{https://github.com/ntasfi/PyGame-Learning-Environment}}
}