अनुप्रयोगको उद्देश्य रैखिक अप्टिमाइजेसनको लागि वस्तुहरूको मोडेलहरू सिर्जना गर्न र समाधान गर्नको लागि सुविधाजनक उपकरणहरू प्रदान गर्नु हो।
रैखिक अप्टिमाइजेसन, लाईनियर प्रोग्रामिङ (LP) पनि भनिन्छ, गणितीय मोडेलमा उत्कृष्ट नतिजा (जस्तै अधिकतम (न्यूनतम) नाफा वा न्यून लागत) प्राप्त गर्ने तरिका हो जसको आवश्यकता र उद्देश्य रैखिक सम्बन्धहरूद्वारा प्रतिनिधित्व गरिन्छ। रैखिक प्रोग्रामिङ गणितीय प्रोग्रामिङको एक विशेष मामला हो (गणितीय अनुकूलन पनि भनिन्छ)।
रैखिक कार्यक्रमहरू (यस एपको अर्थमा मोडेलहरू) समस्याहरू हुन् जुन मानक ढाँचाहरूमा व्यक्त गर्न सकिन्छ (विकिपेडिया):- भेक्टर x खोज्नुहोस्; - त्यो अधिकतम (न्यूनतम) Z = cx; - Ax<=b - अधिकतम मा (Ax>=b - minimizes मा);- र x>=0 को अधीनमा। यहाँ x का कम्पोनेन्टहरू निर्धारण गर्न चर हुन्, c र b लाई भेक्टरहरू दिइन्छ, र A दिइएको म्याट्रिक्स हो।
अनुप्रयोगको प्रारम्भिक गतिविधिबाट - एप रैखिक अप्टिमाइजेसन, मोडेलहरू सिर्जना गर्ने, सम्पादन गर्ने, समाधान गर्ने र मेटाउने कार्यहरू समावेश छन्। मोडेलहरू SQLite डाटा बेसमा linearProgramming.db नामको साथ भण्डारण गरिएका छन्। अनुप्रयोगसँग यन्त्रको डाउनलोड डाइरेक्टरीमा डाटाबेस भण्डारण र पुनर्स्थापना गर्ने कार्यहरू छन्।
अप्टिमाइजेसन मोडेल सिर्जना गर्दा, दुई प्यारामिटरहरू प्रविष्ट गरिन्छन् (लीनियर मोडेल गतिविधि) - भेक्टर x चरहरूको संख्या र अवरोधहरूको संख्या (यसले चरहरूको लागि अवरोधहरू समावेश गर्दैन) - अर्थात् म्याट्रिक्स A को पङ्क्तिहरू। यी डाटा प्रविष्ट गरेपछि र बटन थिचेपछि - लिनियर मोडेल, तपाइँ मोडेल डाटा प्रविष्ट गर्न अगाडि बढ्नुहुन्छ - गतिविधि लिनियर मोडेल सिर्जनाबाट।
भेक्टर x गुणांक c लाई लेबल Z= लेबलको अगाडि *Xi+ को साथमा प्रविष्ट गरिन्छ।
म्याट्रिक्स A को तत्वहरू फिल्ड लेबल *Xi+ को अगाडि Constraints नामक तालिकामा प्रविष्ट गरिएको छ। लेबल <= पछि म्याट्रिक्सको प्रत्येक पङ्क्तिको अन्तिम फिल्डमा, अवरोधहरूको सीमा b पनि प्रविष्ट गरिएको छ। यी डाटा प्रविष्ट गरेपछि र ठीक बटन थिचेपछि, यो गतिविधिमा फर्कन्छ - लिनियर मोडेल गतिविधि, जहाँ मोडेल नामको लागि अनिवार्य फिल्ड र बचतको लागि बटन देखा पर्दछ।
जब एक मोडेल बचत हुन्छ, यसको नाम अनुप्रयोगको प्रारम्भिक गतिविधिमा प्रदर्शित मोडेलहरूको सूचीमा देखा पर्दछ। सूचीबाट चयन गरिएको मोडेल सम्पादन गर्न सकिन्छ (बटन सम्पादन) वा हल (बटन गणना)। सम्पादन र बचत पछि, सम्पादित संस्करण नयाँ मोडेलको रूपमा भण्डारण गरिन्छ, र पुरानो डाटाबेसमा अपरिवर्तित रहन्छ। यो ताकि दुबै मोडेलहरू समाधान गर्न सकिन्छ र परिणामहरू तुलना गर्न सकिन्छ। यदि तिनीहरू मध्ये केही आवश्यक छैन भने, यसलाई मेटाउन सकिन्छ।
मोडेल हल गर्दा, परिणामले लक्ष्य प्रकार्य Z को अधिकतम र न्यूनीकरण देखाउँदछ र भेक्टर x को तत्वहरूको कुन मानहरूमा यो हुन्छ र अवरोधहरू पनि देखाउँदछ।
रैखिक प्रोग्रामिङ मोडेलहरू प्रयोग गर्ने उद्योगहरूले यातायात, ऊर्जा, दूरसंचार, र निर्माण समावेश गर्दछ। यो योजना, रूटिङ, समयतालिका, असाइनमेन्ट, र डिजाइनमा विभिन्न प्रकारका समस्याहरूको मोडेलिङ गर्न उपयोगी साबित भएको छ।
अनुप्रयोगले मानक पुस्तकालय org.apache.commons:commons-math:3.6.1 बाट अनुकूलन कक्षा SimplexSolver को लागि प्रयोग गर्दछ।
मा अपडेट गरिएको
२०२५ नोभेम्बर १२