में वजन करने के लिए कौन से इनपुट का निर्धारण करना मैंने एक बार टेट्रिस एआई लिखा था जिसने टेट्रिस को काफी अच्छी तरह से खेला था। मैंने उपयोग किया गया एल्गोरिदम (described in this paper) दो-चरणीय प्रक्रिया है।एक विकासवादी एल्गोरिदम
पहले चरण में, प्रोग्रामर समस्या को ट्रैक करने का निर्णय लेता है जो समस्या के लिए "दिलचस्प" है। टेट्रिस में हमें यह जानने में दिलचस्पी हो सकती है कि पंक्ति में कितने अंतर हैं क्योंकि कम से कम अंतराल भविष्य के टुकड़ों को और आसानी से रखने में मदद कर सकता है। एक और औसत कॉलम ऊंचाई हो सकता है क्योंकि यदि आप खोने वाले हैं तो जोखिम लेने का बुरा विचार हो सकता है।
दूसरा चरण प्रत्येक इनपुट से जुड़े वजन निर्धारित कर रहा है। यह वह हिस्सा है जहां मैंने आनुवांशिक एल्गोरिदम का उपयोग किया था। कोई भी सीखने वाला एल्गोरिदम यहां करेगा, जब तक कि परिणाम परिणामों के आधार पर समय के साथ समायोजित किया जाता है। विचार कंप्यूटर को यह तय करने देना है कि इनपुट समाधान से कैसे संबंधित है।
इन इनपुट और उनके वजन का उपयोग करके हम कोई भी कार्रवाई करने का मूल्य निर्धारित कर सकते हैं। उदाहरण के लिए, यदि सही कॉलम में सीधे लाइन आकार डालने से 4 अलग-अलग पंक्तियों के अंतराल खत्म हो जाएंगे, तो इसका वजन बहुत अधिक स्कोर हो सकता है यदि उसका वजन ऊंचा हो। इसी तरह, इसे शीर्ष पर फ्लैट रखना वास्तव में अंतराल का कारण बन सकता है और ताकि कार्रवाई कम स्कोर हो।
मैंने हमेशा सोचा है कि पहले चरण में सीखने वाले एल्गोरिदम को लागू करने का कोई तरीका है, जहां हमें "रोचक" संभावित इनपुट मिलते हैं। ऐसा लगता है कि एक एल्गोरिदम लिखना संभव है जहां कंप्यूटर पहले सीखता है कि कौन से इनपुट उपयोगी हो सकते हैं, फिर उन इनपुटों का वजन करने के लिए सीखने पर लागू होता है। क्या इससे पहले कुछ किया गया है? क्या यह किसी भी एआई अनुप्रयोगों में पहले से ही इस्तेमाल किया जा रहा है?
+1 मैं इस क्षेत्र में आरंभ करने के लिए कोशिश कर रहा हूँ। मेरे पास कुछ पालतू डेमो कार्यक्रम हैं लेकिन अभी तक कुछ भी बड़ा नहीं है। यह देखने में रूचि है कि आप इस पर किस प्रकार के उत्तर वापस प्राप्त करते हैं। –