तर्क प्रणाली (रीजनिंग सिस्टम)

सूचना प्रौद्योगिकी में तर्क प्रणाली सॉफ्टवेयर प्रणाली है जो निगमनात्मक तर्क और आगमनात्मक तर्क जैसी लॉजिकल तकनीकों का उपयोग करके उपलब्ध ज्ञान से निष्कर्ष उत्पन्न करती है। तर्क प्रणाली कृत्रिम बुद्धिमत्ता और ज्ञान आधारित प्रणालियों के कार्यान्वयन में महत्वपूर्ण भूमिका निभाती है।

वाक्यांश की परिभाषा के अनुसार, सभी कंप्यूटर प्रणाली तर्क प्रणाली हैं, जिसमें वे सभी किसी प्रकार के तर्क या निर्णय को स्वचालित करते हैं। सूचना प्रौद्योगिकी क्षेत्र के विशिष्ट उपयोग में चूँकि, वाक्यांश सामान्यतः उन प्रणालियों के लिए आरक्षित होता है जो अधिक जटिल प्रकार के तर्क करते हैं। उदाहरण के लिए, यह उन प्रणालियों के लिए नहीं है जो विक्रय कर या ग्राहक छूट की गणना करने जैसे सरल प्रकार के तर्क करते हैं किन्तु चिकित्सा निदान या गणितीय प्रमेय के संबंध में लॉजिकल निष्कर्ष निकालते हैं। रीज़निंग सिस्टम दो मोड इंटरएक्टिव और बैच प्रोसेसिंग में होते हैं। इंटरएक्टिव सिस्टम इंटरफ़ेस यूजर को तर्क प्रक्रिया को निर्देशित करने की अनुमति प्रदान करता है। बैच प्रणाली सभी उपलब्ध सूचनाओं को साथ लेते हैं और यूजर प्रतिक्रिया के अतिरिक्त सर्वोत्तम संभव उत्तर उत्पन्न करते हैं।

तर्क प्रणाली में अनुप्रयोग का विस्तृत क्षेत्र होता है जिसमें शेड्यूलिंग, व्यावसायिक नियम प्रोसेसिंग, समस्या समाधान, जटिल घटना प्रसंस्करण, इंट्रूज़न डिटेक्शन, प्रेडिक्टिव एनालिटिक्स, रोबोटिक्स, कंप्यूटर दृष्टि और प्राकृतिक भाषा प्रसंस्करण सम्मिलित हैं।

इतिहास
प्रथम तर्क प्रणालियाँ प्रमेय सिद्ध प्रणालियाँ थीं जो प्रथम क्रम तर्क में एक्सिओम्स और कथनों का प्रतिनिधित्व करती हैं और तत्पश्चात नए कथनों का अनुमान लगाने के लिए तर्क के नियमों जैसे मॉडस पोनेन्स का उपयोग करती हैं। अन्य प्रारंभिक प्रकार की तर्क प्रणाली जनरल प्रॉब्लम सॉल्वर थी। ये एलन नेवेल और हर्ब साइमन द्वारा डिज़ाइन की गई जनरल प्रॉब्लम सॉल्वर जैसी प्रणालियाँ थीं। सामान्य समस्या सॉल्वर ने सामान्य नियोजन इंजन प्रदान करने का प्रयास किया जो संरचित समस्याओं का प्रतिनिधित्व और समाधान कर सके। उन्होंने समस्याओं को छोटी और अधिक प्रबंधनीय उप-समस्याओं में विभाजित करके कार्य किया, प्रत्येक उप-समस्या को हल किया और आंशिक उत्तरों को अंतिम उत्तर में जोड़ दिया। अन्य उदाहरण जनरल प्रॉब्लम सॉल्वर प्रणाली का सोर (संज्ञानात्मक वास्तुकला) सदस्य था।

ये प्रमेय सॉल्वर और जनरल प्रॉब्लम सॉल्वर संभवतः व्यावहारिक अनुप्रयोगों के लिए उपयोगी थे और जिसका उपयोग करने के लिए तर्क ज्ञानी विशेष यूजरो की आवश्यकता होती थी। स्वचालित तर्क का प्रथम व्यावहारिक अनुप्रयोग विशेषज्ञ प्रणाली थी। विशेषज्ञ प्रणालियाँ सामान्य समस्या समाधान जैसे चिकित्सा निदान या किसी विमान में दोषों का विश्लेषण करने की तुलना में अधिक उचित प्रकार से परिभाषित डोमेन पर ध्यान केंद्रित करती हैं। विशेषज्ञ प्रणालियाँ तर्क के अधिक सीमित कार्यान्वयन पर भी ध्यान केंद्रित करती हैं। तार्किक अभिव्यक्तियों की पूर्ण श्रृंखला को कार्यान्वित करने के प्रयास के अतिरिक्त वे सामान्यतः IF-THEN नियमों के माध्यम से कार्यान्वित किए गए मॉडस-पोन्स पर ध्यान केंद्रित करते हैं। विशिष्ट डोमेन पर ध्यान केंद्रित करने और तर्क के सीमित उपसमुच्चय की अनुमति देने से प्रणालियों के प्रदर्शन में सुधार हुआ जिससे वास्तविक संसार में उपयोग व्यावहारिक हो गया और अनुसंधान प्रदर्शनों के रूप में स्वचालित तर्क प्रणालियां थीं। विशेषज्ञ प्रणालियों में स्वचालित तर्क के लिए उपयोग किए जाने वाले इंजन को सामान्यतः अनुमान इंजन कहा जाता था। अधिक सामान्य तार्किक निष्कर्ष के लिए उपयोग किए जाने वाले को सामान्यतः स्वचालित प्रमेय समर्थक कहा जाता है।

विशेषज्ञ प्रणालियों की लोकप्रियता में वृद्धि के साथ सरकार और उद्योग में विविध समस्याओं के लिए विभिन्न प्रकार के स्वचालित तर्क प्रयुक्त किए गए थे। केस-आधारित रीजनिंग जैसे कुछ विशेषज्ञ प्रणालियाँ अनुसंधान के ऑफ शूट थे। कंस्ट्रेंट्स सेटिस्फैक्शन एल्गोरिदम भी निर्णय प्रौद्योगिकी और रैखिक प्रोग्रामिंग जैसे क्षेत्रों से प्रभावित थे। इसके अतिरिक्त पूर्ण रूप से भिन्न दृष्टिकोण, जो प्रतीकात्मक तर्क के आधार पर नहीं है, किन्तु कनेक्शनवादी मॉडल पर भी अधिक उत्पादक रहा है। इस प्रकार का स्वचालित तर्क विशेष रूप से पैटर्न मिलान और सिग्नल डिटेक्शन प्रकार की समस्याओं जैसे टेक्स्ट सर्चिंग और फेस मैचिंग के लिए उपयुक्त होता है।

तर्क का प्रयोग
तर्क प्रणाली शब्द का उपयोग प्रायः किसी भी प्रकार की परिष्कृत निर्णय समर्थन प्रणाली को प्रयुक्त करने के लिए किया जा सकता है जैसा कि नीचे वर्णित विशिष्ट क्षेत्रों द्वारा प्रदर्शित किया गया है। चूँकि, तर्क प्रणाली शब्द का सामान्य उपयोग तर्क के कंप्यूटर प्रतिनिधित्व को दर्शाता है। औपचारिक प्रणाली और औपचारिकता के संदर्भ में विभिन्न कार्यान्वयन महत्वपूर्ण भिन्नता प्रदर्शित करते हैं। अधिकांश तर्क प्रणालियाँ प्रस्तावपरक तर्क और प्रतीकात्मक तर्क (विधेय तर्क) की विविधताओं को कार्यान्वित करते हैं। ये विविधता औपचारिक तर्क प्रणालियों (जैसे प्रथम-क्रम तर्क) अथवा उन प्रणालियों के विस्तारित और संकर तर्क संस्करणों (जैसे विनम्र तर्क) के गणितीय रूप से त्रुटिहीन प्रतिनिधित्व हो सकते हैं। तर्क प्रणाली स्पष्ट रूप से अतिरिक्त लॉजिक प्रकारों (जैसे मॉडल तर्क, डोंटिक तर्क, टेम्पोरल लॉजिक्स) को कार्यान्वित कर सकते हैं। चूँकि विभिन्न तर्क प्रणालियाँ मान्यता प्राप्त तर्क प्रणालियों के लिए अभेद्य और अर्ध-औपचारिक अनुमानों को कार्यान्वित करती हैं। विभिन्न तर्क रणनीतियों को मॉडल करने के लिए ये प्रणालियाँ सामान्यतः विभिन्न प्रकार की प्रक्रियात्मक और अर्ध-घोषणात्मक प्रोग्रामिंग तकनीकों का समर्थन करती हैं।

विभिन्न तर्क प्रणालियाँ उपलब्ध ज्ञान से निष्कर्ष प्राप्त करने के लिए निगमनात्मक तर्क को नियोजित करती हैं। ये अनुमान इंजन मॉडस पोनेंस के माध्यम से निष्कर्ष प्राप्त करने के लिए अग्र तर्क का समर्थन करते हैं। उनके द्वारा नियोजित रिकर्सिव रीजनिंग विधियों को क्रमशः फॉरवर्ड चेनिंग और 'बैकवर्ड चेनिंग' कहा जाता है। यद्यपि तर्क प्रणालियां व्यापक रूप से निगमनात्मक अनुमान का समर्थन करती हैं, कुछ प्रणालियां एबडक्टिव, इनडक्टिव, अक्षम्य और अन्य प्रकार के तर्कों को नियोजित करती हैं। कम्प्यूटेशनल कम्प्लेक्सिटी सिद्धांत के स्वीकार्य समाधान निर्धारित करने के लिए ह्यूरिस्टिक्स को भी नियोजित किया जा सकता है।

तर्क प्रणालियाँ संवृत विश्व धारणा (सीडब्ल्यूए) या विवृत विश्व धारणा (ओडब्ल्यूए) को नियोजित कर सकती हैं। ओडब्ल्यूए अधिकांशतः ओंटोलॉजी ज्ञान प्रतिनिधित्व और सेमांटिक वेब से जुड़ा होता है। विभिन्न प्रणालियाँ नेगेशन के लिए विभिन्न दृष्टिकोण प्रदर्शित करती हैं। तार्किक पूरक या बिटवाइज़ पूरक प्रणालियाँ नेगेशन-फेलियर और 'मुद्रास्फीति' नेगेशन सहित दृढ़ और निर्बल नेगेशन के अस्तित्वगत रूपों का समर्थन कर सकती हैं। विभिन्न तर्क प्रणालियाँ मोनोटोनिक या गैर-मोनोटोनिक तर्क  स्तरीकरण (गणित) और अन्य तार्किक तकनीकों का समर्थन कर सकती हैं।

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

तर्क प्रणाली के प्रकार
यह खंड सामान्य प्रकार की तर्क प्रणाली का अविस्तृत और अनौपचारिक वर्गीकरण प्रदान करता है। ये श्रेणियां निरपेक्ष नहीं होती हैं। वे ओवरलैप करते हैं और विभिन्न तकनीकों, विधियों और कलन विधि को साझा करते हैं।

कंस्ट्रेंट सॉल्वर
कंस्ट्रेंट सॉल्वर कंस्ट्रेंट सेटिस्फैक्शन प्रोब्लेम्स (सीएसपी) को हल करते हैं। वे कंस्ट्रेंट प्रोग्रामिंग का समर्थन करते हैं। कंस्ट्रेंट (सूचना सिद्धांत) जिसे किसी वैध समस्या समाधान द्वारा पूर्ण किया जाना चाहिए। कंस्ट्रेंट को परिभाषित किया गया है और दिए गए डोमेन के भीतर वेरिएबल (गणित) पर प्रयुक्त किया गया है। प्रॉब्लम सॉल्वर समाधान ज्ञात करने और इष्टतम समाधान निर्धारित करने के लिए सर्च, बैक ट्रैकिंग और बाधा प्रसार तकनीकों का उपयोग करते हैं। वे लीनियर प्रोग्रामिंग और  नॉन-लीनियर प्रोग्रामिंग के रूपों को नियोजित कर सकते हैं। वे अधिकांशतः अत्यधिक कॉम्बिनेटरिक्स समस्या वाले स्थानों के भीतर अनुकूलन (गणित) करने के लिए उपयोग किए जाते हैं। उदाहरण के लिए, उनका उपयोग इष्टतम शेड्यूलिंग, कुशल एकीकृत परिपथ डिजाइन करने या विनिर्माण प्रक्रिया में उत्पादकता को अधिकतम करने के लिए किया जा सकता है।

प्रमेय सिद्ध करता है
स्वचालित प्रमेय सिद्ध करना गणितीय प्रमेय के गणितीय प्रमाण को निर्धारित करने के लिए स्वचालित तर्क तकनीकों का उपयोग करता है। उनका उपयोग उपस्थित प्रमाणों को सत्यापित करने के लिए भी किया जा सकता है। अकादमिक उपयोग के अतिरिक्त, प्रमेय सिद्ध करने वालों के विशिष्ट अनुप्रयोगों में एकीकृत परिपथ, सॉफ्टवेयर प्रोग्राम, इंजीनियरिंग डिजाइन आदि की शुद्धता का सत्यापन सम्मिलित है।

लॉजिक प्रोग्राम
लॉजिक प्रोग्रामिंग (एलपी) प्रोग्रामिंग भाषाओं का उपयोग करके अंकित किये गए कंप्यूटर प्रोग्राम होते हैं जिनके प्रिमिटिव और एक्सप्रेशन (प्रोग्रामिंग) गणितीय तर्क से प्रस्तुत किए गए निर्माणों का प्रत्यक्ष प्रतिनिधित्व प्रदान करते हैं। सामान्य-उद्देश्य वाली तर्क प्रोग्रामिंग भाषा का उदाहरण प्रोलॉग है। एलपी समस्याओं को हल करने के लिए लॉजिक प्रोग्रामिंग के प्रत्यक्ष अनुप्रयोग का प्रतिनिधित्व करते हैं। तर्क प्रोग्रामिंग औपचारिक तर्क के आधार पर अत्यधिक घोषणात्मक दृष्टिकोणों की विशेषता है और विभिन्न विषयों में व्यापक अनुप्रयोग होते है।

रूल इंजन
रूल इंजन कंडीशनल तर्क को असतत नियमों के रूप में दर्शाता है। रूल सेट को प्रबंधित किया जा सकता है और अन्य कार्यक्षमताओं के लिए प्रयुक्त किया जा सकता है। विभिन्न डोमेन में उनकी व्यापक प्रयोज्यता होती है। विभिन्न रूल इंजन तर्क क्षमता को कार्यान्वित करते हैं। फॉरवर्ड या बैकवर्ड चेनिंग का समर्थन करने के लिए उत्पादन प्रणाली (कंप्यूटर विज्ञान)  को कार्यान्वित करना सामान्य दृष्टिकोण होता है। प्रत्येक नियम ('प्रोडक्शन')  धारा  के संयोजन को निष्पादन योग्य क्रियाओं की सारिणी से युग्मित करता है।

रन-टाइम पर रूल इंजन तथ्यों के विरुद्ध प्रस्तुतियों को युग्मित करता है और प्रत्येक मैच के लिए संबंधित क्रिया सारिणी को निष्पादित करता है। यदि ये क्रियाएं तथ्य को विस्थापित करती हैं या संशोधित करती हैं, तो इंजन शीघ्र ही सेट की पुनः गणना करता है। स्वचालित प्रक्रियाओं में निर्णय को नियंत्रित करने और व्यापार एवं तकनीकी नीतियों को प्रयुक्त करने के लिए रूल इंजनों का व्यापक रूप से उपयोग किया जाता है।

डिडक्टिव क्लासिफायर
डिडक्टिव क्लासिफायर नियम-आधारित प्रणालियों की तुलना में कुछ समय पश्चात उत्पन्न हुए और ये नए प्रकार के कृत्रिम बुद्धिमत्ता ज्ञान प्रतिनिधित्व उपकरण के घटक थे जिसे फ्रेम भाषा के रूप में जाना जाता है। फ्रेम भाषा समस्या डोमेन को वर्गों, उपवर्गों और वर्गों के मध्य संबंधों के सेट के रूप में वर्णित करती है। यह ऑब्जेक्ट-ओरिएंटेड मॉडल के समान है। ऑब्जेक्ट-ओरिएंटेड मॉडल के विपरीत, फ्रेम भाषाओं में प्रथम क्रम तर्क के आधार पर औपचारिक सिमेंटिक होते है।

वे इस सिमेंटिक का उपयोग डिडक्टिव क्लासिफायरियर को इनपुट प्रदान करने के लिए करते हैं। क्लासिफायरियर मॉडल (ओन्टोलॉजी के रूप में जाना जाता है) का विश्लेषण कर सकता है और यह निर्धारित कर सकता है कि मॉडल में वर्णित विभिन्न संबंध सुसंगत हैं अथवा नहीं। यदि ओन्टोलॉजी सुसंगत नहीं होती है तो क्लासिफायर उन घोषणाओं को स्पष्ट करता है जो असंगत होती हैं। यदि ओन्टोलॉजी सुसंगत होती है तो वर्गीकारक अग्र तर्क कर सकता है और ओन्टोलॉजी में ऑब्जेक्ट्स के संबंध में अतिरिक्त निष्कर्ष प्राप्त कर सकता है।

उदाहरण के लिए, यह निर्धारित कर सकता है कि ऑब्जेक्ट वास्तव में उपवर्ग या अतिरिक्त वर्गों का उदाहरण है जैसा कि यूजर द्वारा वर्णित किया गया है। सेमांटिक वेब में मॉडल का वर्णन करने के लिए उपयोग की जाने वाली ऑन्कोलॉजी का विश्लेषण करने के लिए क्लासिफायर महत्वपूर्ण तकनीक है।

मशीन लर्निंग प्रणाली
मशीन लर्निंग प्रणाली अनुभव के आधार पर समय के साथ अपने व्यवहार को विकसित करते हैं। इसमें अवलोकित घटना या प्रशिक्षण उद्देश्यों के लिए प्रदान किए गए उदाहरण डेटा पर तर्क सम्मिलित हो सकता है। उदाहरण के लिए, मशीन लर्निंग प्रणाली तथ्यों की परिकल्पना उत्पन्न करने के लिए आगमनात्मक तर्क का उपयोग कर सकते हैं। लर्निंग प्रणालियाँ सामान्यीकृत नियमों का शोध करती हैं जो टिप्पणियों के अनुरूप परिणाम देते हैं और व्यवहार को नियंत्रित करने के लिए इन सामान्यीकरणों का उपयोग करते हैं।

केस आधारित तर्क प्रणाली
केस-आधारित तर्क (सीबीआर) प्रणालियाँ अन्य समस्याओं की समानताओं का विश्लेषण करके समस्याओं का समाधान प्रदान करती हैं जिनके लिए ज्ञात समाधान पूर्व ही उपस्थित होते हैं। केस-आधारित तर्क समानता के शीर्ष स्तरों का उपयोग करता है; अर्थात्, वस्तु, सुविधा और मूल्य मानदंड का उपयोग करता है। यह सादृश्य तर्क से केस-आधारित तर्क को पृथक करता है जिसमें सादृश्य तर्क गहन समानता मानदंड का उपयोग करता है, जिस प्रकार संबंध और निम्न स्तरों पर समानता नहीं होती हैं। यह अंतर केस-आधारित तर्क को उसी डोमेन की स्तिथियों में प्रयुक्त करता है क्योंकि समान वस्तुएं, विशेषताएं, और मान समान डोमेन में होने चाहिए, चूँकि संबंधों की गहन समानता मानदंड अनुरूप तर्क को क्रॉस-डोमेन प्रयुक्त करता है जहां स्तिथियों के मध्य संबंध समान होते हैं। सीबीआर प्रणाली सामान्यतः तकनीकी सहायता और कॉल सेंटर परिदृश्यों में उपयोग किए जाते हैं और विनिर्माण, कृषि, चिकित्सा, विधान और कई अन्य क्षेत्रों में अनुप्रयोग होते हैं।

प्रक्रियात्मक तर्क प्रणाली
प्रक्रियात्मक तर्क प्रणाली (पीआरएस) प्रक्रियात्मक ज्ञान आधार से योजनाओं का चयन करने के लिए तर्क तकनीकों का उपयोग करती है। प्रत्येक योजना लक्ष्य की उपलब्धि के लिए क्रिया का प्रतिनिधित्व करती है। पीआरएस लक्ष्यों की उपयुक्त योजनाओं का चयन करने के लिए तथ्यों पर तर्क करके बिलीफ-डिजायर-इंटेंशन सॉफ्टवेयर मॉडल को कार्यान्वित करता है। पीआरएस के विशिष्ट अनुप्रयोगों में प्रबंधन, निरीक्षण और फाल्ट डिटेक्शन प्रणालियां सम्मिलित हैं।