Ανάλυση πολλών μεταβλητών


Θα γίνει σύντομη παρουσιάση της ανάλυσης συναρτήσεων με και θα δοθούν εφαρμογές με τη χρήση του συστήματος Sagemath. Για να δοκιμάσετε τον κώδικα μπορείτε να χρησιμοποιείσετε το sage cell. Ειδικότερα θα δοθεί έμφαση στις συναρτήσεις δύο και τριών μεταβλητων [1] [2]

Συναρτήσεις δύο μεταβλητών

επεξεργασία

f (x)+5=

Γραφηματα

επεξεργασία

Όρια συναρτήσεων δύο μεταβλητών

επεξεργασία

Συνέχεια και παράγωγος συναρτήσεων δύο μεταβλητών

επεξεργασία

Σειρές Taylor

επεξεργασία

Ακρότατα συναρτήσεων πολλών μεταβλητών

επεξεργασία

Τοπικά ακρότατα συναρτήσεων δύο μεταβλητών

επεξεργασία

Ακρότατα είναι οι μέγιστες και οι ελάχιστες τιμές μιας συναρτήσεως πολλών μεταβλητών, τόσο σε τοπική όσο και σε συνολική κλίμακα. Για την εύρεση ακρότατων συναρτήσεων πολλών μεταβλητών, καθώς και των σημείων όπου αυτά προκύπτουν, γίνεται εφαρμογή του διαφορικού λογισμού και συγκεκριμένα των μερικών παραγώγων των συναρτήσεων πολλών μεταβλητών. Αν η συνάρτηση μας   έχει δύο μεταβλητές, ερευνούμε για σημεία όπου η επιφάνεια   έχει οριζόντιο εφαπτόμενο επίπεδο. Κατόπιν εξετάζουμε αν στα σημεία αυτά η συνάρτηση παρουσιάζει τοπικό μέγιστο, τοπικό ελάχιστο, ή σαγματική συμπεριφορά. [2]

Ορισμός (Τοπικά ακρότατα)
Έστω   ορισμένη σε περιοχή   που περιέχει το σημείο  . Στην περίπτωση αυτή:
1. Η   είναι τοπική μέγιστη τιμή της   αν   για όλα τα σημεία   του πεδίου ορισμού που ανήκουν σε έναν ανοιχτό δίσκο με κέντρο το  .
2. Η   είναι τοπική ελάχιστη τιμή της   αν   για όλα τα σημεία   του πεδίου ορισμού που ανήκουν σε έναν ανοιχτό δίσκο με κέντρο το  . [2]


Για τον εντοπισμό τοπικών ακροτάτων γίνεται χρήση του θεωρήματος 1.

Θεώρημα 1 (Κριτήριο πρώτης παραγώγου για τοπικά ακρότατα)
Αν η   εμφανίζει τοπικό μέγιστο ή ελάχιστο σε κάποιο εσωτερικό σημείο   του πεδίου ορισμού της όπου υπάρχουν οι πρώτες μερικές της παράγωγοι, τότε   και  . [2]

Μια συνάρτηση   δύο μεταβλητών μπορεί να εμφανίζει (τα ολικά) ακρότατα σε κρίσιμα σημεία και συνοριακά (ακραία) σημεία.

Ορισμός (Κρίσιμο σημείο - Θεώρημα του Φερμά)
Ένα εσωτερικό σημείο του πεδίου ορισμού της συνάρτησης   όπου τόσο η   όσο και η   μηδενίζεται, ή όπου τουλάχιστον μία εκ των   και   δεν υπάρχει, καλείται κρίσιμο σημείο της  . [2]


Ορισμός (Σαγματικό σημείο)
Μια διαφορίσιμη συνάρτηση   έχει σαγματικό σημείο σε ένα κρίσιμο σημείο   αν σε κάθε ανοιχτό κυκλικό δίσκο με κέντρο το   υπάρχουν σημεία   του πεδίου ορισμού όπου   και σημεία   του πεδίου ορισμού όπου  . Το σημείο   πάνω στην επιφάνεια   καλείται σαγματικό σημείο. [2]


Το γεγονός ότι   σε ένα εσωτερικό σημείο   του   δεν εγγυάται ότι η   θα έχει τοπικό ακρότατο εκεί. Αν ωστόσο η   και οι μερικές της παράγωγοι πρώτης και δεύτερης τάξης είναι συνεχείς στο  , τότε βάση του θεωρήματος 2 μπορούμε να αποφανθούμε για το αν είναι τοπικό ακρότατο.

Θεώρημα 2 (Κριτήριο δεύτερης παραγώγου για τοπικά ακρότατα)
Έστω ότι η   και οι μερικές της παράγωγοι πρώτης και δεύτερης τάξης είναι παντού συνεχείς σε έναν κυκλικό δίσκο με κέντρο το   και ότι  . Τότε:
i. Η   έχει τοπικό μέγιστο στο   αν   και   στο  .
ii. Η   έχει τοπικό ελάχιστο στο   αν   και   στο  .
iii. Η   έχει σαγματικό σημείο στο   αν   στο  .
iv. Δεν μπορούμε να αποφανθούμε για τη φύση του σημείου   αν   στο  . Στην περίπτωση αυτή, θα πρέπει να βρούμε άλλον τρόπο μελέτης της συμπεριφοράς της   στο  . [2]


Η έκφραση   καλείται διακρίνουσα ή Εσσιανή της  .

Εντοπισμός τοπικών ακρότατων με χρήση του Sagemath

επεξεργασία

Αρχικά σε ένα φύλλο εργασίας ορίζουμε την συνάρτηση.

"""
Find local maxima and minima of functions with two valiables
This code tested for sagemath prior to version 9.
It won't work after version 9.0 because of the transition from python 2 to python version 3.
So you will need some changes to make the code executable to sage ver. 9.xx

 AUTHORS:

 Argyris Kalampakas, argiriskala@yahoo.com : initial version 25/5/2015
 
    Copyright (C) 2015  Argyris Kalampakas

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>

"""

#############
# We work at R^2 so we don't have boundary points.
# f : symbolic expression with two valiables <<x,y>>
# flag : default=true, enables plotting 
# future: fmin : default=0, for growing the plain of the function, accepts only positive   
# future: symbolic expression become variable independent
#############

def local_maxmin(f, flag = true):
    
    print "f function is: "
    print f
    
    # Algorithm for Fermat's theorem

    ### Algorithm for keeping only the real critical points
    type(f)
    fx = diff(f,x)
    fy = diff(f,y)
    criticalpoint_ = solve([fx, fy], x, y)

    def are_real_roots(s):
        criticalpoint=[]
        for i in range(0,len(s)):
             if s[i][0].rhs() in RR and s[i][1].rhs() in RR:
                criticalpoint.append(criticalpoint_[i])
        return criticalpoint
    criticalpoint=are_real_roots(criticalpoint_)
    ### 

    if criticalpoint:

        print "--------------------"
        print "The critical points are:"
        print [[cr[0], cr[1]] for cr in criticalpoint]


        Min = [[cr[0].rhs()] for cr in criticalpoint] + [[cr[1].rhs()] for cr in criticalpoint] + [[f(cr[0].rhs(),cr[1].rhs())] for cr in criticalpoint]
        Min = min(Min) + max(Min)
        Min = abs(Min[0]),abs(Min[1])
        Min = min(Min)

        # Change the range of the plain
        F = plot3d(f,(x,-Min-2,Min+2),(y,-Min-2,Min+2))

        # Algorithm for second derivative test

        fxx = diff(fx,x)
        fyy = diff(fy,y)
        fxy = diff(fx,y)
        h = fxx*fyy - fxy**2
        if h.has(x) & h.has(y):
            H = [[h(cr[0].rhs(), cr[1].rhs())] for cr in criticalpoint]
        elif h.has(x):
            H = [[h(cr[0].rhs())] for cr in criticalpoint]
        elif h.has(y):
            H = [[h(cr[1].rhs())] for cr in criticalpoint]
        else:
            H = h

        LM=[]
        if type(H) is list:
    
            for i in range(0,len(H)):
               i = 0
         
               if H[i][0] > 0:
           
                    if fxx.has(x):
                
                        if fxx(criticalpoint[i][0].rhs()) > 0:
                            LM.append(point3d((criticalpoint[i][0].rhs(), criticalpoint[i][1].rhs(),
 f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())),color='black', size=15))
                            print "--------------------" 
                            print criticalpoint[i]
                            print "It is local minimum, the value of the function at this point is:"
                            print f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())
                        elif fxx(criticalpoint[i][0].rhs()) < 0:
                            LM.append(point3d((criticalpoint[i][0].rhs(), criticalpoint[i][1].rhs(),
 f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())),color='red', size=15))
                            print "--------------------" 
                            print criticalpoint[i]
                            print "It is local maximum, the value of the function at this point is:"
                            print f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())
                        else:
                            LM.append(point3d((criticalpoint[i][0].rhs(), criticalpoint[i][1].rhs(),
 f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())),color='yellow', size=15))
                            print "--------------------"
                            print criticalpoint[i]
                            print "Hessian is zero. We do not have a method for this point, to examine what it is."
                            ## We have to create higher-order derivative test
                
                        criticalpoint.pop(H.index(H[i]))
                        H.pop(H.index(H[i]))
                
                    else:
                
                        if fxx > 0:
                            LM.append(point3d((criticalpoint[i][0].rhs(), criticalpoint[i][1].rhs(),
 f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())),color='black', size=15))
                            print "--------------------" 
                            print criticalpoint[i]
                            print "It is local minimum, the value of the function at this point is:"
                            print f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())
                        elif fxx < 0:
                            LM.append(point3d((criticalpoint[i][0].rhs(), criticalpoint[i][1].rhs(),
 f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())),color='red', size=15))
                            print "--------------------" 
                            print criticalpoint[i]
                            print "It is local maximum, the value of the function at this point is:"
                            print f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())
                        else:
                            LM.append(point3d((criticalpoint[i][0].rhs(), criticalpoint[i][1].rhs(),
 f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())),color='yellow', size=15))
                            print "--------------------"
                            print criticalpoint[i]
                            print "Hessian is zero. We do not have a method for this point, to examine what it is."
                            ## We have to create higher-order derivative test 
                    
                        criticalpoint.pop(H.index(H[i]))
                        H.pop(H.index(H[i]))
                
               elif H[i][0] < 0:
                   LM.append(point3d((criticalpoint[i][0].rhs(), criticalpoint[i][1].rhs(),
 f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())),color='green', size=15))
                   print "--------------------"   
                   print criticalpoint.pop(H.index(H[i]))
                   print "It is saddle point."
                   H.pop(H.index(H[i]))   
               else:
                   LM.append(point3d((criticalpoint[i][0].rhs(), criticalpoint[i][1].rhs(),
 f(criticalpoint[i][0].rhs(),criticalpoint[i][1].rhs())),color='yellow', size=15))
                   print "--------------------"   
                   print criticalpoint.pop(H.index(H[i]))
                   print "Hessian is zero. We do not have a method for this point, to examine what it is."
                   H.pop(H.index(H[i]))
                  
        else:
            if H > 0:
        
                    if fxx.has(x):
                
                        if fxx(criticalpoint[0][0].rhs()) > 0:
                            LM.append(point3d((criticalpoint[0][0].rhs(), criticalpoint[0][1].rhs(),
 f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())),color='black', size=15))
                            print "--------------------" 
                            print criticalpoint[0]
                            print "It is local minimum, the value of the function at this point is:"
                            print f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())
                        elif fxx(criticalpoint[0][0].rhs()) < 0:
                            LM.append(point3d((criticalpoint[0][0].rhs(), criticalpoint[0][1].rhs(),
 f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())),color='red', size=15))
                            print "--------------------" 
                            print criticalpoint[0]
                            print "It is local maximum, the value of the function at this point is:"
                            print f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())
                        else:
                            LM.append(point3d((criticalpoint[0][0].rhs(), criticalpoint[0][1].rhs(),
 f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())),color='yellow', size=15))
                            print "--------------------"
                            print criticalpoint[0]
                            print "Hessian is zero. We do not have a method for this point, to examine what it is."
                            ## We have to create higher-order derivative test 
                    
                    else:
                
                        if fxx > 0:
                            LM.append(point3d((criticalpoint[0][0].rhs(), criticalpoint[0][1].rhs(),
 f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())),color='black', size=15))
                            print "--------------------" 
                            print criticalpoint[0]
                            print "It is local minimum, the value of the function at this point is:"
                            print f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())
                        elif fxx < 0:
                            LM.append(point3d((criticalpoint[0][0].rhs(), criticalpoint[0][1].rhs(),
 f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())),color='red', size=15))
                            print "--------------------" 
                            print criticalpoint[0]
                            print "It is local maximum, the value of the function at this point is:"
                            print f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())
                        else:
                            LM.append(point3d((criticalpoint[0][0].rhs(), criticalpoint[0][1].rhs(),
 f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())),color='yellow', size=15))
                            print "--------------------"
                            print criticalpoint[0]
                            print "Hessian is zero. We do not have a method for this point, to examine what it is."
                            ## We have to create higher-order derivative test 
                       
            elif H < 0:
                   LM.append(point3d((criticalpoint[0][0].rhs(), criticalpoint[0][1].rhs(),
 f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())),color='green', size=15))
                   print "--------------------"   
                   print criticalpoint.pop()
                   print "It is saddle point."
            else:
                   LM.append(point3d((criticalpoint[0][0].rhs(), criticalpoint[0][1].rhs(),
 f(criticalpoint[0][0].rhs(),criticalpoint[0][1].rhs())),color='yellow', size=15))
                   print "--------------------"   
                   print criticalpoint.pop()
                   print "Hessian is zero. We do not have a method for this point, to examine what it is."     

        if flag:
            print "--------------------"
            print "Green points are saddle points."
            print "Red points are local maximum."
            print "Black points are local minimum."
            print "Yellow points are for those that we do not have a method to examine what it is."
            PLOT = F
            while LM:
                PLOT = PLOT + LM.pop(0)
   
            show(PLOT)

    else:
        print "--------------------"
        print "This function either has infinite many critical points or does not have any. In the first case we can not compute them with our code."
        
    return None

Στην συνάρτηση local_maxmin(f,false) αν δεν βάλουμε δεύτερο όρισμα ή βάλουμε true θα εμφανίσει σχεδιάγραμμα με τα κρίσιμα σημεία.

# Set the function
sage:var('x,y')
sage:f = x**3 + y**3 - x
#f = x*y - x**2 - y**2 - 2*x - 2*y + 4
#f = x**3 + y**3 +3*x**2 - 3*y**2 - 8
#f = x**3 - y**3 - 2*x*y + 6 
#f = x**3 + 3*x*y + y**3 
#f = 6*x**2 - 2*x**3 +3*y*2 + 6*x*y
#f = 9*x**3 + y**3 / 3 - 4*x*y 
#f = 4*x*y - x**4 - y**4 
#f = x**4 + y**4 +4*x*y 
#f = 1 / (x**2 + y**2 -1) 
#f = (1/x) + (x*y) + (1/y) 
#f = y*(sin(x))
#f = e**(2*x) * cos(y)

sage:local_maxmin(f,false)

f function is: 
x^3 + y^3 - x
--------------------
The critical points are:
[[x == -1/3*sqrt(3), y == 0], [x == 1/3*sqrt(3), y == 0]]
--------------------
[x == -1/3*sqrt(3), y == 0]
Hessian is zero. We do not have a method for this point, to examine what it is.
--------------------
[x == 1/3*sqrt(3), y == 0]
Hessian is zero. We do not have a method for this point, to examine what it is.

Τοπικά ακρότατα υπό συνθήκη συναρτήσεων δύο μεταβλητών

επεξεργασία

Μέθοδος ελαχίστων τετραγώνων

επεξεργασία

Η μέθοδος των ελαχίστων τετραγώνων είναι μια τυποποιημένη μέθοδος για την προσεγγιστική λύση των υπερορισμένων συστημάτων, δηλαδή συνόλων εξισώσεων στις οποίες υπάρχουν περισσότερες εξισώσεις από αγνώστους.

Γραμμική μέθοδος ελαχίστων τετραγώνων

επεξεργασία

Στη γραμμική μέθοδο αναζητούμε την ευθεία   που ταιριάζει καλύτερα σε ένα σύνολο από σημεία  , βρίσκοντας τις τιμές των   και   για τα οποία

  όπου  

Δηλαδή   είναι η κάθετη απόσταση του σημείου από την ευθεία.

Παράδειγμα
επεξεργασία
 
Η γραφική παράσταση του παραδείγματος

Δοσμένα σημεία:  

Ζητούμενη ευθεία:  

Υπολογίζουμε το άθροισμα των τετραγώνων των αποστάσεων των σημείων από την ευθεία.

 

Αναζητάμε τα ακρότατα της  . H αναζήτηση των ακροτάτων θα γίνει στις λύσεις της διανυσματικής εξίσωσης  

 
 

Από το σύστημα έχουμε

 

Επομένως η ευθεία είναι η  

Κώδικας σε Sage:

# points - all the given points
def least_squares(points):
    ## Calculation
    a, b, x = var('a, b, x')
    # create the sum
    fsum = 0*a
    for i in points:
        fsum += (a*i[0] + b - i[1])**2
    # solve the two diff system
    values = solve([diff(fsum, a), diff(fsum, b)], a, b)
    # create the line
    line = values[0][0].rhs()*x + values[0][1].rhs()
    ## Output
    return line # or show(line)
sage: least_squares([[1,6], [2,5], [3,7], [4,10], [6,22], [7,15] ])
| 389/161*x + 11/7
Υπολογιστική μέθοδος
επεξεργασία

Η ευθεία   μπορεί να βρεθεί και με τις παρακάτω εξισώσεις (με την προυπόθεση τα σημεία να μην είναι συνευθειακά):

 

όπου

 

Κώδικας σε Sage:

# points - all the given points
def least_squares_fast(points):
    # calculate the sums
    n = 0;
    A = B = C = D = 0;
    for i in points:
        A += i[0]**2
        B += i[0]
        C += i[0]*i[1]
        D += i[1]
        n += 1
    # calculate a and b
    a = (C*n-B*D)/(A*n-B*B)
    b = (A*D-C*B)/(A*n-B*B)
    # create line
    line = a*x + b
    ## Output
    return line # or show(line)
sage: least_squares_fast([[1,6], [2,5], [3,7], [4,10], [6,22], [7,15] ])
| 389/161*x + 11/7

Μη-γραμμική μέθοδος ελαχίστων τετραγώνων

επεξεργασία

Μέθοδος πολλαπλασιαστών Lagrange

επεξεργασία

Τα κρίσιμα σημεία της   υπό συνθήκες βρίσκονται στις λύσεις των παρακάτω συστημάτων

Υπό μία συνθήκη  

 

όπου  

Υπό πολλαπλές ( ) συνθήκες  

 

όπου  


Θεώρημα: Αν   για κάθε σημείο της επιφάνειας   τότε μέσα στα κρίσιμα σημεία υπάρχουν και τα σημεία min και max της   υπό συνθήκη  .


Παράδειγμα

επεξεργασία
 
Η γραφική παράσταση του παραδείγματος

Δοσμένη συνάρτηση   υπό συνθήκη   όπου  .

Από   έχουμε:

 
 
 

Από το σύστημα οδηγούμαστε σε δύο λύσεις   με  .

Επομένως

 
 

Κώδικας σε Sage

# f - main function
# g - subject function
def lagrange(f, g):
    x, y, l = var('x, y, l')
    ## Calculation
    values = solve([diff(f,x)==l*diff(g,x), diff(f,y)==l*diff(g,y) ,g==0], x, y, l)
    possibles = [[i[0].rhs(), i[1].rhs(), f(i[0].rhs(),i[1].rhs())] for i in values]
    # find max and min in possibles
    index_max = 0
    index_min = 0
    for i in range(len(possibles)):
        if(possibles[i][2]<possibles[index_min][2]):
            index_min = i
        if(possibles[i][2]>possibles[index_max][2]):
            index_max = i
    print('minf = f(' + str(possibles[index_min][0]) + ', ' + str(possibles[index_min][1]) + ') = ' + str(possibles[index_min][2]))
    print('maxf = f(' + str(possibles[index_max][0]) + ', ' + str(possibles[index_max][1]) + ') = ' + str(possibles[index_max][2]))
sage: var('y')
sage: lagrange(x**2 + y**2, x**2 - 2*x + y**2 - 4*y)
| minf = f(0, 0) = 0
| maxf = f(2, 4) = 20

Ολικά ακρότατα συναρτήσεων δύο μεταβλητών

επεξεργασία

Ορισμός ολικών ακροτάτων

επεξεργασία

Έστω   ορισμένη σε περιοχή του   που περιέχει το σημείο  . Στην περίπτωση αυτή:

  1. Η   είναι (ολική) μέγιστη τιμή της   αν   για κάθε σημείο   του πεδίου ορισμού της  .
  2. Η   είναι (ολική) ελάχιστη τιμή της   αν   για όλα τα σημεία   του πεδίου ορισμού της  .

Η ύπαρξη ολικών ακροτάτων εξασφαλίζεται από το ακόλουθο θεώρημα:

Βασικό Θεώρημα για ολικά ακρότατα

επεξεργασία

Αν η   είναι συνάρτηση συνεχής και ορισμένη σε συμπαγές διάστημα, τότε παρουσιάζει ολικό μέγιστο και ολικό ελάχιστο.

Εντοπισμός ολικών ακροτάτων

επεξεργασία

Έστω συνάρτηση   συνεχής και ορισμένη σε συμπαγές διάστημα  .
Για την εύρεση των ολικών ακροτάτων της συνάρτησης ακολουθούμε τα εξής βήματα:

  1. Εντοπίζουμε τα κρίσιμα σημεία της   στο εσωτερικό του   και υπολογίζουμε την τιμή της   σε αυτά.
  2. Διακρίνουμε ξεχωριστές περιπτώσεις για τα συνοριακά σημεία της καμπύλης   , μετατρέποντας κάθε φορά την   σε συνάρτηση μίας μεταβλητής σε κλειστό διάστημα. Για κάθε συνάρτηση που προκύπτει βρίσκουμε τα άκρα του πεδίου ορισμού της και τα σημεία στα οποία μηδενίζεται η πρώτη της παράγωγος και εξετάζουμε την τιμή της   σε αυτά.
  3. Συγκρίνουμε τις τιμές της   στα παραπάνω σημεία. Από αυτές η μεγαλύτερη αποτελεί το ολικό μέγιστο της   στο   και η μικρότερη το ολικό ελάχιστο της   στο  .

Παράδειγμα

επεξεργασία
 
Το τριγωνικό πεδίο D του παραδείγματος

Δίνεται η συνάρτηση   ορισμένη στην τριγωνική περιοχή   που περιβάλλεται από τους άξονες   ,   και την ευθεία  , συμπεριλαμβανόμενου ολόκληρου του συνόρου.
Eύρεση ολικών ακροτάτων της  
Κατ'αρχάς η περιοχή στην οποία είναι ορισμένη η   είναι συμπαγής και η   είναι συνεχής, οπότε σύμφωνα με το θεώρημα υπάρχουν ολικά ακρότατα.
Συνεχίζουμε με τον εντοπισμό των ακροτάτων σύμφωνα με τα παραπάνω βήματα.
1.  
 
 
Επομένως κρίσιμο σημείο της συνάρτησης   είναι το   με τιμή  
2.Εδώ πρέπει να εξετάσουμε χωριστά τις τρεις καμπύλες του συνόρου.

i.   για  

Θέτουμε   oπότε
 
 
Επομένως κρίσιμο σημείο της συνάρτησης   είναι το   και άκρα του πεδίου ορισμού της τα σημεία   και  .
Υπολογίζω την τιμή της   σε αυτά τα σημεία:
 

ii.   για  

Θέτουμε   oπότε
 
 
Επομένως κρίσιμο σημείο της συνάρτησης   είναι το   και άκρα του πεδίου ορισμού της τα σημεία   και  .
Υπολογίζω την τιμή της   σε αυτά τα σημεία
 

iii.   για   και  

Θέτουμε   oπότε
 
 
Για  
Επομένως κρίσιμο σημείο της συνάρτησης   είναι το   και άκρα του πεδίου ορισμού της τα σημεία   και  .
Υπολογίζω την τιμή της   σε αυτά τα σημεία
 
3. Συγκρίνοντας τις παραπάνω τιμές της   καταλήγουμε στο ότι η   παρουσιάζει ολικό ελάχιστο στα σημεία   με τιμή   και ολικό μέγιστο στο σημείο   με τιμή  .

Τοπικά ακρότατα συναρτήσεων πολλών μεταβλητών

επεξεργασία

Θεώρημα Fermat για n μεταβλητές

επεξεργασία

Έστω   ανοικτός τόπος   και  .
Αν το σημείο   είναι σημείο τοπικού ακροτάτου τότε:
 .

Ορισμός Εσσιανής

επεξεργασία

Έστω συνάρτηση   η οποία είναι   στο  . Τότε ορίζεται ο Εσσιανός πίνακας με στοιχεία τις δεύτερες μερικές παραγώγους της   ως εξής:

 .

Δηλαδή κάθε στοιχείο του πίνακα ορίζεται ως εξής:

 

Εφόσον η συνάρτηση είναι   ο Εσσιανός πίνακάς της είναι συμμετρικός (αφού : ).
Ως Εσσιανή ορίζεται η ορίζουσα του Εσσιανού πίνακα ,δηλαδή:
Εσσιανή =   .

Κριτήριο Εσσιανής

επεξεργασία

Έστω συνάρτηση   όπου   ανοικτός τόπος του  .
Αν το   είναι κρίσιμο σημείο, δηλ.  , της   τότε:

i. Αν ο   είναι θετικά ορισμένος στο   τότε το   είναι σημείο τοπικού ελαχίστου της  .
ii. Aν ο   είναι αρνητικά ορισμένος στο   τότε το   είναι σημείο τοπικού μεγίστου της  .
iii. Αν ο   είναι απροσδιόριστος στο   τότε το   είναι σαγματικό σημείο.
iv. Αν η ορίζουσα του   στο   ισούται με μηδέν   τότε δε μπορούμε να αποφανθούμε για τη φύση του σημείου  .

Παράδειγμα

επεξεργασία

Έστω συνάρτηση   με  .
Εντοπισμός τοπικών ακροτάτων
1ο βήμα (Εύρεση κρίσιμων σημείων):
Αρχικά βρίσκουμε τις πρώτες μερικές παραγώγους της  :

 

Έπειτα βρίσκουμε τα κρίσιμα σημεία της  :

 

Παρατηρούμε ότι το σύστημα έχει προφανή ρίζα τη  . Αναζητούμε τις υπόλοιπες ρίζες υπό τον περιορισμό:  .
Λύνοντας ως προς z και αντικαθιστώντας στις εξισώσεις έχουμε:

 

Επομένως τα κρίσιμα σημεία της   είναι τα:
 .

2ο Βήμα (Εφαρμογή του κριτηρίου Εσσιανής σε κάθε κρίσιμο σημείο):
Αρχικά βρίσκουμε τις δεύτερες μερικές παραγώγους της  .

 

Στη συνέχεια φτιάχνουμε τον Εσσιανό πίνακα με τις δεύτερες μερικές παραγώγους της  .

 

Για το  :

 

Υπολογίζουμε τις ηγετικές κύριες ελάσσονες   του πίνακα   και βρίσκουμε:

 

Συμπεραίνουμε ότι ο Εσσιανός πίνακας στο σημείο   είναι θετικά ορισμένος, οπότε το σημείο   είναι σημείο τοπικού ελαχίστου της  .
Εργαζόμαστε ανάλογα και για τα υπόλοιπα κρίσιμα σημεία, εντοπίζοντας έτσι όλα τα τοπικά ακρότατα της  .

Τοπικά ακρότατα υπό συνθήκη συναρτήσεων τριών μεταβλητών

επεξεργασία

Διπλά ολοκληρώματα

επεξεργασία

Υπολογισμός με Fubini

επεξεργασία

Αλλαγή σε πολικές

επεξεργασία

Βασικές έννοιες (ορολογία)

επεξεργασία
  1. Ανοιχτή μπάλα του   με κέντρο   και ακτίνα   ονομάζεται το σύνολο  {  }.
  2. Κλειστή μπάλα του   με κέντρο   και ακτίνα   ονομάζεται το σύνολο  {  }.
  3. Οριακό σημείο ή σημείο συσσώρευσης ενός συνόλου   ονομάζεται ένα σημείο   όταν για κάθε   ισχύει:  .
  4. Κλειστό σύνολο ονομάζεται το σύνολο εκείνο που περιέχει όλα τα οριακά του σημεία.
  5. Φραγμένο σύνολο είναι ένα σύνολο   για το οποίο ισχύει:  .
  6. Συμπαγές σύνολο είναι κάθε φραγμένο και κλειστό σύνολο.
  7. Εσωτερικό σημείο ενός συνόλου   ονομάζεται ένα σημείο   όταν  .
  8. Εξωτερικό σημείο ενός συνόλου   ονομάζεται ένα σημείο   όταν  .
  9. Συνοριακό σημείο ενός συνόλου   ονομάζεται ένα σημείο που δεν είναι ούτε εσωτερικό ούτε εξωτερικό του   , δηλαδή όταν   και  .
  10. Ανοικτό σύνολο λέγεται ένα σύνολο που περιέχει μόνο εσωτερικά σημεία.
  11. Συνεκτικό σύνολο, (ή συναφές), λέγεται ένα σύνολο για το οποίο μπορούμε να ενώσουμε δυο οποιαδήποτε σημεία του με μια τεθλασμένη πολυγωνική γραμμή, της οποίας όλα τα σημεία να ανήκουν στο σύνολο.
  12. Ανοικτός τόπος είναι ένα ανοικτό και συνεκτικό σύνολο.
  13. Σε έναν τετραγωνικό και συμμετρικό πίνακα   ορίζουμε ως ηγετικές κύριες ελάσσονες τάξης   τις ορίζουσες που προκύπτουν διαγράφοντας από τον   τις   τελευταίες στήλες και τις αντίστοιχες γραμμές του.
  14. Ένας συμμετρικός πίνακας   είναι θετικά ορισμένος εάν για κάθε διάνυσμα   διάφορο του μηδενικού ισχύει ότι:  . Διαπιστώνουμε ότι ένας πίνακας είναι θετικά ορισμένος αν και μόνο αν όλες οι ιδιοτιμές του είναι θετικές ή αν και μόνο αν όλες οι ηγετικές κύριες ελάσσονές του είναι θετικές.
  15. Ένας συμμετρικός πίνακας   είναι αρνητικά ορισμένος εάν για κάθε διάνυσμα   διάφορο του μηδενικού ισχύει ότι:  . Διαπιστώνουμε ότι ένας πίνακας είναι αρνητικά ορισμένος αν και μόνο αν όλες οι ιδιοτιμές του είναι αρνητικές ή αν και μόνο αν οι ηγετικές κύριες ελάσσονες τάξης k εναλλάσσονται σε πρόσημα ξεκινώντας από το αρνητικό πρόσημο για την ηγετική κύρια ελάσσονα τάξης 1.
  16. Ένας συμμετρικός πίνακας   είναι απροσδιόριστος όταν δεν είναι ούτε θετικά ούτε αρνητικά ορισμένος και δεν έχει μηδενικές ιδιοτιμές.

Παραπομπές

επεξεργασία

Πρότυπο:Παραπομπές

  1. Τσίτσας Λ., Εφαρμοσμένος Διανυσματικός Απειροστικός Λογισμός, 2003, εκδ. Σ.ΑΘΑΝΑΣΟΠΟΥΛΟΣ & ΣΙΑ Ο.Ε. ISBN. 978-960-266-209-0
  2. 2,0 2,1 2,2 2,3 2,4 2,5 2,6 FINNEY R.L., WEIR M.D., GIORDANO F.R. ΑΠΕΙΡΟΣΤΙΚΟΣ ΛΟΓΙΣΜΟΣ, ΤΟΜΟΣ ΙΙ, Π.Ε.Κ.