moptipyapps.prodsched.objectives package¶
Objectives for the production scheduling problem. An objective function for minimizing the maximal stocklevel. Maximize the worst and average service level. This objective function tries to find solutions which have very robust and also good service levels. The service level 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. Service levels are between 0 and 1. Of course, high service levels are good and should therefore be subject to maximization. However, since we can only minimize, we minimize “1 - service level”. Now, the question is: What is a robust service level / solution? Well, we simulate the solutions (such as re-order points) over multiple instances. A robust good service level would be high on the worst instance. In other words, the smallest service level measured on any instance should be as high as possible. This means that the largest value “1 - service level” 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 service level over all instances, or, in terms of minimization, that we minimize “1 - average service level”. This objective function combines both concepts, putting special emphasis on the worst-case service level. It minimizes “100+(1 - worst-case service level) + (1 - average service level)” Bases: Combine and minimize worst and average service level. Get the negated worst service level combined with the average. x ( the worst stock level Maximize the worst-case service level. This objective function tries to find solutions which have very robust fill rates. The service level 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. Service levels are between 0 and 1. Of course, high service levels are good and should therefore be subject to maximization. However, since we can only minimize, we minimize “1 - service level”. Now, the question is: What is a robust service level / solution? Well, we simulate the solutions (such as re-order points) over multiple instances. A robust good service level would be high on the worst instance. In other words, the smallest service level measured on any instance should be as high as possible. This means that the largest value “1 - service level” should be as small as possible. So we use this as result of our objective function. Bases: Compute the worst service level and return 1 - of it. Get the negated worst service level. x ( the worst stock levelSubmodules¶
moptipyapps.prodsched.objectives.max_stocklevel module¶
moptipyapps.prodsched.objectives.worst_and_mean_service_level module¶
ObjectiveMultiStatistics) – the multi-statisticsmoptipyapps.prodsched.objectives.worst_service_level module¶
ObjectiveMultiStatistics) – the multi-statistics