← नवीनतम पेपर
🤖 AI

Animation, Verification and Visualisation of Prolog Transition Systems with ProB

यह शोध पत्र ProB के प्रोलॉग (Prolog) एनिमेशन मोड के हालिया विस्तार प्रस्तुत करता है, जिसमें उन्नत सिमुलेशन, ट्रेस रिप्ले, उपयोगकर्ता इनपुट और विज़ुअलाइज़ेशन सुविधाएँ शामिल हैं, जिन्हें रणनीति मूल्यांकन, इवेंट-बी (Event-B) प्रमाण सत्यापन और शैक्षिक प्रदर्शनों का समर्थन करने के लिए 'कनेक्ट फोर' (Connect Four) जैसे केस स्टडीज पर लागू किया गया है।

मूल लेखक: Jan Gruteser, Michael Leuschel, Katharina Engels, Fabian Vu

प्रकाशित 2026-07-24
📖 9 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Jan Gruteser, Michael Leuschel, Katharina Engels, Fabian Vu

मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

कल्पना कीजिए कि आप एक जासूस हैं जो एक रहस्य सुलझाने की कोशिश कर रहे हैं, लेकिन आपका "अपराध" कोई अपराध स्थल नहीं, बल्कि कंप्यूटर कोड का एक टुकड़ा है जिसमें कोई बग (खामी) छिपा हो सकता है। कंप्यूटर विज्ञान की दुनिया में, इसे फॉर्मल वेरिफिकेशन (formal verification) कहा जाता है। यह एक सटीक, गणितीय मानचित्र बनाने जैसा है कि एक प्रोग्राम को वास्तव में कैसे व्यवहार करना चाहिए, और फिर यह सुनिश्चित करने के लिए हर एक कदम की जाँच करना कि प्रोग्राम रास्ता न भटक जाए या क्रैश न हो जाए। आमतौर पर, इसमें जटिल गणित शामिल होता है जिसे केवल विशेषज्ञ ही पढ़ सकते हैं। लेकिन क्या होगा यदि आप उस नीरस गणित को एक जीवंत, सांस लेते हुए वीडियो गेम में बदल सकें? यही प्रोलॉग (Prolog) का जादू है, एक ऐसी प्रोग्रामिंग भाषा जो मानक निर्देशों के बजाय तर्क पहेलियों (logic puzzles) में सोचती है। जब आप प्रोलॉग को PROB नामक टूल के साथ मिलाते हैं, तो आपको एक "मॉडल चेकर" मिलता है—एक सुपर-स्मार्ट रोबोट जो आपकी तर्क पहेली को चलते हुए देख सकता है, गलतियाँ पकड़ सकता है, और यहाँ तक कि आपको कहानी के एक समय में एक कदम आगे बढ़ने और यह देखने की अनुमति भी दे सकता है कि चीजें कहाँ गलत हो रही हैं।

यह शोध पत्र उस रोबोट को एक बड़ा अपग्रेड देने के बारे में है। लेखक, जो हेनरिक हाइने यूनिवर्सिटी डसेलडॉर्फ की एक टीम है, ने एक मौजूदा टूल PROB (जो पहले से ही प्रोलॉग बोलता है) को लिया है और उसमें सुपरपावर्स का एक पूरा नया सेट जोड़ दिया है। इसे एक ब्लैक-एंड-व्हाइट स्केचबुक को हाई-डेफिनिशन, इंटरैक्टिव मूवी स्टूडियो में बदलने के रूप में सोचें। उन्होंने इसे विज़ुअलाइज़ (दृश्य रूप में देखना) करना आसान बनाया है, हजारों गेमों को सेकंडों में सिम्युलेट करने का एक तरीका जोड़ा है ताकि रणनीतियों का परीक्षण किया जा सके, और एक ऐसा सिस्टम बनाया है जहाँ आप क्रिया को रोक सकते हैं, कंप्यूटर को एक विशिष्ट निर्देश दे सकते हैं, और उसे प्रतिक्रिया देते हुए देख सकते हैं। उन्होंने इन नई विशेषताओं का परीक्षण करने के लिए क्लासिक गेम कनेक्ट फोर (Connect Four) को एक तर्क पहेली में बदल दिया, और अलग-अलग कंप्यूटर "मस्तिष्क" को एक-दूसरे के खिलाफ लड़ाकर देखा कि कौन जीतता है। परिणाम एक ऐसा टूलकिट है जो जटिल कंप्यूटर तर्क की जाँच करना होमवर्क करने के बजाय एक खेल खेलने जैसा बना देता है।

"जीवंत" तर्क मानचित्र का जादू

अपने मूल में, यह शोध पत्र बताता है कि प्रोलॉग (एक भाषा जो "यदि यह, तो वह" वाले कथनों की सूची की तरह दिखती है) में लिखे गए नियमों के सेट को एक ट्रांज़िशन सिस्टम (transition system) में कैसे बदला जाए। एक बोर्ड गेम की कल्पना करें जहाँ हर वर्ग एक "स्टेट" (जैसे "पैडेस्ट्रियन लाइट रेड है") है और हर चाल एक "ट्रांज़िशन" (जैसे "ग्रीन में स्विच होना") है। पुराने दिनों में, PROB इन नियमों को लोड कर सकता था और आपको एक बटन दबाकर एक वर्ग से दूसरे वर्ग पर जाने और पथ दिखाने की अनुमति दे सकता था। लेकिन यह थोड़ा बोझिल था।

लेखकों ने इस अनुभव को काफी बेहतर बनाया है। सबसे पहले, उन्होंने विजुअल्स (दृश्य) को बहुत बेहतर बनाया है। पहले, आपको शायद केवल "स्टेट: रेड" कहता हुआ टेक्स्ट की एक सूची दिखाई देती थी। अब, उन्होंने ऐसे टूल्स को एकीकृत किया है जो वास्तविक चित्र बना सकते हैं। यदि आप ट्रैफिक लाइट का मॉडल बना रहे हैं, तो टूल अब आपकी स्क्रीन पर एक वास्तविक, चमकता हुआ लाल घेरा दिखा सकता है। यदि आप शतरंज का खेल मॉडल कर रहे हैं, तो यह मोहरों को उनके सटीक स्थानों के साथ शतरंज के बोर्ड पर प्रदर्शित कर सकता है। इससे भी शानदार, उन्होंने इंटरैक्टिव विज़ुअलाइज़ेशन जोड़ा है: आप चित्र में एक मोहरे पर राइट-क्लिक कर सकते हैं, और टूल आपको दिखाएगा कि आप कौन सी कानूनी चालें चल सकते हैं, ठीक वैसे ही जैसे एक वास्तविक वीडियो गेम में होता है। उन्होंने इन विज़ुअल कहानियों को HTML फ़ाइलों के रूप में निर्यात करने की सुविधा भी बनाई है, ताकि आप अपने तर्क पहेली की "मूवी" को किसी के भी साथ साझा कर सकें, भले ही उनके पास विशेष सॉफ़्टवेयर इंस्टॉल न हो।

"पॉज़ एंड आस्क" (रोकें और पूछें) फीचर

सबसे रोमांचक नए ट्रिक्स में से एक है जिसे वे सिंबॉलिक ट्रांज़िशन (symbolic transitions) कहते हैं। कल्पना कीजिए कि आप कंप्यूटर के खिलाफ एक खेल खेल रहे हैं, लेकिन कंप्यूटर अटक जाता है क्योंकि उसे नहीं पता कि आप अगला कौन सा कदम चाहते हैं। अतीत में, कंप्यूटर बस अनुमान लगा सकता था या रुक सकता था। अब, टूल रुक सकता है और कह सकता है, "हे, मुझे इस हिस्से के लिए एक इंसान की जरूरत है!" यह आपके द्वारा एक विशिष्ट मान (जैसे "नाइट को F3 पर ले जाओ") टाइप करने का इंतजार करता है और फिर कहानी को आगे बढ़ाता है। यह जटिल तर्क के परीक्षण के लिए बहुत बड़ा है, जैसे कि एक गणितीय प्रमेय को सिद्ध करना, जहाँ एक इंसान को एक ऐसा चुनाव करना पड़ सकता है जिसे कंप्यूटर अपने आप अनुमानित नहीं कर सकता।

उन्होंने ट्रेस रिप्ले (trace replay) में भी सुधार किया है। इसे "सेव गेम" फीचर के रूप में सोचें। यदि आपको कदमों का एक आदर्श क्रम मिलता है जो किसी समस्या को हल करता है, तो आप उसे सहेज सकते हैं। बाद में, आप उस सेव फ़ाइल को लोड कर सकते हैं, और टूल उन्हीं कदमों को स्टेप-बाय-स्टेप फिर से चलाएगा। यह सुनिश्चित करने के लिए महत्वपूर्ण है कि यदि आप आज एक बग को ठीक करते हैं, तो आपने अनजाने में उसे कल फिर से खराब नहीं किया है। नया संस्करण इन रिप्ले को एक स्मार्ट फॉर्मेट (JSON) में सहेजता है जो याद रखता है कि आप किस स्टेट में थे, ताकि रिप्ले एकदम सटीक हो।

"मिलियन-गेम" सिम्युलेटर

शायद सबसे शक्तिशाली जुड़ाव मोंटे कार्लो सिमुलेशन (Monte Carlo simulations) चलाने की क्षमता है। यह कहने का एक फैंसी तरीका है कि "चलो देखते हैं क्या होता है, इसके लिए खेल को दस लाख बार खेलते हैं।" लेखकों ने PROB को एक सिम्युलेटर से जोड़ा है जिसे SIMB कहा जाता है। केवल एक गेम देखने के बजाय, आप कंप्यूटर को लगातार 10,000 बार कनेक्ट फोर खेलने के लिए कह सकते हैं, जिससे विभिन्न रणनीतियाँ एक-दूसरे के खिलाफ लड़ सकें।

उन्होंने इसका उपयोग कनेक्ट फोर के तीन अलग-अलग "मस्तिष्कों" का परीक्षण करने के लिए किया:

  1. रैंडम (Random): एक खिलाड़ी जो बिना सोचे-समझे बस एक चाल चुन लेता है।
  2. मिनिमैक्स (Minimax): एक क्लासिक AI जो सबसे अच्छा रास्ता खोजने के लिए कुछ चालें आगे देखता है।
  3. MCTS (Monte Carlo Tree Search): एक स्मार्ट AI जो निर्णय लेने के लिए कई संभावित भविष्यों का अनुकरण करता है।

परिणाम दिलचस्प थे। जब रैंडम खिलाड़ी ने मिनिमैक्स के खिलाफ लड़ाई लड़ी, तो रैंडम खिलाड़ी लगभग 55.7% बार जीता यदि वह पहले गया, लेकिन जब मिनिमैक्स पहले गया तो यह संख्या गिरकर 7.3% रह गई। हालाँकि, जब मिनिमैक्स ने MCTS के खिलाफ लड़ाई लड़ी, तो MCTS खिलाड़ी ने उसे कुचल दिया, लगभग 99% गेम जीता। लेखकों ने नोट किया कि उनका मिनिमैक्स खिलाड़ी थोड़ा कमजोर था क्योंकि वह केवल दो चाल आगे देखता था (एक उथली खोज), जो यह समझाता है कि वह MCTS के सामने इतना बुरी तरह क्यों हारा।

उन्होंने इन खेलों में लगने वाले समय को भी मापा। रैंडम और मिनिमैक्स खिलाड़ी तेज़ थे, जिन्होंने 10,000 गेम 20 मिनट से कम समय में पूरे किए। लेकिन MCTS खिलाड़ी थोड़ा धीमा था, जिसने समान संख्या में गेम चलाने के लिए कई घंटे लिए क्योंकि वह बहुत अधिक गहन सोच कर रहा था। दिलचस्प बात यह है कि उन्होंने पाया कि MCTS खिलाड़ी को रैंडम खिलाड़ी को हराने के लिए औसतन केवल 9.7 चालों की आवश्यकता थी, जबकि मिनिमैक्स को 18.0 चालों की आवश्यकता थी।

यह क्यों मायने रखता है

यह सिर्फ गेम खेलने के बारे में नहीं है। लेखक दिखाते हैं कि ये टूल्स सिखाने के लिए भी बेहतरीन हैं। कल्पना कीजिए कि एक छात्र कोड लिखना सीख रहा है; केवल टेक्स्ट की स्क्रीन को घूरने के बजाय, वे अपने कोड को एक विज़ुअल एनिमेशन के रूप में जीवित होते देख सकते हैं। यदि वे कोई गलती करते हैं, तो वे देख सकते हैं कि "ट्रैफिक लाइट" लाल हो जाती है या "शतरंज का मोहरा" गायब हो जाता है, जिससे यह समझना बहुत आसान हो जाता है कि क्या गलत हुआ।

यह पेपर यह भी उजागर करता है कि यह सिस्टम इंटरप्रेटर्स (interpreters) बनाने के लिए भी बहुत अच्छा है। एक इंटरप्रेटर एक अनुवादक की तरह है जो एक प्रोग्रामिंग भाषा को दूसरी भाषा से बात करने की अनुमति देता है। PROB के नए फीचर्स का उपयोग करके, छात्र और शोधकर्ता आसानी से अन्य भाषाओं (जैसे Java या WebAssembly) के लिए अनुवादक बना सकते हैं और तुरंत उन्हें विज़ुअलाइज़र में चलते हुए देखकर टेस्ट कर सकते हैं।

अंत में, लेखक यह दावा नहीं कर रहे हैं कि उन्होंने कंप्यूटर विज्ञान की सभी समस्याओं को हल कर लिया है। वे सुझाव दे रहे हैं कि इन लॉजिकल टूल्स को अधिक विज़ुअल, इंटरैक्टिव और बड़े पैमाने पर सिमुलेशन करने में सक्षम बनाकर, हम बग्स को जल्दी पकड़ सकते हैं, छात्रों को बेहतर तरीके से पढ़ा सकते हैं, और जटिल सिस्टम को अधिक गहराई से समझ सकते हैं। वे भविष्य की ओर भी संकेत करते हैं जहाँ इन टूल्स का उपयोग सुदृढीकरण शिक्षण (reinforcement learning) का उपयोग करके AI एजेंटों को प्रशिक्षित करने के लिए किया जा सकता है, जिससे कंप्यूटर मानवीय प्रयास की तरह ही ट्रायल और एरर (परीक्षण और त्रुटि) के माध्यम से गेम खेलना (या तर्क पहेलियाँ हल करना) सीख सके। लेकिन फिलहाल, मुख्य जीत शुष्क, अमूर्त तर्क प्रमाणों को एक ऐसे प्लेग्राउंड में बदलना है जहाँ आप नियमों को देख सकते हैं, छू सकते हैं और उनके साथ खेल सकते हैं।

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →