منصوبے کے بارے میں
decisionrl ایک کمک سیکھنے کی لائبریری ہے جو خاص طور پر آپریشنل فیصلہ سازی کے مسائل جیسے قیمت کا تعین، انوینٹری مینجمنٹ، توانائی کی تقسیم، قطار میں داخلے، اور سپلائی چین آپٹیمائزیشن کے لیے بنائی گئی ہے۔ عام مقصد والے RL فریم ورکس کے برعکس جو گیمز اور روبوٹکس کو نشانہ بناتے ہیں، decisionrl ہر اطلاقی مسئلے کو ایک فرسٹ کلاس ماحول کے طور پر پیش کرتا ہے جس کے ساتھ کلاسیکی آپریشنز ریسرچ بیس لائن ہوتی ہے، تاکہ سیکھی ہوئی پالیسی کو معیاری طریقہ کے مقابلے میں ناپا جا سکے بجائے اس کے کہ صرف یہ دعویٰ کیا جائے کہ وہ اچھی ہے۔
لائبریری 31 الگورتھم فراہم کرتی ہے جن میں جدولی طریقے (Q-Learning, SARSA, Expected SARSA, Dyna-Q)، ویلیو پر مبنی ڈیپ RL (DQN, Rainbow, C51, QR-DQN)، ایکٹر-کریٹک طریقے (PPO, A2C, TRPO, GRPO, IMPALA, Recurrent PPO)، مسلسل کنٹرول (DDPG, TD3, SAC, SACDiscrete)، آف لائن RL (TD3+BC, IQL, CQL, Decision Transformer)، ماڈل پر مبنی نقطہ نظر (MBPO, Dreamer, DreamerRSSM)، گول کنڈیشنڈ لرننگ (HER+DQN)، اور نقلی سیکھنا (Diffusion Policy) شامل ہیں۔ ہر ایجنٹ ایک یکساں predict/learn/save/load انٹرفیس پیش کرتا ہے خواہ وہ جدولی ہو یا ڈیپ، مجرد ہو یا مسلسل، آن-پالیسی ہو یا آف-پالیسی۔
بنیادی حصہ کم انحصار والا ہے: ماحول، کلاسیکی بیس لائنز، اور سالورز خالص NumPy ہیں، جبکہ PyTorch ایک اختیاری اضافہ ہے جس کی ضرورت صرف ان الگورتھمز کو ہوتی ہے جو تربیت کرتے ہیں۔ بلٹ ان ماحول میں GridWorld, CartPole, Pendulum, PointMass, اور bandits شامل ہیں، جو اضافی انسٹال کے بغیر اینڈ ٹو اینڈ تربیت کی اجازت دیتے ہیں۔ Gymnasium ماحول ایک اختیاری اضافے کے طور پر دستیاب ہیں۔
اطلاقی ماحول میں غیر مستحکم انوینٹری جس میں مانگ میں اتار چڑھاؤ ہوتا ہے، دو سطحی سپلائی چینز، قطار داخلہ کنٹرول، انرجی مائیکرو گرڈ بیٹری مینجمنٹ، تھرموسٹیٹ/HVAC کنٹرول، مستحکم انوینٹری، متحرک قیمت کا تعین، اور مشترکہ قیمت کے ساتھ انوینٹری شامل ہیں۔ ہر ایک میں تلاش کے ذریعے حاصل کردہ بہترین فکسڈ رول کلاسیکی بیس لائن شامل ہے، نہ کہ کوئی سادہ پہلے سے طے شدہ۔ نتائج ظاہر کرتے ہیں کہ غیر مستحکم کاموں میں سیکھی ہوئی پالیسی کلاسیکی بیس لائن سے بہتر کارکردگی دکھاتی ہے (مثلاً، بڑھتے ہوئے انوینٹری پر تقریباً 16% بہتری، انرجی مائیکرو گرڈ پر 20%، سپلائی چین لاگت میں کمی پر 15%) اور مستحکم کاموں پر درست ڈائنامک پروگرامنگ آپٹیمم سے مماثل ہوتی ہے۔ ایک کیس اسٹڈی انوینٹری کے ماحول کو 1959 سے 2009 تک کے سہ ماہی امریکی حقیقی کھپت کے اعداد و شمار سے چلاتی ہے، جس سے ظاہر ہوتا ہے کہ سیکھی ہوئی پالیسی بہترین فکسڈ بیس اسٹاک سے بہتر کارکردگی دکھاتی ہے کیونکہ حقیقی مانگ کے رجحانات ہوتے ہیں اور کوئی ایک آرڈر اپ ٹو لیول ہر دور کے لیے موزوں نہیں ہوتا۔
لائبریری میں سیاق و سباق سے متعلق بندٹس بھی شامل ہیں (LinUCB, linear Thompson sampling, epsilon-greedy) یک طرفہ فیصلوں جیسے قیمت کا تعین اور سفارش کے لیے، کنٹرول کاموں پر RLHF اور DPO اور ایک کریکٹر لیول GPT، نقلی سیکھنا (BC, DAgger, GAIL)، تجسس پر مبنی ایکسپلوریشن (RND, ICM)، گریڈینٹ فری آپٹیمائزیشن (12 ارتقائی اور سوآرم طریقے جو ask/tell انٹرفیس کے ساتھ ہیں نیز NeuroevolutionAgent)، AlphaZero جس میں MCTS اور سیلف پلے شامل ہیں دو کھلاڑیوں کے مکمل معلومات والے کھیلوں کے لیے، میٹا-RL (RL²) کاموں کی تقسیم میں آن لائن موافقت کے لیے، ملٹی ایجنٹ سیلف پلے IPPO کے ساتھ، تقسیم شدہ IMPALA طرز کے ایکٹرز جو مرکزی V-trace سیکھنے والے کو فیڈ کرتے ہیں، اور ONNX اور TorchScript ایکسپورٹ جس میں ٹارچ فری FastAPI سرونگ کنٹینر شامل ہے۔
ایک کمانڈ لائن انٹرفیس تربیت، تشخیص، اور لائیو ڈیش بورڈ ویژولائزیشن کو سپورٹ کرتا ہے۔ تجربات YAML یا JSON میں بیان کیے جا سکتے ہیں اور decisionrl run یا decisionrl.config.run کے ساتھ چلائے جا سکتے ہیں۔ تولید پذیری کو Python, NumPy, اور PyTorch کے درمیان سیڈ قابل RNGs کے ذریعے یقینی بنایا جاتا ہے، جس میں 400 سے زیادہ ٹیسٹوں کا سوٹ ہوتا ہے جو اجزاء کی درستی (spaces, buffers, sum-tree, schedules, GAE, normalization, save/load round-trips) اور سیکھنے کے رویے (جدولی طریقے بہترین GridWorld پالیسی تک پہنچتے ہیں؛ DQN اور PPO CartPole سیکھتے ہیں؛ SAC, TD3, اور DDPG PointMass کام حل کرتے ہیں) کا احاطہ کرتا ہے۔ ایک طے شدہ CI ورک فلو رات کے وقت ملٹی سیڈ اطلاقی تصدیق کو دوبارہ چلاتا ہے اور اگر کوئی رپورٹ شدہ نتیجہ اپنی بیس لائن سے نیچے چلا جائے تو ناکام ہو جاتا ہے۔
یہ پروجیکٹ MIT لائسنس کے تحت ہے اور اس نے ڈیزائن کی تحریک CleanRL, Stable-Baselines3, Tianshou, اور Farama Foundation کے Gymnasium انٹرفیس سے لی ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.