Блоки решений > Пример. Функции оптимизации
Пример. Функции оптимизации
Этот пример показывает, как передавать вектор начальных приближений в функции Maximize или Minimize.
1. Определите функцию f(x).
Щелкните для копирования этого выражения
2. Определите x как вектор начальных приближений.
Щелкните для копирования этого выражения
3. Передайте вектор x как аргумент в функцию Maximize.
Щелкните для копирования этого выражения
Произойдет ошибка, так как PTC Mathcad предполагает, что x является одиночным значением, а не вектором.
Чтобы избежать этой ошибки, необходимо итерировать начальные приближения и отправлять их в функцию Maximize по одному, как показано ниже.
4. Используйте оператор диапазона, чтобы определить вектор начальных приближений.
Щелкните для копирования этого выражения
Щелкните для копирования этого выражения
5. Определите две новые функции для выполнения максимизации и минимизации функции f (x).
Щелкните для копирования этого выражения
Щелкните для копирования этого выражения
6. Напишите короткую программу для итерирования начальных приближений, вычисления максимума и минимума для такого начального приближения и сохранения результата в векторы maximums и minimums соответственно.
Щелкните для копирования этого выражения
Те же результаты можно получить, используя оператор векторизации следующим образом:
Щелкните для копирования этого выражения
И Ms, и Qs возвращают вектор из двух 7-элементных векторов, содержащих вычисленные максимумы и минимумы.
7. Определите переменную j как длину возвращенного вектора максимальных значений.
Щелкните для копирования этого выражения
8. Постройте график функции f(x) вместе с точками максимумов и минимумов, возвращенными программой.
Щелкните для копирования этого выражения
9. Постройте график функции f(x) вместе с точками максимумов и минимумов, возвращенными оператором векторизации.
Щелкните для копирования этого выражения
Оба метода возвращают одинаковые результаты.
Было ли это полезно?