2009-02-05 19 views
10

के लिए जावा नियम इंजन मैं अपने गेम के लिए एक नियम इंजन का उपयोग करना चाहता हूं। इसका इस्तेमाल एनपीसी एआई और जीएम एआई के लिए किया जाएगा।गेम एआई

इस उद्देश्य के लिए एक अच्छा और तेज़ नियम इंजन क्या हो सकता है? यह जावा और ओपन सोर्स होना चाहिए।

मैं उन लोगों से सुनना चाहता हूं जिन्होंने अपने अनुभव के बारे में आर्टिफिशियल इंटेलिजेंस के लिए जावा रूल इंजन का उपयोग किया है।

उत्तर

10

मैंने देखा है कि दो विकल्प हैं: Jess और Drools। जेस, स्पष्ट रूप से, मुद्दों है। यह खुला स्रोत नहीं है, न ही यह मुफ़्त है। इसमें एक लिस्प-जैसी वाक्यविन्यास है, जो आपके दृष्टिकोण के आधार पर या तो प्लस या माइनस है।

दूसरी तरफ, ड्रॉल्स, दोनों मुक्त, मुक्त स्रोत, और जेबॉस छतरी के नीचे है, इसलिए यह थोड़ी देर के लिए रहने की संभावना है। नियमों को सीधे जावा का उपयोग करके बुलाया जाता है, लेकिन एक डीएसएल का उपयोग करके लिखा जाता है जो गैर-प्रोग्रामर के लिए बहुत सहज है।

केवल "पकड़ लिया" मैं Drools साथ देखा है कि नियमों के संकलन धीमी हो सकती है, तो आप स्टार्टअप पर या एक स्थिर ब्लॉक में अपने संकलन को चलाने के लिए, कुछ समय है जब उपयोगकर्ता इंतजार कर मन नहीं होगा चाहता हूँ है थोड़ा सा

गुड लक!

+0

पर कोई प्रगति, mproctor आप कृपया स्पष्ट करें चाहेंगे मुद्दों किस तरह जेस है बनाया तो क्या होगा? –

+0

@hragheb मैंने पहले पैराग्राफ में मुद्दों को निर्दिष्ट किया। 1) यह खुला स्रोत नहीं है, 2) यह मुफ़्त नहीं है, 3) इसमें एक लिप-जैसे सिंटैक्स है (जो मेरे लिए एक माइनस है, हालांकि यह दूसरों के लिए नहीं हो सकता है)। इनमें से कोई भी अनिवार्य रूप से शो-स्टॉपर्स नहीं है, सिवाय इसके कि प्रत्येक, मुझे लगता है कि उत्पाद को ड्रॉल्स के प्रतिस्पर्धी नुकसान पर डाल दें। – rtperson

1

हम इस वर्ष के अंत में संकलन perf को आजमाएंगे और संबोधित करेंगे। यह सिर्फ कुछ ऐसा नहीं है जिसे हमने अभी तक केंद्रित या प्रोफाइल किया है, बजाय रनटाइम प्रदर्शन पर ध्यान केंद्रित किया है।

मुझे आपकी प्रगति के बारे में सुनने में बहुत दिलचस्पी होगी। मैं गेम के लिए नियम इंजन का सर्वोत्तम उपयोग करने के तरीके के बारे में पता लगाने के लिए एक ड्रोलस पैकमेन गेम करने की सोच रहा हूं। चूंकि गेम अक्सर घटनाओं के बारे में होते हैं और वस्तुओं के बीच संबंधों की जांच करते हैं, ऐसा लगता है कि एक उचित ट्यून नियम इंजन कुछ लाभ प्रदान कर सकता है। बाद का हिस्सा, "ट्यूनिंग" महत्वपूर्ण हो जाएगा क्योंकि कई मामलों में इंजन आंशिक मैचों में कहीं अधिक कुशल हो सकता है यदि यह सामने की जगह के बारे में जानता है। आदर्श रूप से गेम के साथ यह अक्सर मामला होता है, इसलिए हम उन मामलों के स्थानों पर इसे दर्पण करने के लिए इंजन को संकेत प्रदान कर सकते हैं।

हमारे पास संभाव्यता जोड़ने के लिए कुछ वर्तमान शोध चल रहा है, जो गेम के लिए भी दिलचस्प होना चाहिए।

वैसे तो कृपया मुझसे संपर्क करते हैं आप redhat d0t कॉम

संबंधित मुद्दे