moptipyapps.prodsched.objectives package¶
Objectives for the production scheduling problem. An objective function for minimizing the maximal stocklevel. Maximize the worst and average immediate rates. This objective function tries to find solutions which have very robust and also good fill rates. The fill rate is the fraction of customers that can get served directly, i.e., the fraction of customers that do not need to wait. This means that it is the fraction of customers whose demands can directly be satisfied from the stock. Fill rates are between 0 and 1. Of course, high fill rates are good and should therefore be subject to maximization. However, since we can only minimize, we minimize “1 - fill rate”. Now, the question is: What is a robust fill rate / solution? Well, we simulate the solutions (such as re-order points) over multiple instances. A robust good fill rate would be high on the worst instance. In other words, the smallest fill rate measured on any instance should be as high as possible. This means that the largest value “1 - fill rate” should be as small as possible. However, this does not consider the average performance. A good average performance would mean that we maximize the average fill rate over all instances, or, in terms of minimization, that we minimize “1 - average fill rate”. This objective function combines both concepts, putting special emphasis on the worst-case fill rate. It minimizes “100+(1 - worst-case fill rate) + (1 - average fill rate)” Bases: Combine and minimize worst and average fill rate. Get the negated worst immediate rate. x ( the worst stock level Maximize the worst-case immediate rate. This objective function tries to find solutions which have very robust fill rates. The fill rate is the fraction of customers that can get served directly, i.e., the fraction of customers that do not need to wait. This means that it is the fraction of customers whose demands can directly be satisfied from the stock. Fill rates are between 0 and 1. Of course, high fill rates are good and should therefore be subject to maximization. However, since we can only minimize, we minimize “1 - fill rate”. Now, the question is: What is a robust fill rate / solution? Well, we simulate the solutions (such as re-order points) over multiple instances. A robust good fill rate would be high on the worst instance. In other words, the smallest fill rate measured on any instance should be as high as possible. This means that the largest value “1 - fill rate” should be as small as possible. So we use this as result of our objective function. Bases: Compute the worst immediate rate and return 1 - of it. Get the negated worst immediate rate. x ( the worst stock levelSubmodules¶
moptipyapps.prodsched.objectives.max_stocklevel module¶
moptipyapps.prodsched.objectives.worst_and_mean_fill_rate module¶
ObjectiveMultiStatistics) – the multi-statisticsmoptipyapps.prodsched.objectives.worst_fill_rate module¶
ObjectiveMultiStatistics) – the multi-statistics