Curing sick people and maximizing social impact

46 Views Asked by At

I have the hardest time modeling situations (find variables and the right constraints), so I am looking for hints on what I'm missing instead of the actual answer.

Here is the problem and my work on it:

Suppose we have two types of disease : Type A and Type B.

We have 2 types of resources to cure these, Resource 1 and Resource 2.

To cure the sick people we need:

  • For type A : 9 resources 1 + 6 resources 2
  • For type B : 14 resources 1 + 5 resources 2

Other info

  • We have 630 resources 1 and 300 resources 2.
  • There are 40 sick people on the waiting list for every type
  • We want to maximize the social impact. The social impact is calculated as follows: 1000 for every type A cured and 1200 for every type B cured.

What I've done so far :

1) Actions :

  • Attribute Resource 1 to Type A (X11)
  • Attribute Resource 1 to Type B (X12)
  • Attribute Resource B to Type A (X21)
  • Attribute Resource B to Type B (X22)

2) Objective $$ 1000( \frac {\frac {x11}{9}+\frac {x21}{6}}{2})+1200(\frac {\frac {x21}{14}+\frac {x22}{5}}{2}) $$

Note : I know this objective isn't right but this is all I could find. I don't know how to remove the results if the number of resources given is lower to the amount needed.

For example, if 8 resources 1 and 5 resources 2 are given to type A, I get social impact when I shouldn't because no one has been cured.

3) Constraints

Resources: $$x11+x12 \leqslant 630$$ $$x21+x22 \leqslant 300$$

Patients : $$\frac {x11}{9} \leqslant 40$$ $$\frac {x21}{6} \leqslant 40$$ $$\frac {x12}{14} \leqslant 40$$ $$\frac {x22}{5} \leqslant 40$$

Note : I know that this is not optimal either, it looks bad.

1

There are 1 best solutions below

1
On

Your choice of decision variables $$x_{ij} = \text{units of resource $i$ applied to disease $j$},\quad (i,j)\in\{1,2\}\times\{A,B\} $$ is a good start, but it is a lot easier to model this problem if we also add the decision variables $$y_j = \text{number of people with disease $j$ cured},\quad j\in\{A,B\}. $$ Then the objective function is simply $\max 1000 y_A + 1200y_B$. The resource constraints are given by \begin{align} x_{1A}+x_{1B}&\leqslant 630\\ x_{2A}+x_{2B}&\leqslant 300, \end{align} and the diseased population constraints by \begin{align} y_A&\leqslant 40\\ y_B&\leqslant 40. \end{align} Then the linking constraints \begin{align} -x_{1A}+9y_A&\leqslant0\\ -x_{2A}+6y_A&\leqslant0\\ -x_{1B}+14y_B&\leqslant0\\ -x_{2B}+5y_B&\leqslant0 \end{align} ensure that we must apply the necessary amount of each resource to cure people from each disease. Now, under the germane assumption that we cannot cure a fraction of a person, we have the additional constraints that $y_A$ and $y_B$ are integer-valued. So we model this problem by a mixed-integer linear program:

\begin{alignat}{2} \textrm{maximize }\; & 1000 y_A + 1200y_B\\\\ \textrm{subject to }\; & x_{1A}+x_{1B}\leqslant 630&\\ & x_{2A}+x_{2B}\leqslant 300\\ & y_A\leqslant 40\\ & y_B\leqslant 40\\ & -x_{1A}+9y_A\leqslant0\\ & -x_{2A}+6y_A\leqslant0\\ & -x_{1B}+14y_B\leqslant0\\ & -x_{2B}+5y_B\leqslant0\\ & x_{ij}\geqslant0,\ & (i,j)\in\{1,2\}\times\{A,B\}\\ & y_j\in\mathbb Z_+,\ & j\in\{A,B\}. & \end{alignat}