DeepRTS เป็นเกมกลยุทธ์แบบเรียลไทม์ประสิทธิภาพสูงสำหรับการวิจัยการเรียนรู้แบบเสริมกำลัง เขียนด้วยภาษา C++ เพื่อประสิทธิภาพ แต่มีอินเทอร์เฟซแบบ python เพื่อการเชื่อมต่อกับชุดเครื่องมือการเรียนรู้ของเครื่องได้ดียิ่งขึ้น Deep RTS สามารถประมวลผลเกมได้มากกว่า 6,000,000 ขั้นตอนต่อวินาที และ 2,000,000 ขั้นตอนเมื่อเรนเดอร์กราฟิก เมื่อเปรียบเทียบกับโซลูชันอื่นๆ เช่น StarCraft นี่เป็นเวลา จำลองที่รวดเร็วกว่า 15,000% ที่ทำงานบน Intel i7-8700k พร้อม Nvidia RTX 2080 TI
เป้าหมายของ Deep RTS คือการนำโซลูชันที่ประหยัดและยั่งยืนมาสู่การวิจัย RTS AI โดยการลดเวลาในการคำนวณ
ขอแนะนำให้ใช้สาขาหลักสำหรับสภาพแวดล้อมเวอร์ชันใหม่ล่าสุด (และโดยปกติจะดีที่สุด) ฉันรู้สึกดีใจมากสำหรับข้อมูลใดๆ ที่เกี่ยวข้องกับการปรับปรุงสิ่งแวดล้อม
โปรดใช้การอ้างอิงต่อไปนี้เมื่อใช้สิ่งนี้ในงานของคุณ!
@INPROCEEDINGS{8490409,
author={P. {Andersen} and M. {Goodwin} and O. {Granmo}},
booktitle={2018 IEEE Conference on Computational Intelligence and Games (CIG)},
title={Deep RTS: A Game Environment for Deep Reinforcement Learning in Real-Time Strategy Games},
year={2018},
volume={},
number={},
pages={1-8},
keywords={computer games;convolution;feedforward neural nets;learning (artificial intelligence);multi-agent systems;high-performance RTS game;artificial intelligence research;deep reinforcement learning;real-time strategy games;computer games;RTS AIs;Deep RTS game environment;StarCraft II;Deep Q-Network agent;cutting-edge artificial intelligence algorithms;Games;Learning (artificial intelligence);Machine learning;Planning;Ground penetrating radar;Geophysical measurement techniques;real-time strategy game;deep reinforcement learning;deep q-learning},
doi={10.1109/CIG.2018.8490409},
ISSN={2325-4270},
month={Aug},}
sudo pip3 install git+https://github.com/cair/DeepRTS.git
git clone https://github.com/cair/deep-rts.git
cd deep-rts
git submodule sync
git submodule update --init
sudo pip3 install .
10x10-2-FFA
15x15-2-FFA
21x21-2-FFA
31x31-2-FFA
31x31-4-FFA
31x31-6-FFA
Deep RTS มีสถานการณ์จำลองซึ่งเป็นมินิเกมที่สร้างไว้ล่วงหน้า มินิเกมเหล่านี้เหมาะอย่างยิ่งสำหรับฝึกเจ้าหน้าที่ในงานเฉพาะ หรือเพื่อทดสอบอัลกอริธึมในการตั้งค่าปัญหาต่างๆ ประโยชน์ของการใช้สถานการณ์จำลองคือ คุณสามารถออกแบบฟังก์ชันการให้รางวัลได้เล็กน้อยโดยใช้เกณฑ์ที่แต่ละฟังก์ชันจะส่งสัญญาณการให้รางวัล/การลงโทษ ขึ้นอยู่กับความสำเร็จของงาน ตัวอย่างของงานได้แก่:
ปัจจุบัน Deep RTS ใช้สถานการณ์ต่อไปนี้
GoldCollectFifteen
GeneralAIOneVersusOne
import random
from DeepRTS . python import Config
from DeepRTS . python import scenario
if __name__ == "__main__" :
random_play = True
episodes = 100
for i in range ( episodes ):
env = scenario . GeneralAI_1v1 ( Config . Map . THIRTYONE )
state = env . reset ()
done = False
while not done :
env . game . set_player ( env . game . players [ 0 ])
action = random . randrange ( 15 )
next_state , reward , done , _ = env . step ( action )
state = next_state
if ( done ):
break
env . game . set_player ( env . game . players [ 1 ])
action = random . randrange ( 15 )
next_state , reward , done , _ = env . step ( action )
state = next_state