0
$\begingroup$

on the one hand I suppose it is a rather simple problem because basically all information is there, on the other hand I feel like I can't get a grip around, because there are just too many options. It seems that brute forcing it is too much of computing power, though computational methods can be used to support finding the solution.

The goal is to find the minimum for

(1):

$C=\sum_{i=1}^n (t_i * G_i - m *F_i)$

with $n \le 72$.

Furthermore, the following constraints must be met

(2):

$P_i + G_i + D_i - F_i - L_i - U_i = 0$, for all $i = 1..n$

and (3):

$B_{i+1} = B_i + f_L * L_i - \frac{D_i}{f_D}$; with $0 < f_L, f_d < 1$; $0 < B_i < h$ and $0 < L_i, D_i < v$

All variables are $\ge 0$ and the following can be considered as given and fixed: $t_i, m, n, P_i, U_i$

The rest of the so far mentioned can also not be chosen independently but are rather a result of the following. The possible influence to optimize the cost function (1) is

(4):

$s_i$ which can have 3 different choseable states. So $s_i$ can be $b, c$ or $d$

With $s_i = b$ $\to$ $G_i = U_i - P_i + L_i + F_i; D_i = 0; L_i = P_i - U_i$, with the limits for $L_i$ described in (3).

With $s_i = c$ $\to$ $G_i = U_i - P_i + L_i; D_i = 0; L_i = v$.

With $s_i = d$ $\to$ $G_i = U_i - P_i - D_i; D_i = U_i - P_i; L_i = 0$, with the limits for $D_i$ described in (3).

Last but not least, an additional optional constraint might occur that

(5):

$B_n > l$ with $0 < l < h$

So first I thought about calculating all variations, but it seems to be too many (It should be possible to compute it on a RasPi 3 in about 3 minutes).

Now, I my ideas run around calculation the required sum of $\sum_{i=1}^{n} U_i + B_n - B_1$ where in the given it should be true that $B_1 = 0$ and $B_n = l$, then somehow looking for the minimal $t_i$ entries and get $B_i$ to the upper limit when $t_i$ is small and to zero when $t_i$ is big. Though the $f_L$ and $f_d$ do set it off. Also $B_i$ could be in the limit first but then able to use again later.

Maybe this is also more of a programming issue. Anyways, any help is appreciated.

Thank you!

$\endgroup$

0

You must log in to answer this question.

Browse other questions tagged .