Материал: №8 лабораторная МП

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Федеральное агентство связи Ордена

Трудового Красного Знамени

федеральное бюджетное образовательное учреждение высшего образования

«Московский Технический Университет Связи и Информатики»

(МТУСИ)

Кафедра Информатики

Предмет: Введение в математические пакеты прикладных программ

Лабораторная работа по ВвМППП № 8

Тема:

«Технология решения задач одномерной оптимизации средствами Scilab»

Вариант 00

Выполнил:

Великий преподователь

__________________________

Москва 0000

Общее задание

  1. Изучите материал Темы 2.5 (п. 2.5.1).

  2. Выберите индивидуальное задание из табл. 2.5.2-1.

  3. Постройте график функции f(x) и выберете отрезок, содержащий единственный минимум;

  4. Проверьте на выбранном отрезке условие унимодальности функции, получив таблицу значений первой или второй производной.

  5. Создайте функцию costf() для формирования значений целевой функции и ее производной.

  6. Найдите координаты точки минимума f(x) с использованием встроенной функции Scilab optim().

  7. Сохраните текст рабочего окна на внешнем носителе.

  8. Предоставьте результаты работы преподавателю, ответьте на поставленные вопросы.

//Лабораторная работа №8 по теме "Технология решения задач одномерной оптимизации средствами Scilab"

// Выполнил:

//Вариант ---

//Описание функции f(x)

deff('y=f(x)','y=x.^2-3.4.*log(1+x)-1')

//Построение графиков функции f(x)

xgrid()

xtitle('Построение графиков функции f(x)','X','Y')

x=0:0.1:2;zeroline=x*0;

plot(x,f(x))

mtlb_hold('on')

plot(x,zeroline,'k-')

//Описание функций f1(x) и f2(x)-первой и второй производных функций f(x)

deff('y=f1(x)','y=2.*x-3.4./(1+x)')

deff('y=f2(x)','y=2+3.4./(1+x).^2')

//Получение таблицы значений f(x),f1(x),f2(x) на интервале [0.89:0.9]

t=0.89:0.001:0.9;

z=[t;f(t);f1(t);f2(t)]'

z =

0.89 -2.3722612 -0.0189418 2.9518211

0.891 -2.3722787 -0.0159905 2.9508146

0.892 -2.3722932 -0.0130402 2.9498098

0.893 -2.3723048 -0.0100909 2.9488066

0.894 -2.3723134 -0.0071426 2.9478049

0.895 -2.3723191 -0.0041953 2.9468049

0.896 -2.3723218 -0.0012489 2.9458064

0.897 -2.3723215 0.0016964 2.9448095

0.898 -2.3723184 0.0046407 2.9438142

0.899 -2.3723123 0.007584 2.9428204

0.9 -2.3723032 0.0105263 2.9418283

//Создание вспомогательной функции для функции optim()

//Для минимума:

function [fp,g,ind]=costf1(t,ind)

> fp=f(t)

> g=numderivative(f,t)

> endfunction

//Поиск координат точки минимума f(x) на интервале [0.89:0.9] с использованием встроенной функции в Scilab optim()

x0=0.89;

[fmin,xmin]=optim(costf1,x0)

xmin =

0.896424

fmin =

-2.372322

Источник: https://studfile.net/preview/16701821/