# Help finding linear constraint - LP

I have the following question. I have two variables $$w_{nds}$$ and $$m_{nd}$$. The first variable indicates whether a nurse $$n$$ works shift $$s$$ on day $$d$$. The second one indicates the motivation of nurse $$n$$ on day $$d$$. How can I link both and create a new variable $$moti_{nds}$$ that combines both information. So the new variable should capture the motivation for each nurse for each shift each day. The value of $$moti$$ for a given shift should be $$\ge 0$$ only if the nurse works this shift. For example, if she works all shifts in a day then $$moti_{1ds}=1 ~\forall s\in S$$ should hold. My suggestion would be:

\begin{align} &moti_{nds}=w_{nds}\cdot m_{nd}~~~~\forall n\in N, d\in D, s\in S \end{align}

Would this be a linear formulation? I would be because, yes, you multiply a variable with two indices by one over three. Is this possible?

• What is really the difference between $w_{nds}$ and $moti_{nds}$? Commented Jun 3, 2023 at 11:45

To linearize product of two variables with $$moti_{nds}$$ & $$m_{nd}$$ are binary
$$w_{nds}+ m_{nd} \le moti_{nds}+1$$

$$moti_{nds}\le m_{nd}$$
$$moti_{nds}\le w_{nds}$$

You can sum $$w$$ and moti over shift $$s$$ for last 2 constraints for nurse $$n$$ works on a given day $$d$$.

$$\sum_s moti_{nds}\le m_{nd}$$
$$\sum_s moti_{nds}\le \sum_s w_{nds} \le S\sum_s moti_{nds}$$

In case $$m_{n,d}$$ is continuous variable in domain $$[L,U]$$ then

$$L w_{nds} \le \sum_s moti_{nds} \le Uw_{nds}$$

$$m_{nd}+L(1-w_{nds}) \le \sum_s moti_{nds} \le m_{nd}+U(1-w_{nds})$$

• Thanks. Would a linearization be necessary if $m_{nd}\in \left[ 0,1\right]$? Commented Jun 3, 2023 at 18:41
• @nflgreaternba most modern solvers can handle product of 2 variables (whether binary or continuous). Still updated my answer just in case $m_{ds}$ is continuous to linearize. Linearization of product of 2 variables may make the model faster. Commented Jun 3, 2023 at 19:37