Red de conocimiento informático - Aprendizaje de programación - Maestros de Matlab, por favor entren~~~Haganme una pregunta de programación~~~~~~

Maestros de Matlab, por favor entren~~~Haganme una pregunta de programación~~~~~~

Este es un problema de programación lineal simple

Déjame mostrarte un problema de ejemplo, lo entenderás de un vistazo:

Una fábrica produce bebidas con dos sabores A y B, cada 100 cajas de bebida A requieren 6 kilogramos de materia prima, 10 trabajadores y una ganancia de 100.000 yuanes cada 100 cajas de bebida B requieren 5 kilogramos de materia prima, 20 trabajadores y una ganancia de 90.000 yuanes; . Hoy, la fábrica cuenta con 60 kilogramos de materia prima y 150 trabajadores. Por otras condiciones, la producción de bebida A no supera las 800 cajas. Pregunte cómo organizar el plan de producción, es decir, qué cantidad de cada una de las dos bebidas se debe producir para maximizar las ganancias.

Solución: Supongamos que las cantidades de dos bebidas A y B producidas son x1 y x2 (100 cajas) respectivamente, y la ganancia total es z (10.000 yuanes).

Modelo matemático:

MAX z = 10X1+9X2

6X1+5X2<=60

10X1+20X2<=150

X1<=8

X1>=0,X2>=0

El programa MATLAB está diseñado de la siguiente manera:

Programa: C=;

b=;

Aeq=;e1=[inf,inf];

[x,fval]=linprog(C,A, b,Aeq ,beq,e0,e1)

Resultado de la ejecución: optimización finalizada.

x =

6,4286

4,2857

fval =-102.8571

Significa que el producto A produce 6.4286 cien cajas y el producto B produce 4.2857 cien cajas. El beneficio máximo que se puede obtener es 1.028.571 yuanes

No se puede mostrar en páginas web con subíndices (como X1), pero definitivamente puedes verlo

La pregunta que hiciste y esto El problema es el mismo