In this research, we consider a two-machine job-shop scheduling problem with one joint job where a joint job is defined as a job whose operations are to be processed by different machines. The machine repetition and transportation times between machines are also considered. This problem is associated with real-world applications in the fields of production planning and supply chains. We first demonstrate that this problem is NP-hard in the strong sense. We then propose polynomial-time algorithms based on dynamic programming for cases with a fixed number of jobs. We also propose lemmas to reduce the number of states in dynamic programming without loss of optimality, so that the time complexity is improved. Other methodologies, including preprocessing and the two-pointers method, are also embedded to improve the algorithms. The proposed algorithms have better time complexities than those of variants of a well-known algorithm when applied to the cases of our problem.
Read full abstract