Greedy algorithm, branches and boundaries for the schedule of merchandisers (Hackathon's case for optimization)

This is a pilot article. We will be grateful for your feedback. If the topic is of interest, we may decide to put our sources (python) and input data-sets on GitHub.





2021 . . , , . front back, , , J . , , ( ), . . project+product+ppt ( ). , , . , . , , . , , .





front . . . "" 1 , . ( 5 ). :





204 ( ). , . .





204204 (. .1 ). , .. ( .). API . . (), AS IS ( ). : ( ). , ( ) , . 9,5 .









0





1





2





...





203





0





0





4031





4152





....





8853





1





4021





0





817





....





10196





2





4239





926





0





....





10306





....





....





....





....





0





10345





203





10071





10610





10289





10886





0





1.





  AS IS 14 . , , .





- back(python) deep learning. , , , , , , , - . – , .





, , . , youtube, . . , . , NP . (brutal force), 66 . , ! , TSP (Travelling salesman problem ) , , , . : - . , , , , e .., . . - . , - .





- ! - , @eny01. data science python, , . , . , . . .





  1. . , ..;





  2. ( );





  3. , (9,5 ) - , . ;





  - :





:





  1. :





, . . . , . .





, , - . , , .





(>=9,5 .), . , " " . , !!, . . 3,5 5 204 . . , .





2. :





. , . . itertools (python), 8 21 , 0.4 . ! - . , ( ).





:





, .. 14 13, . , :













( )









, %









14





13





1





7,14%





,





25,06





13,54





11,52





45,96%





,





1729,342





839,69





889,65





51,44%









469,43





508,03





-38,6





-8,22%





,





539,85





524,97





14,88





2,76%





8 .





And as a final chord, we allowed ourselves to twist the limit from 9 hours 30 minutes to 9 hours 38 minutes. And we got a reduction to 12 agents with a small margin of error. Out of 60 daily schedules, 14 go into processing from 1 to 8 minutes (51 minutes in total).





We are waiting for your comments, remarks and suggestions! We will answer all your questions. Write how you would solve this problem. Practitioners' opinions will be especially valuable for us. Both mathematicians and data scientists. Maybe someone will suggest existing python libraries to solve the problem. We, as I said, did not find suitable libraries. Thank you all for reading to the end!








All Articles