[Math] How to solve system of equations with multiple constraints

linear algebralinear programmingmatrices

I have a system of equations that looks like this:

$$\begin{array}{rl}
a_1 b_1 c_1+a_2 b_2 c_2+a_3 b_3 c_3&=1000\\
a_1+a_2+a_3&=1\\
a_2&=0.6 \,a_1\\
b_1+b_2+b_3&=500
\end{array}$$

and $$a_1 a_2 a_3 b_1 b_2 b_3 c_1 c_2 c_3 > 0$$

$c_1,c_2,c_3$ are free.

I have no experience with linear programming, some in linear algebra. How do I go about finding the optimal solution so that $a_2b_2c_2$ is maximized?

Best Answer

If the coefficients $a_i,b_i,c_i$ are not constrained to be non-negative, $a_2$ can be made as large as possible.

Consider $b_1 = b_2 = b_3 = \frac{500}{3}$. Let $a_2 =M$ be any positive number. $a_1 = \frac{5}{3}M$. Also, let $c_3 = -1$. Then, $c_1 = c_2 = \frac{18+5M}{8M}$ will satisfy all the equations. If $M$ is sufficiently large$(>\frac{3}{8}), a_3<0$. So, the product of all terms will be positive.

So, $a_2$ can be made as large as wanted. In other words, it is unbounded.

If you assume that all the $a_i,b_i,c_i$ are non-negative, the problem is straight-forward. Define new variables $x_1 = a_1b_1c_1,x_2 = a_2b_2c_2,x_3 = a_3b_3c_3$ in the first relation. Then, solve the simple LP that arises.

Try any online solver or matlab or mathematica for a sloution. You need not know how to solve a LP to get a solution.

Related Question