Trying to write an optimization problem

61 Views Asked by At

So here is the problem:

A small machine tool manufacturing company entered into a contract to supply $80$ drilling machines at the end of the first month, $120$ at the end of the second month and $150$ at the end of the third month. The unit cost of manufacturing a drilling machine in any month is given by $50x + 0.2x^2$, where $x$ is the number of drilling machines manufactured that month. If the company manufactures more units than needed the first month, there is an inventory carrying cost of $8$ per unit for each unit carried into the next month. Assume that the company has enough resources to produce up to $200$ drilling machines per month and there is no initial inventory. Formulate a two-variable nonlinear program to find the number of drilling machines to be manufactured in each month to minimize the total cost.

This is confusing to me. I can only identify one variable that is already been told in the question which is the drilling machines manufactured, $x$. I could say that I have $x_1$ for the machines manufactured in month $1$ and $x_2$ for the machines manufactured in month $2$ but then I would need $x_3$ for month $3$ and the problem only states to formulate a two-variable program. Also to minimize the total cost the extra machines manufactured might aswell be $0$.

Any idea how to solve this? This shouldn't be something complicated, but I seem to be missing something.

2

There are 2 best solutions below

0
On

Since you have a constraint on the total number of drills, you can write $x_3 = 350 - (x_1 + x_2)$.

Let me add something with a more general scope: as a rule of thumb, if you don't see how to write the problem in two variables, writing it out in $N$ variables first can be very useful.

2
On

Calling

$$ \cases{ f(x) = 0.2x^2+50 x\\ g(x) = 8x } $$

we have the proposal

$$ \min_{x_1,x_2,x_3}\{f(x_1)+f(x_2)+f(x_3)+g(x_1-80)+g(x_1+x_2-120)+g(x_1+x_2+x_3-150)\} \\ \text{s. t.} \cases{80\le x_1\le 200\\ 120\le x_2\le 200\\ 150\le x_3\le 200} $$