no estoy seguro, pero el problema es matemático y corresponde a investigación de operaciones (o programación lineal), donde usas el método de maximización o minimización dependiendo del caso, dicho algoritmo usa una variante de la técnica de gauss-jordan conocida como método simplex
http://www.phpsimplex.com/, saludos y suerte