ज्यामितीय प्रोग्रामिंग: Difference between revisions

From Vigyanwiki
(Created page with "एक ज्यामितीय प्रोग्राम (GP) फॉर्म की एक अनुकूलन (गणित) समस्या है :<math> \b...")
 
No edit summary
Line 1: Line 1:
एक ज्यामितीय प्रोग्राम (GP) फॉर्म की एक [[अनुकूलन (गणित)]] समस्या है
ज्यामितीय प्रोग्राम (जीपी) फॉर्म की एक [[अनुकूलन (गणित)]] समस्या है
:<math>
:<math>
\begin{array}{ll}
\begin{array}{ll}
Line 7: Line 7:
\end{array}
\end{array}
</math>
</math>
कहाँ <math>f_0,\dots,f_m</math> [[posynomials]] हैं और <math>g_1,\dots,g_p</math> मोनोमियल हैं। ज्यामितीय प्रोग्रामिंग (मानक गणित के विपरीत) के संदर्भ में, एक मोनोमियल एक फ़ंक्शन है <math>\mathbb{R}_{++}^n</math> को <math>\mathbb{R}</math> के रूप में परिभाषित
जहां <math>f_0,\dots,f_m</math> [[posynomials|पॉसिनोमियल]] हैं और <math>g_1,\dots,g_p</math> मोनोमियल हैं। ज्यामितीय प्रोग्रामिंग (मानक गणित के विपरीत) के संदर्भ में, मोनोमियल एक फ़ंक्शन है <math>\mathbb{R}_{++}^n</math> को <math>\mathbb{R}</math> के रूप में परिभाषित


:<math>x \mapsto c x_1^{a_1} x_2^{a_2} \cdots x_n^{a_n} </math>
:<math>x \mapsto c x_1^{a_1} x_2^{a_2} \cdots x_n^{a_n} </math>
कहाँ <math> c > 0 \ </math> और <math>a_i \in \mathbb{R} </math>. एक पॉसिनोमियल मोनोमियल्स का योग होता है।<ref name="duffin">{{cite book
जहां <math> c > 0 \ </math> और <math>a_i \in \mathbb{R} </math> हैं वह पॉसिनोमियल मोनोमियल्स का योग होता है।<ref name="duffin">{{cite book
  | author    = Richard J. Duffin
  | author    = Richard J. Duffin
  |author2=Elmor L. Peterson |author3=Clarence Zener
  |author2=Elmor L. Peterson |author3=Clarence Zener
Line 19: Line 19:
  | isbn      = 0-471-22370-0
  | isbn      = 0-471-22370-0
}}</ref><ref name="tutorial">S. Boyd, S. J. Kim, L. Vandenberghe, and A. Hassibi. ''[https://web.stanford.edu/~boyd/papers/gp_tutorial.html A Tutorial on Geometric Programming].'' Retrieved 20 October 2019.</ref>
}}</ref><ref name="tutorial">S. Boyd, S. J. Kim, L. Vandenberghe, and A. Hassibi. ''[https://web.stanford.edu/~boyd/papers/gp_tutorial.html A Tutorial on Geometric Programming].'' Retrieved 20 October 2019.</ref>
ज्यामितीय प्रोग्रामिंग है
 
[[उत्तल अनुकूलन]] से निकटता से संबंधित: चर के परिवर्तन के माध्यम से किसी भी जीपी को उत्तल बनाया जा सकता है।<ref name="tutorial"/>जीपी के पास कई अनुप्रयोग हैं, जिसमें एकीकृत सर्किट डिजाइन में घटक का आकार बदलना शामिल है,<ref>M. Hershenson, S. Boyd, and T. Lee. ''[https://web.stanford.edu/~boyd/papers/opamp.html Optimal Design of a CMOS Op-amp via Geometric Programming].'' Retrieved 8 January 2019.</ref><ref> S. Boyd, S. J. Kim, D. Patil, and M. Horowitz. ''[https://web.stanford.edu/~boyd/papers/gp_digital_ckt.html Digital Circuit Optimization via Geometric Programming].'' Retrieved 20 October 2019.</ref> विमान डिजाइन,<ref>W. Hoburg and P. Abbeel. ''[https://people.eecs.berkeley.edu/~pabbeel/papers/2014-AIAA-GP-aircraft-design.pdf Geometric programming for aircraft design optimization].'' AIAA Journal 52.11 (2014): 2414-2426.</ref> आंकड़ों में लॉजिस्टिक प्रतिगमन के लिए [[अधिकतम संभावना अनुमान]], और [[नियंत्रण सिद्धांत]] में सकारात्मक [[रैखिक गतिशील प्रणाली]] के पैरामीटर ट्यूनिंग।<ref>{{Cite journal|last1=Ogura|first1=Masaki|last2=Kishida|first2=Masako|last3=Lam|first3=James|date=2020|title=Geometric Programming for Optimal Positive Linear Systems|url=https://ieeexplore.ieee.org/document/8936427|journal=IEEE Transactions on Automatic Control|volume=65|issue=11|pages=4648–4663|doi=10.1109/TAC.2019.2960697|issn=0018-9286|arxiv=1904.12976|s2cid=140222942 }}</ref>
ज्यामितीय प्रोग्रामिंग [[उत्तल अनुकूलन]] से निकटता से संबंधित: चर के परिवर्तन के माध्यम से किसी भी जीपी को उत्तल बनाया जा सकता है।<ref name="tutorial" />जीपी के पास कई अनुप्रयोग हैं, जिसमें एकीकृत सर्किट डिजाइन में घटक का आकार बदलना सम्मलित है,<ref>M. Hershenson, S. Boyd, and T. Lee. ''[https://web.stanford.edu/~boyd/papers/opamp.html Optimal Design of a CMOS Op-amp via Geometric Programming].'' Retrieved 8 January 2019.</ref><ref> S. Boyd, S. J. Kim, D. Patil, and M. Horowitz. ''[https://web.stanford.edu/~boyd/papers/gp_digital_ckt.html Digital Circuit Optimization via Geometric Programming].'' Retrieved 20 October 2019.</ref> विमान डिजाइन,<ref>W. Hoburg and P. Abbeel. ''[https://people.eecs.berkeley.edu/~pabbeel/papers/2014-AIAA-GP-aircraft-design.pdf Geometric programming for aircraft design optimization].'' AIAA Journal 52.11 (2014): 2414-2426.</ref> आंकड़ों में लॉजिस्टिक प्रतिगमन के लिए [[अधिकतम संभावना अनुमान]], और [[नियंत्रण सिद्धांत]] में सकारात्मक [[रैखिक गतिशील प्रणाली]] के पैरामीटर ट्यूनिंग।<ref>{{Cite journal|last1=Ogura|first1=Masaki|last2=Kishida|first2=Masako|last3=Lam|first3=James|date=2020|title=Geometric Programming for Optimal Positive Linear Systems|url=https://ieeexplore.ieee.org/document/8936427|journal=IEEE Transactions on Automatic Control|volume=65|issue=11|pages=4648–4663|doi=10.1109/TAC.2019.2960697|issn=0018-9286|arxiv=1904.12976|s2cid=140222942 }}</ref>
 




== उत्तल रूप ==
== उत्तल रूप ==
ज्यामितीय कार्यक्रम सामान्य उत्तल अनुकूलन समस्याओं में नहीं हैं, लेकिन वे चर के परिवर्तन और उद्देश्य और बाधा कार्यों के परिवर्तन से उत्तल समस्याओं में परिवर्तित हो सकते हैं। विशेष रूप से, चर के परिवर्तन को करने के बाद <math>y_i = \log(x_i)</math> और उद्देश्य और बाधा कार्यों, कार्यों का लॉग लेना <math>f_i</math>, यानी, पॉसिनोमियल्स, LogSumExp | में रूपांतरित हो जाते हैं लॉग-सम-एक्सप फ़ंक्शंस, जो उत्तल हैं, और फ़ंक्शंस <math>g_i</math>, यानी, मोनोमियल, एफ़िन ट्रांसफ़ॉर्मेशन बन जाते हैं। इसलिए, यह परिवर्तन प्रत्येक जीपी को समतुल्य उत्तल कार्यक्रम में बदल देता है।<ref name="tutorial"/>वास्तव में, इस लॉग-लॉग परिवर्तन का उपयोग समस्याओं के एक बड़े वर्ग को परिवर्तित करने के लिए किया जा सकता है, जिसे [[लॉग-लॉग उत्तल प्रोग्रामिंग]] (एलएलसीपी) के रूप में जाना जाता है, एक समतुल्य उत्तल रूप में।<ref name="dgp">A. Agrawal, S. Diamond, and S. Boyd. ''[https://arxiv.org/abs/1812.04074 Disciplined Geometric Programming.]'' Retrieved 8 January 2019.</ref>
ज्यामितीय कार्यक्रम सामान्य उत्तल अनुकूलन समस्याओं में नहीं हैं, किन्तु वे चर, उद्देश्य और बाधा कार्यों के परिवर्तन से उत्तल समस्याओं में परिवर्तित हो सकते हैं। विशेष रूप से, चर के परिवर्तन को करने के बाद <math>y_i = \log(x_i)</math> और उद्देश्य और बाधा कार्यों, कार्यों का लॉग लेना <math>f_i</math>, अर्थात, पॉसिनोमियल्स, लॉग-सम-एक्सप फ़ंक्शंस में रूपांतरित हो जाते हैं , जो उत्तल हैं, और फ़ंक्शंस <math>g_i</math>, अर्थात, मोनोमियल, एफ़िन ट्रांसफ़ॉर्मेशन बन जाते हैं। इसलिए, यह परिवर्तन प्रत्येक जीपी को समतुल्य उत्तल कार्यक्रम में बदल देता है।<ref name="tutorial"/>वास्तव में, इस लॉग-लॉग परिवर्तन का उपयोग समस्याओं के एक बड़े वर्ग को परिवर्तित करने के लिए किया जा सकता है, जिसे [[लॉग-लॉग उत्तल प्रोग्रामिंग]] (एलएलसीपी) के रूप में जाना जाता है, एक समतुल्य उत्तल रूप में।<ref name="dgp">A. Agrawal, S. Diamond, and S. Boyd. ''[https://arxiv.org/abs/1812.04074 Disciplined Geometric Programming.]'' Retrieved 8 January 2019.</ref>




== सॉफ्टवेयर ==
== सॉफ्टवेयर ==
ज्यामितीय प्रोग्राम बनाने और हल करने में सहायता के लिए कई सॉफ्टवेयर पैकेज मौजूद हैं।
ज्यामितीय प्रोग्राम बनाने और हल करने में सहायता के लिए कई सॉफ्टवेयर पैकेज सम्मलित हैं।
* [https://www.mosek.com/ MOSEK] एक व्यावसायिक सॉल्वर है जो ज्यामितीय कार्यक्रमों के साथ-साथ अन्य गैर-रैखिक अनुकूलन समस्याओं को हल करने में सक्षम है।
* [https://www.mosek.com/ मोसेक] एक व्यावसायिक सॉल्वर है जो ज्यामितीय कार्यक्रमों के साथ-साथ अन्य गैर-रैखिक अनुकूलन समस्याओं को हल करने में सक्षम है।
* [http://cvxopt.org/ CVXOPT] उत्तल अनुकूलन समस्याओं के लिए एक ओपन-सोर्स सॉल्वर है।
* [http://cvxopt.org/ सीवीएक्सओपीटी] उत्तल अनुकूलन समस्याओं के लिए एक ओपन-सोर्स सॉल्वर है।
* [https://github.com/convexengineering/gpkit GPkit] ज्यामितीय प्रोग्रामिंग मॉडल को स्पष्ट रूप से परिभाषित करने और हेरफेर करने के लिए एक पायथन पैकेज है। इस पैकेज के साथ कई उदाहरण जीपी मॉडल लिखे गए हैं [https://github.com/convexengineering/gplibrary यहां]।
* [https://github.com/convexengineering/gpkit जीपीकिट] ज्यामितीय प्रोग्रामिंग मॉडल को स्पष्ट रूप से परिभाषित करने और हेरफेर करने के लिए एक पायथन पैकेज है। इस पैकेज के साथ कई उदाहरण जीपी मॉडल लिखे गए हैं [https://github.com/convexengineering/gplibrary यहां]।
*[https://web.stanford.edu/~boyd/ggplab/ GGPLAB] ज्यामितीय प्रोग्राम (GPs) और सामान्यीकृत ज्यामितीय प्रोग्राम (GGPs) को निर्दिष्ट करने और हल करने के लिए एक MATLAB टूलबॉक्स है।
*[https://web.stanford.edu/~boyd/ggplab/ जीजीपीलैब] ज्यामितीय प्रोग्राम (जीपी) और सामान्यीकृत ज्यामितीय प्रोग्राम (जीएसपी) को निर्दिष्ट करने और हल करने के लिए एक मैटलैब टूलबॉक्स है।
* [https://www.cvxpy.org/tutorial/dgp/index.html CVXPY] जीपी, जीजीपी और एलएलसीपी सहित उत्तल अनुकूलन समस्याओं को निर्दिष्ट करने और हल करने के लिए एक पायथन-एम्बेडेड मॉडलिंग भाषा है। <ref name="dgp"/>
* [https://www.cvxpy.org/tutorial/dgp/index.html सीवीएक्सपीवाई] जीपी, जीजीपी और एलएलसीपी सहित उत्तल अनुकूलन समस्याओं को निर्दिष्ट करने और हल करने के लिए एक पायथन-एम्बेडेड मॉडलिंग भाषा है। <ref name="dgp"/>





Revision as of 19:58, 14 February 2023

ज्यामितीय प्रोग्राम (जीपी) फॉर्म की एक अनुकूलन (गणित) समस्या है

जहां पॉसिनोमियल हैं और मोनोमियल हैं। ज्यामितीय प्रोग्रामिंग (मानक गणित के विपरीत) के संदर्भ में, मोनोमियल एक फ़ंक्शन है को के रूप में परिभाषित

जहां और हैं वह पॉसिनोमियल मोनोमियल्स का योग होता है।[1][2]

ज्यामितीय प्रोग्रामिंग उत्तल अनुकूलन से निकटता से संबंधित: चर के परिवर्तन के माध्यम से किसी भी जीपी को उत्तल बनाया जा सकता है।[2]जीपी के पास कई अनुप्रयोग हैं, जिसमें एकीकृत सर्किट डिजाइन में घटक का आकार बदलना सम्मलित है,[3][4] विमान डिजाइन,[5] आंकड़ों में लॉजिस्टिक प्रतिगमन के लिए अधिकतम संभावना अनुमान, और नियंत्रण सिद्धांत में सकारात्मक रैखिक गतिशील प्रणाली के पैरामीटर ट्यूनिंग।[6]


उत्तल रूप

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


सॉफ्टवेयर

ज्यामितीय प्रोग्राम बनाने और हल करने में सहायता के लिए कई सॉफ्टवेयर पैकेज सम्मलित हैं।

  • मोसेक एक व्यावसायिक सॉल्वर है जो ज्यामितीय कार्यक्रमों के साथ-साथ अन्य गैर-रैखिक अनुकूलन समस्याओं को हल करने में सक्षम है।
  • सीवीएक्सओपीटी उत्तल अनुकूलन समस्याओं के लिए एक ओपन-सोर्स सॉल्वर है।
  • जीपीकिट ज्यामितीय प्रोग्रामिंग मॉडल को स्पष्ट रूप से परिभाषित करने और हेरफेर करने के लिए एक पायथन पैकेज है। इस पैकेज के साथ कई उदाहरण जीपी मॉडल लिखे गए हैं यहां
  • जीजीपीलैब ज्यामितीय प्रोग्राम (जीपी) और सामान्यीकृत ज्यामितीय प्रोग्राम (जीएसपी) को निर्दिष्ट करने और हल करने के लिए एक मैटलैब टूलबॉक्स है।
  • सीवीएक्सपीवाई जीपी, जीजीपी और एलएलसीपी सहित उत्तल अनुकूलन समस्याओं को निर्दिष्ट करने और हल करने के लिए एक पायथन-एम्बेडेड मॉडलिंग भाषा है। [7]


यह भी देखें

संदर्भ

  1. Richard J. Duffin; Elmor L. Peterson; Clarence Zener (1967). Geometric Programming. John Wiley and Sons. p. 278. ISBN 0-471-22370-0.
  2. 2.0 2.1 2.2 S. Boyd, S. J. Kim, L. Vandenberghe, and A. Hassibi. A Tutorial on Geometric Programming. Retrieved 20 October 2019.
  3. M. Hershenson, S. Boyd, and T. Lee. Optimal Design of a CMOS Op-amp via Geometric Programming. Retrieved 8 January 2019.
  4. S. Boyd, S. J. Kim, D. Patil, and M. Horowitz. Digital Circuit Optimization via Geometric Programming. Retrieved 20 October 2019.
  5. W. Hoburg and P. Abbeel. Geometric programming for aircraft design optimization. AIAA Journal 52.11 (2014): 2414-2426.
  6. Ogura, Masaki; Kishida, Masako; Lam, James (2020). "Geometric Programming for Optimal Positive Linear Systems". IEEE Transactions on Automatic Control. 65 (11): 4648–4663. arXiv:1904.12976. doi:10.1109/TAC.2019.2960697. ISSN 0018-9286. S2CID 140222942.
  7. 7.0 7.1 A. Agrawal, S. Diamond, and S. Boyd. Disciplined Geometric Programming. Retrieved 8 January 2019.