ACME هي مكتبة لتعليم التعزيز (RL) اللبنات التي تسعى جاهدة لفضح وكلاء بسيطة وفعالة وقابلة للقراءة. هذه الوكلاء أولاً وقبل كل شيء يخدمون كطبقات مرجعية بالإضافة إلى توفير خطوط أساسية قوية لأداء الخوارزمية. ومع ذلك ، يجب أن توفر عوامل خط الأساس المكشوفة من قبل ACME مرونة وبساطة كافية يمكن استخدامها ككتلة انطلاق للبحث الجديد. أخيرًا ، تم تصميم اللبنات الأساسية لـ ACME بطريقة يمكن تشغيل الوكلاء بمقاييس متعددة (على سبيل المثال الوكلاء المفرد مقابل الوكلاء الموزعة).
أسرع طريقة للبدء هي إلقاء نظرة على أمثلة رمز العمل المفصل الموجودة في الأمثلة الفرعية. توضح هذه كيفية إنشاء إنشاء عدد من العوامل المختلفة وتشغيلها في مجموعة متنوعة من البيئات. راجع دفتر Notebor QuickStart للحصول على غوص أسرع في استخدام وكيل واحد. يمكن العثور على مزيد من التفاصيل حول البناء الداخلي للوكيل داخل دفتر ملاحظات البرنامج التعليمي. أخيرًا ، يمكن العثور على الوصف الكامل ACME ومكوناته الأساسية عن طريق الإشارة إلى الوثائق. يمكن العثور على مزيد من المعلومات الأساسية والتفاصيل وراء قرارات التصميم في تقريرنا الفني.
ملاحظة: ACME هو أولاً وقبل كل شيء إطارًا لأبحاث RL التي كتبها الباحثون ، للباحثين. نستخدمه لعملنا على أساس يومي. لذلك مع وضع ذلك في الاعتبار ، بينما سنقوم بكل محاولة للحفاظ على كل شيء في حالة عمل جيدة ، قد تنكسر الأمور من حين لآخر. ولكن إذا كان الأمر كذلك ، فسنبذل قصارى جهدنا لإصلاحها في أسرع وقت ممكن!
للاستيقاظ والتشغيل بسرعة ، فقط اتبع الخطوات أدناه:
بينما يمكنك تثبيت ACME في بيئة Python القياسية ، نوصي بشدة باستخدام بيئة افتراضية Python لإدارة تبعياتك. يجب أن يساعد هذا في تجنب تعارضات الإصدار وجعل عملية التثبيت أسهل بشكل عام.
python3 -m venv acme
source acme/bin/activate
pip install --upgrade pip setuptools wheel بينما يمكن تثبيت مكتبة dm-acme الأساسية مباشرة ، فإن مجموعة التبعيات المتضمنة للتثبيت ضئيلة. على وجه الخصوص ، لتشغيل أي من الوكلاء المشمولين ، ستحتاج أيضًا إلى إما Jax أو TensorFlow اعتمادًا على الوكيل. نتيجة لذلك ، نوصي بتثبيت هذه المكونات أيضًا ، أي
pip install dm-acme[jax,tf]أخيرًا ، لتثبيت بعض البيئات على سبيل المثال (بما في ذلك صالة الألعاب الرياضية و DM_Control و BSUITE):
pip install dm-acme[envs] التثبيت من Github : إذا كنت مهتمًا بتشغيل إصدار حافة النزيف من ACME ، فيمكنك القيام بذلك عن طريق استنساخ مستودع ACME Github ثم تنفيذ الأمر التالي من الدليل الرئيسي (حيث يوجد setup.py ):
pip install .[jax,tf,testing,envs]إذا كنت تستخدم ACME في عملك ، فيرجى الاستشهاد بالتقرير الفني المصاحب المحدث:
@article { hoffman2020acme ,
title = { Acme: A Research Framework for Distributed Reinforcement Learning } ,
author = {
Matthew W. Hoffman and Bobak Shahriari and John Aslanides and
Gabriel Barth-Maron and Nikola Momchev and Danila Sinopalnikov and
Piotr Sta'nczyk and Sabela Ramos and Anton Raichuk and
Damien Vincent and L'eonard Hussenot and Robert Dadashi and
Gabriel Dulac-Arnold and Manu Orsini and Alexis Jacq and
Johan Ferret and Nino Vieillard and Seyed Kamyar Seyed Ghasemipour and
Sertan Girgin and Olivier Pietquin and Feryal Behbahani and
Tamara Norman and Abbas Abdolmaleki and Albin Cassirer and
Fan Yang and Kate Baumli and Sarah Henderson and Abe Friesen and
Ruba Haroun and Alex Novikov and Sergio G'omez Colmenarejo and
Serkan Cabi and Caglar Gulcehre and Tom Le Paine and
Srivatsan Srinivasan and Andrew Cowie and Ziyu Wang and Bilal Piot and
Nando de Freitas
} ,
year = { 2020 } ,
journal = { arXiv preprint arXiv:2006.00979 } ,
url = { https://arxiv.org/abs/2006.00979 } ,
}