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 p>
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