यदि आप एक वापसी मूल्य के लिए समस्या का समाधान करते हैं, तो आप दो कार्यों f_1(x,y)
और f_2(x,y)
इंटरपोलेशन द्वारा पा सकते हैं, और अपने कार्य को f(x, y) = [f_1(x,y), f_2(x,y)]
के रूप में लिख सकते हैं। अपनी समस्या के लिए उपयुक्त इंटरपोलेशन फ़ंक्शन को हल करने के लिए बस कोई विधि चुनें।
दो आयामों में वास्तविक इंटरपोलेशन समस्या के लिए, आप इसे संभालने के कई तरीके हैं। यदि आपको सरल आवश्यकता है, तो आप रैखिक इंटरपोलेशन के साथ जा सकते हैं। यदि आप टुकड़े टुकड़े के कार्यों के साथ ठीक हैं, तो आप बेजियर वक्र, या स्प्लिंस के लिए जा सकते हैं। या, यदि डेटा एक समान है, तो आप एक साधारण बहुपद इंटरपोलेशन से दूर हो सकते हैं (अच्छी तरह से, 2 डी में काफी छोटा नहीं है, लेकिन पर्याप्त आसान है)।
संपादित करें: अधिक जानकारी और कुछ लिंक।
Bilinear interpolation (wikipedia) का उपयोग कर एक टुकड़ा हल संभव है।
बहुपद इंटरपोलेशन के लिए, यदि आपका डेटा ग्रिड पर है, तो आप निम्न एल्गोरिदम का उपयोग कर सकते हैं (मुझे इसके लिए संदर्भ नहीं मिल रहा है, यह स्मृति से है)।
डेटा बिंदुओं एक k
l
द्वारा ग्रिड पर हैं, तो अपने बहुपद इस प्रकार पुनर्लेखन:
f(x,y) = cx_1(x)*y^(k-1) + cx_2(x)*y^(k-2) + ... + cx_k(x)
यहाँ, प्रत्येक गुणांक cx_i(x)
भी डिग्री l
की एक बहुपद है। पहला चरण ग्रिड की प्रत्येक पंक्ति या कॉलम को इंटरपोल करके k
डिग्री l
के बहुपदों को ढूंढना है। जब ऐसा होता है, तो आप cx_i(x0)
, cx_i(x1)
के रूप में प्रत्येक cx_i(x)
बहुआयामी पद के लिए प्रक्षेप अंक के रूप में l
गुणांक सेट (या दूसरे शब्दों में, l
बहुआयामी पद) है, ..., cx_i(xl)
(आप एल * कश्मीर अंक की कुल संख्या)। अब, आप इन बहुपदों को इंटरपोलेशन पॉइंट्स के रूप में उपरोक्त स्थिरांक का उपयोग करके निर्धारित कर सकते हैं, जो आपको परिणामस्वरूप f(x,y)
देता है।
समान विधि का उपयोग बेजियर वक्र या स्प्लिंस के लिए किया जाता है। केवल अंतर यह है कि आप बहुपद गुणांक के बजाय नियंत्रण बिंदुओं का उपयोग करते हैं। आपको सबसे पहले स्प्लिंस का एक सेट मिलता है जो आपके डेटा पॉइंट उत्पन्न करेगा, और फिर आप सतह के वक्र के नियंत्रण बिंदु प्राप्त करने के लिए इन मध्यवर्ती घटता के नियंत्रण बिंदुओं को विभाजित करेंगे।
मुझे उपरोक्त एल्गोरिदम को स्पष्ट करने के लिए एक उदाहरण जोड़ने दें।
0,0 => 1
0,1 => 2
1,0 => 3
1,1 => 4
हम फिटिंग दो बहुआयामी पद से शुरू: के लिए (1, 0) और (1, 1 डेटा बिंदुओं के लिए एक (0,0) और (0,1), और एक अन्य के निम्न डेटा बिंदु होते हैं चलो):
f_0(x) = x + 1
f_1(x) = x + 3
अब, हम दूसरी दिशा coefficients.When हम इन बहुपद गुणांक खड़ी पढ़ निर्धारित करने के लिए अंतर्वेशन, हम दो बहुआयामी पद की जरूरत है। एक 0 और 1 दोनों पर 1 का मूल्यांकन करता है; और दूसरा वह जिसमें 0 से 1 के लिए मूल्यांकन करता है, और 3 1 पर:
cy_1(y) = 1
cy_2(y) = 2*y + 1
अगर हम f(x,y)
में इन गठबंधन, हम पाते हैं:
f(x,y) = cy_1(y)*x + cy_2(y)
= 1*x + (2*y + 1)*1
= x + 2*y + 1
आप के साथ एक समारोह के लिए एक बहुपद प्रक्षेप की तरह कुछ के लिए देख रहे हैं 2 चर? – amit
हां। लेकिन उस समारोह को 2 चर वापस करना होगा ... – Rella
आप जटिल संख्याओं के साथ ऐसा करने का प्रयास कर सकते हैं। – starblue