0

I am trying to learn on scheduling and have the following use case: I have different parts that need to be delivered on specific dates, also they have different quantity and different runtimes. Only 1 machine is considered. The delivery date is a hard constraint, but I also would like to see if I can optimize the setup of the machine for each product. Therefore I have table with the different tools used for the parts. When the cell has a 0 the tool is not used, when there is a 1 the tool is used. I have around 50 tools in total for all parts. do not want to look only at the delivery dates, I also want to look how I can shorten time between the change from part A to part B, so that I do change as less as tools as possible.

I was able to sort my data after the date, but do not know where I should start to go to optimize, which algorithm might be good, a genetic algorithm or ant colony optimization ? I can not provide a code yet and also do not want one whole code from here, but a good starting point is my interest.

utahpyml
  • 5
  • 4
  • Can you please provide more explanation what your goal is? What is your function that measures how good the "setup of the machine" is? – BurningKarl Nov 15 '18 at 18:26
  • Looking at your first problem, you described that there is just one machine that produces all the different parts. Because every part needs to be made at some time and you have given delivery dates, it seems obvious to queue the parts (with given quantities) in the order they are supposed to be delivered, assuming that the delivery dates are realistic deadlines. – BurningKarl Nov 15 '18 at 18:32
  • @BurningKarl in the first place there is one machine right. I do not want to look only at the delivery dates, I also want to look how I can shorten time between the change from part A to part B, so that I do change as less as tools as possible. – utahpyml Nov 15 '18 at 18:41
  • @ErwinKalvelagen I found literature about the problem, but nothing really about the coding for my usecase. – utahpyml Nov 15 '18 at 18:43
  • This is called a machine scheduling problem with sequence dependent setup times. There is literature on this problem. – Erwin Kalvelagen Nov 15 '18 at 18:55
  • @ErwinKalvelagen in my case I do not have the same problem, some of the tools can be used for the next part and some not, that's why I can not go always from the assumption I have an empty machine. – utahpyml Nov 15 '18 at 19:08
  • Retooling is a typical use case for this problem type. But if you say it is not, I am happy to accept that. – Erwin Kalvelagen Nov 15 '18 at 19:32
  • @ErwinKalvelagen its about retooling right, I want to retool as less as I need. How should I proceed for the coding would be the question – utahpyml Nov 15 '18 at 19:38

0 Answers0