ВУЗ:
Составители:
55
отметим, что и полиномиальная кривая при ее
экстраполяции вправо (за пределы экспериментального
окна) приводит к увеличению значения средней длины, что
тоже неверно.
Проведем расчеты с помощью программы nm.pas.
Учитывая, что полученные с помощью Excel функции
плохо описывают поведение исследуемой величины в
последней четверти экспериментального окна, выберем в
качестве целевой функцию (5.2). Добавим проверку
функции отклика на неотрицательность - если указанное
условие будет нарушено, то значение функции отклика
будет увеличиваться в 10 раз, что приведет к возрастанию
целевой функции. Проверим на пригодность в качестве
аппроксимирующего уравнения несколько измененную
версию гиперболической зависимости:
xb
b
by
+
+=
2
1
0
const
ur=5;
fact:array[1..ur] of
real=(7,8,9,10,11);
funct:array[1..ur] of
real=(11,5,2,1,0);
{Вычисление целевой функции}
procedure functmin(var z:real; b:vect1);
var i:integer;
y_theor,y_theor1:real;
begin
tev:=tev+1;
z:=0;
for i:=1 to ur do
begin
y_theor:=b[1]+b[2]/(b[3]+fact[i]);
if y_theor<0 then y_theor1:=y_theor*10
else y_theor1:=y_theor;
56
z:=z+sqr((funct[i]-y_theor1)/y_theor);
end;
z:=sqrt(z/ur)
end;
Результаты пяти прогонов сведены в таблицу 5.2.
Таблица 5.2
Исходные данные Результат
Номер
прогона
b
0
b
1
b
2
Размер
многогран
ника
b
0
b
1
b
2
Значение
целевой
функции
1 1 1 1 1 -1,04 7,70 -6,45 0,471
2 3 3 3 3 -7,78 58,32 -3,50 0,484
3 -5 35 -5 1 -2,95 16,35 -5,84 0,451
4 -3 10 -5 2 -2,66 14,72 -5,96 0,451
5 -6 40 1 1 -5,51 34,35 -4,77 0,463
Анализ показывает, что наблюдается довольно
большой разброс значений коэффициентов. Выберем третий
вариант:
84,5
35,16
95,2
−
+−=
x
y . Отметим, что экстраполяция
по этой формуле также ведет к ошибочным результатам: за
правую границу экспериментального окна дает
отрицательные значения, а за левой границей функция
стремится к бесконечности при x → 5,84. Данный пример
показывает, что регрессионные уравнения применимы
только в пределах экспериментального окна, в рамках
которого они получены, а экстраполяция допустима лишь
на небольшое расстояние.
Второй проверенной формулой стала
логарифмическая зависимость
()
xbbby +
+
=
210
ln
,
приведшая к результатам
b
0
= 25,33, b
1
= -12,03 и b
2
= -2,78
при значении целевой функции 0,536
. На рисунке 5.5
отметим, что и полиномиальная кривая при ее z:=z+sqr((funct[i]-y_theor1)/y_theor);
экстраполяции вправо (за пределы экспериментального end;
окна) приводит к увеличению значения средней длины, что z:=sqrt(z/ur)
тоже неверно. end;
Проведем расчеты с помощью программы nm.pas.
Учитывая, что полученные с помощью Excel функции Результаты пяти прогонов сведены в таблицу 5.2.
плохо описывают поведение исследуемой величины в Таблица 5.2
последней четверти экспериментального окна, выберем в Исходные данные Результат
качестве целевой функцию (5.2). Добавим проверку
прогона
многогран
Номер
Значение
Размер
функции отклика на неотрицательность - если указанное
ника
b0 b1 b2 b0 b1 b2 целевой
условие будет нарушено, то значение функции отклика функции
будет увеличиваться в 10 раз, что приведет к возрастанию
целевой функции. Проверим на пригодность в качестве 1 1 1 1 1 -1,04 7,70 -6,45 0,471
2 3 3 3 3 -7,78 58,32 -3,50 0,484
аппроксимирующего уравнения несколько измененную
3 -5 35 -5 1 -2,95 16,35 -5,84 0,451
b 4 -3 10 -5 2 -2,66 14,72 -5,96 0,451
версию гиперболической зависимости: y = b0 + 1
b2 + x 5 -6 40 1 1 -5,51 34,35 -4,77 0,463
const
ur=5; Анализ показывает, что наблюдается довольно
fact:array[1..ur] of большой разброс значений коэффициентов. Выберем третий
real=(7,8,9,10,11); 16,35
вариант: y = −2,95 + . Отметим, что экстраполяция
funct:array[1..ur] of x − 5,84
real=(11,5,2,1,0); по этой формуле также ведет к ошибочным результатам: за
{Вычисление целевой функции} правую границу экспериментального окна дает
procedure functmin(var z:real; b:vect1); отрицательные значения, а за левой границей функция
var i:integer; стремится к бесконечности при x → 5,84. Данный пример
y_theor,y_theor1:real; показывает, что регрессионные уравнения применимы
begin только в пределах экспериментального окна, в рамках
tev:=tev+1; которого они получены, а экстраполяция допустима лишь
z:=0; на небольшое расстояние.
for i:=1 to ur do
begin Второй проверенной формулой стала
y_theor:=b[1]+b[2]/(b[3]+fact[i]); логарифмическая зависимость y = b0 + b1 ln(b2 + x ) ,
if y_theor<0 then y_theor1:=y_theor*10
приведшая к результатам b0 = 25,33, b1 = -12,03 и b2 = -2,78
else y_theor1:=y_theor;
при значении целевой функции 0,536. На рисунке 5.5
55 56
Страницы
- « первая
- ‹ предыдущая
- …
- 26
- 27
- 28
- 29
- 30
- …
- следующая ›
- последняя »
