I'm new to this kind of problem and I'm having a lot of difficulty in understanding how to solve this problem: let's suppose we have 3 types of objects to produce in a production line (A, B, C), I know the processing time of each onject on the production line (Pa, Pb, Pc).
the problem is quite simple I think, I want to find the optimal scheduling of daily production respecting the following constraints:
- I have to stay within the range of 8 working hours
- each product has a minimum daily production to be respected.
so, to give an example, let's say that I have to produce a minimum of:
- 3 type A products
- 2 type B products
- 1 type C product
in 8 hours
I would like to obtain an algorithm whose output for example is:
in 8 hours the sequence of products you have to make respecting the constraints is AABBBCAAC.
now, I tried to do it with a simple Cartesian product using itertools of Python, trying to filter the solution, but for my problem the algorithm is too expensive at a computational level because I have a very high daily production of products.
I also tried to use search algorithms, but I don't quite understand how to embed constraints.
finally, I tried to formulate the problem with Mixed Integer Programming, but I don't know if there is something faster.
Can you tell me a smarter and more effective way to solve the problem? If you can give me some examples to understand better, I would be grateful.
Thank you