Исследование функции нескольких переменных на экстремум отличается от того, что выполняется в случае функции одной переменной. Однако "базовый" принцип все тот же — сначала следует найти точки, в которых производные равны нулю.
На заметку
В случае функции двух переменных/*, у) исследование на экстремум заключается в следующем: сначала находятся точки, в которых производная данной функции равна нулю, а затем составляется матрица размером 2x2 с элементами Ао, которые равны второй производной по i-му и j-му аргументам в точке, где равна нулю производная.
Экстремум имеет место, если определитель матрицы больше нуля. Если диагональные элементы матрицы при этом больше нуля, значит, исследуемая точка — точка минимума. Если диагональные элементы меньше нуля — это точка максимума.
Задача 2.26
Исследовать на экстремум функцию z = х* +у* -х2 -2ху -у2.
Задаем функцию z, зависящую от двух переменных х и у.
На следующем этапе нужно решить систему двух уравнений, в которых ча-1 стные производные от функции z первого порядка приравнены к нулю. Но сначала эту систему (назовем ее SysEq) следует описать.
Теперь решаем систему.
В полученном множестве представлено три решения (каждое из которых L также является множеством): первые два действительные, а третье, представленное посредством функции RootOf(), комплексное. Последнее в данном случае интереса не представляет, поэтому его не рассматриваем.
Приведенная ниже процедура вычисляет производную в точке с координатами х и у порядка п по первому аргументу и порядка m по второму аргументу.
Совет
Эту
же процедуру можно было определить иначе: F:=(x,у,n,m)->D[n.m] (z) (x,у).
Матрица А — это матрица вторых производных исследуемой на экстремум функции в первой точке предполагаемого экстремума, в то время как матрица В — во второй точке.
Чтобы выяснить, являются ли исследуемые точки экстремальными, нужно вычислить детерминанты определенных выше матриц. В пакете linalg для этих целей предусмотрена процедура det(), которую можно вызвать следующим образом.
Поскольку детерминант меньше нуля, то в первой точке экстремума нет. Ниже показано, как вызвать все ту же процедуру, но с несколько иным синтаксисом (сначала подключается пакет).
Здесь детерминант больше нуля. Следовательно, вторая точка является точкой экстремума.
Внимание!
В Maple 9 процедуры пакета linalg распределены по пакетам LinearAlgebra и VectorCal-culus. Однако на пакет linalg можно по-прежнему ссылаться, что и было сделано выше.
Необходимо определить знак первого диагонального элемента матрицы (знак другого диагонального элемента будет таким же).
Поскольку этот элемент больше нуля, приходим к выводу, что точка (х=1, у=1) является точкой минимума.
На заметку
Ссылка на элемент матрицы в выполняется в виде В[ i, j ], где i и j — индексы вызываемого элемента.
Задача 2.27
Найти экстремальное значение неявно заданной функции z от переменных х
И у, если хг+у2 +z* -2x -2y-4z-l0 = 0.
В данном случае имеем дело с неявно заданной функцией. Вначале запишем уравнение.
После этого достаточно просто вычислить частные производные от z по х и у.
На первое выражение можно сослаться посредством переменной среды %%, второе — переменной *. Приравниваем их к нулю, заключаем в фигурные и, указав в качестве параметра процедуры solve(), решаем такую систему относительно переменных х и у.
Частные производные одновременно равны нулю только в одной точке Цшеется в виду точка на множестве х и у).
Вычисляем производные второго порядка и присваиваем их в качестве ачений переменным All, A12 и А22 (числа в названиях переменных соответ-вуют номерам аргументов, по которым вычисляются производные). All:=implicitdiff(Eq,z,x$2);
Теперь переменным х и у присваиваем соответствующие значения.
Далее следует выяснить, чему равно значение функции при данных значениях переменных.
При этом выражения для определенных ранее переменных существенно упрощаются.
Детерминант определим следующим образом (переменная Determ).
Внимание!
В данном случае никаких матриц мы не вводили. Но если бы ввели, то элементы матрицы вторых производных определялись через переменные All, A12 и А22, а детерминант (определитель) матрицы был именно таким, как значение переменной Determ.
Осталось проверить значение переменной Determ в каждой из двух точек (по z).
Детерминант больше нуля, а переменная АН отрицательна (это был бы диагональный элемент матрицы).
Вывод: исследуемая точка (x=l,y=-l,z=6) — точка максимума. В другой точке имеем следующее.
В данном случае получили, что и детерминант, и All — больше нуля. Сле-|довательно, точка (x=l,y=-l,z=-2) — точка минимума.
Задача 2.28
Найти точки условного экстремума функции и = хг +/, если х/а+у/Ь = 1.
Это задача на условный экстремум, и решать ее будем методом неопределенных множителей Лагранжа.
Вводим функцию z, которая, помимо х и у, зависит еще и от параметра А.
Инициализируем переменную-множество EqSeq для записи в нее в последующем уравнений, определяющих точки возможного экстремума.
На следующем этапе заполняем это множество уравнениями. Каждое такое уравнение — приравненная к нулю производная по одной из переменных х, у или по параметру к. Весь процесс автоматизирован посредством использования оператора цикла for.
В рамках этого оператора при помощи переменной t перебираются все параметры, по которым берется производная, сама производная приравнивается к нулю, а уравнение записывается с помощью оператора объединения множеств union в переменную EqSeq.
В результате получаем следующую систему уравнений (она записана в переменной EqSeq в виде множества уравнений).
Теперь эту систему решаем.
Параметру к присваиваем найденное выше значение.
На заметку
Ссылка rhs(op(l)[3]) выполнена на правую часть равенства, которое является третьим [элементом множества, полученного на предыдущем этапе при решении системы уравнений. От сеанса к сеансу вычислительное ядро Maple может выводить элементы множества в разной последовательности. Другими словами, уравнение для X не обяза-ргельно будет третьим элементом множества. Поэтому индекс (в данном случае 3) следует указывать только после решения системы уравнений, когда в области вывода отображен результат.
Далее определяем второй дифференциал.
Ниже показано, как с помощью процедуры ор() можно "извлечь" накла-лваемое на переменные условие (оно необходимо для установления взаимо-зи между дифференциалами переменных х и у).
На заметку
умеется, можно было просто задать данное условие в явном виде. Но, как поется в песне, "нормальные герои всегда идут в обход".
Определяем операнды исходной функции г.
Из этой последовательности интерес представляет уравнение, накладывающее ограничение на переменные. С точностью до коэффициента оно будет таким:
Снова разбиваем уравнение на операнды.
Теперь само уравнение используем для того, чтобы связать между собой дифференциалы dx и dy.
Дифференциал dy выражаем через dx.
Полный дифференциал тогда равен следующему.
Группируем слагаемые при dx, в результате чего получим:
Определяем знак этого выражения.
Таким образом, приходим к выводу, что функция имеет условный минимум.