2009-07-30 17 views
14

मैं एक रैखिक और गैर-रैखिक प्रोग्रामिंग (अनुकूलन) ढांचे के लिए विकल्पों में देख रहा हूं।क्या माइक्रोसॉफ्ट सॉल्वर फाउंडेशन मेरी जरूरतों को पूरा करता है?

आवश्यकताओं हैं:

  1. समर्थन रैखिक और लगभग साथ गैर रेखीय प्रोग्रामिंग समस्याओं। 100-1000 चर और लगभग 1000 बाधाओं तक (मैं इकट्ठा करता हूं कि यह बहुत आसान है)। गैर-रैखिक समस्याओं में कई चर के गुणा या विभाजन शामिल बाधाएं होती हैं - इससे कहीं अधिक जटिल नहीं होती है।

  2. अच्छी तरह से एमएस वातावरण के साथ एकीकृत (SQL सर्वर, एमएस एक्सेस, .नेट, एक्सेल)

  3. नाइस के लिए तदर्थ समस्या परिभाषा के लिए समर्थन होगा (यानी परिभाषित करने के लिए पटकथा भाषा या समर्थन के कुछ प्रकार और एक्सेल फ्रंट एंड में समस्या को हल करना)

  4. मैं अकेले एक्सेल का उपयोग करूंगा लेकिन मुझे बड़ी समस्याओं के लिए सॉल्वर प्रोग्रामेटिक (.NET पर्यावरण) में इंटरफ़ेस करने की क्षमता भी चाहिए।

प्रोग्रामेटिक एक्सेस के लिए मैं solver (ताकि हम समाधानकर्ताओं को बदल सकता है अगर कभी जरूरत) के लिए एक सार संक्षेप इंटरफेस विकसित करने के लिए इच्छुक था। फिर मैं एमएस सोलवर फाउंडेशन (http://code.msdn.microsoft.com/solverfoundation) में ठोकर खाई जो पहले से ही इस इंटरफ़ेस में है। मैं सोच रहा हूं कि क्या यह हमारी अन्य आवश्यकताओं के संबंध में बिल को फिट करता है और उपयोगकर्ताओं के पास क्या राय है।

उत्तर

4

वैसे यह पता चला है कि माइक्रोसॉफ्ट सॉल्वर फाउंडेशन गैर-रैखिक प्रोग्रामिंग का समर्थन नहीं करता है। जनवरी 2010 तक टीम के official word इस पर है कि वे इसे पर विचार कर रहे है, लेकिन यह उनके तत्काल योजना में नहीं है।

तो मैं सॉल्वर एल्गोरिदम के लिए मॉडलिंग भाषा इंटरफ़ेस और KNITRO के रूप में AMPL पर बस गया हूं। केएनआईटीआरओ अच्छा दिखता है क्योंकि इसमें एक में तीन एल्गोरिदम होते हैं (Interior Point Method के 2 प्रकार और Active Set method में से 1)। KNITRO के लिए विकिपीडिया पृष्ठ भी देखें।

मैं एक उत्कृष्ट वेब पोर्टल जाहिरा तौर पर अमेरिका Argonne National LaboratoryNEOS कहा जाता है पर अमेरिका के राष्ट्रीय विज्ञान फाउंडेशन और ऊर्जा अमेरिका विभाग द्वारा वित्त पोषित पर दोनों के मूल्यांकन संस्करण बाहर की कोशिश कर के बाद ampl और KNITRO पर बसे। NEOS ampl या GAMS (और कुछ समाधानकर्ताओं के लिए, कुछ अन्य लोगों) का उपयोग कर अपने गणितीय मॉडल अपलोड करने और फिर अपने परिणामों को एक परिणाम वेब पेज के माध्यम से और ईमेल द्वारा वापस पाने के लिए एक वेब इंटरफेस प्रदान करता है। माना जाता है कि समस्याएं जमा करने के लिए एक ईमेल इंटरफ़ेस है लेकिन मैं इसे काम करने में सफल नहीं था।

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

+6

का समर्थन करता है (http://code.msdn.microsoft.com/solverfoundation) __ "सॉल्वर फाउंडेशन 3.0 गैरलाइनर बनाने और हल करने के लिए नई क्षमताओं को प्रदान करता है मॉडल। "__ – bobobobo

+1

सॉल्वर फाउंडेशन को एक साल पहले एक स्टैंडअलोन उत्पाद के रूप में बंद कर दिया गया है: http://nathanbrixius.wordpress.com/2012/05/25/no-more-standalone-releases-of- माइक्रोसॉफ्ट- सॉल्वर- फाउंडेशन / – vitaut

2

आपकी सूचीबद्ध आवश्यकताओं के आधार पर, ऐसा लगता है कि Microsoft Solver Foundation आपकी सभी आवश्यकताओं को पूरा करता है और फिर कुछ। "सॉल्वर फाउंडेशन क्या है?" पढ़ें सॉल्वर फाउंडेशन साइट पर दस्तावेज़। यह रैखिक प्रोग्रामिंग, गैर-रैखिक प्रोग्रामिंग का उल्लेख करता है, .NET में विकसित, एक्सेल में उपयोग कर सकते हैं, सॉल्वर फाउंडेशन एक परिचित इंटरफेस में एक पूर्ण मॉडलिंग वातावरण प्रदान करने के लिए माइक्रोसॉफ़्ट ऑफिस एक्सेल ऐड-इन के साथ आता है।

+2

मैंने माइक्रोसॉफ्ट सॉल्वर फाउंडेशन की कोशिश की लेकिन यह गैर-रैखिक समस्याओं का समर्थन नहीं करता है। – Emmanuel

+4

नवंबर 2010 तक सॉल्वर फाउंडेशन 3.0 अब तक [फ्रंट पेज राज्य] (http://code.msdn.microsoft.com/solverfoundation) के रूप में nonlinear मॉडल – bobobobo

3

मैं एक समस्या मैंने कोशिश की पर सॉल्वर फाउंडेशन की कोशिश की है (असफल) अतीत में सुलझाने और 2 दिनों में यह फटा, सॉल्वर एपीआई की शिक्षा शामिल है। सॉल्वर प्रदर्शन बहुत अच्छा है, और एसएफएस (सॉल्वर फाउंडेशन सर्विसेज) एपीआई AWESOME है।

1

जीएनयू-आधारित जीएलपीके लाइब्रेरी एक महान, मुफ्त विकल्प है। मैंने कॉलम समस्याओं के 1000s और 1000s को फेंक दिया है, इससे कोई चिंता नहीं है। इसमें कुछ अलग समस्या परिभाषा प्रारूप होते हैं, लेकिन सी या सी ++ एपीआई के माध्यम से उपयोग करने के लिए मेरे लिए सबसे आसान था। इसके पीछे इंजन के लिए सुधार हर समय होता है। मेरा मानना ​​है कि कुछ रैपर भी उपलब्ध हैं (यानी पर्ल, पायथन)।

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