Red de conocimiento informático - Conocimiento sistemático - Solicitamos a expertos que utilicen la programación del software matlab para resolver los problemas de las imágenes. Muchas gracias wangchaojie1215@163.com.

Solicitamos a expertos que utilicen la programación del software matlab para resolver los problemas de las imágenes. Muchas gracias wangchaojie1215@163.com.

(1) Problema de minimización de restricciones lineales

f = inline('-x(1)-2*x(2) 0.5*x(1)^2 0.5*x ( 2)^2');

A = [2 3 1 4; -1 0 -1];

b = [6; ;

[x, fmin] = fmincon(f, [0 0], A, b)

Traza el valor mínimo

figure(1 )

ezcontour('-x-2*y 0.5*x^2 0.5*y^2', [0 2.5], [0 2], 100)

espera

ezplot('2*x1 3*x2-6')

ezplot('x1 4*x2-5')

plot(x(1), x(2), 'ro')

title('2{\itx}_1 3{\itx}_2 \leq 6; {\itx}_1 4{\itx}_2 \leq 5; {\itx}_1, {\itx}_2 \geq 0')

(2) Ajuste de mínimos cuadrados

1. El ajuste está relacionado con muchos factores, como el valor inicial, selección de función de ajuste, configuración del algoritmo, etc.

2. Los resultados del ajuste según el programa existente: c1=3.1564, c2=5.2165 A juzgar por los resultados, no son ideales.

3. Parece razonable que la forma de la función de ajuste se seleccione como y=c1 c2*(-c3*t). Los resultados correspondientes se muestran a continuación.

t = 1: 10;

y = [4.842 4.362 3.754 3.368 3.169 3.038 3.034 3.016 3.012 3.005]; ) c(2)*exp(-t)','c','t');

c = lsqcurvefit(f, [0 0], t, y);

c1 = c(1)

c2 = c(2)

Otra forma de función de ajuste

f1 = inline('c( 1) c (2)*exp(-c(3)*t)','c','t');

C = lsqcurvefit(f1, [0 0 1], t, y );

Compare los resultados del ajuste con los datos originales

figure(2)

plot(t, y, '-o', t, f( c, t ), 'r:x', t, f1(C, t), 'g--p');

legend('Datos originales', 'Función de ajuste y=c_1 c_2 e^{- t}', 'Función de ajuste y=c_1 c_2 e^{-c_3 t}')