I am trying to solve a dynamic machine scheduling problem using what I think qualifies as a non linear programming constraints.
I have academic knowledge of linear programming techniques and appreciate the opportunity to try my hands at non linear programming.
However, before anything I am struggling to write down a well forumulated problem. Here is the situation:
Can you please help me properly formulate the problem? Here is how I started putting it:
objective function: Find optimal X_mt such that task are started on time (limit penalty)
constraints:
I am also looking for an algorithm to find some epsilon-optimal solution based on how I relax the workload balancing parameter.
But before I can try to look for an algorithm, I need help to properly formulate the problem.
I've seen example where variance constraints are formulated as the minimization of the difference of upper and lower boundaries but I don't know how to apply it in this case since I have multiple variance constraints.
If this is too much, how would you translate this problem into a Reinforcement Learning one?
Let's look at one of the variance constraints:
is wrong IMHO. There should be no "for all m".
I rewrite this as:
v[m] = sum(t,d[m,t]) for all m
variance(v) <= eps (this is a single, scalar constraint)
<==>
v[m] = sum(t,d[m,t]) for all m
minv <= v[m] for all m
maxv >= v[m] for all m
maxv - minv <= eps (different eps. now to limit the bandwidth)