When an order of a job j containing n sub-jobs (or operations) (O1, O2, …, On)
enters into a manufacturing system, its operations will be allocated to resources by the system manager, i.e., the shop agent. Job operations need to be processed
according to a certain sequence followed by the precedence constraints. In other words, the finish processing time of the preceding operation has to be earlier than the start time of the subsequent operation. Due date is assigned to the job as the latest finishing time. In the manufacturing system, there are m resources (R1, R2, …,
Rm) with different technical abilities and capacities for carrying out different types of
job operations. Some of the resources have multiple capabilities which enable them to perform more than one type of operation. Meanwhile, there is a job buffer for each resource containing a list of unprocessed jobs from previous orders. It should be noted that each resource is able to perform at most one job operation at the same time. Therefore, in this problem, it should be decided which resource will carry out which job operation, as well as which resource at what time will carry out each operation. The objective of this basic problem is to find the optimum allocation of a production job containing a sequence of operations to a pool of resources in the system in order that the entire job can be finished within a given due date at the minimum production cost.
When a job operation i is being processed in a resource j, it needs a processing cost Cpij and a lead time Tpij and a corresponding setup cost Csij and time Tsij before
processing if the type of previous finished operation is not the same as the current one. Unprocessed jobs are stocked in the resource buffer, so there is a waiting cost Cwij and time Twij if the resource is not idle when the new job arrives. Before being
carried out for the current operation, the job is transported from another resource where the preceding operation is carried out, so a transporting cost Ctij and time Ttij
are needed.
After a new job operation is loaded to the resource buffer, it has to be decided which position the new job is arranged in the buffer list, since there may be some existing jobs already waiting in the queue. If the new job is not put at the end of the queue, it would affect other previous jobs in terms of their waiting cost and time. In that case, there will be an additional cost Crij paid by the current job for rescheduling others in
the waiting list. If the new job is set to the end of the buffer queue, it would wait to be carried out until all the existing jobs completed, where Crij is equal to 0.
operation i are:
ij tij pij sij wij
T T T T T , (1)
Cij CtijCpijCsijCwijCrij (2) The problem that the manufacturing system faces is to allocate each job operation to a proper resource in order to achieve optimal routing and sequencing solution, i.e., to find an allocation with minimal production cost and satisfied due date, as shown in (3), 1 1 ( n m ij ij) i j Min C C y
Subjected to 1 1 n m ij ij i j T T y D
0 1 m ij j y
for i ∈ [1, n] yij ∈ (0, 1) for i ∈ [1, n] TFi < TSi+1 for i ∈ [1, n] (3)where Cij and Tij are the total cost and time for resource j processing the operation i
and C and T are the overall production cost and time for carrying out the entire job. D represents the due date of the job order. yij is equal to 1 if resource j is selected to
perform operation i and it is 0 if it is not selected. For each operation i, there is only one resource can be selected. TSi and TFi represent the starting time and the
finishing time of operation I respectively. Since all operations need to be carried out following a pre-designed sequence, the staring time of an operation i+1 should be later than the finishing time of its preceding operation i.
According to the formulation of the problem stated above, the cost and time for carrying out an operation is not only dependent on which resource is selected to perform this operation, but also based on which resource is selected to carry out the
preceding operation. Local decisions for allocating individual operations are correlated with each other. For example, the start time of an operation on a resource relies on when the job arrives at this resource, which is related to the finishing time of the previous operation and the time to transport the job between resources. Consequently, the change of the local decision leads to the changes of performances of following operations on resources and leads to the change of the overall performance of the entire job production. As a result, different combination of resource selection and different scheduling options for operations on resources generate alternative allocation plans with different production performances. Hence, the maximal number of possible allocation plans can be approximately represented in (4), 1 ( m )n j j P S
(4) where P is the approximate maximal number of all possible allocation plans. Sj isthe scheduling options assumed to be processed by the resource j for an operation, which depends on how many unprocessed jobs are in the resource buffer. n and m represent the total number of operations and resources respectively. This equation shows that the number of possible solutions for allocation plans grows exponentially with the increase of the number of job operations. This problem belongs to NP-hard (Non-deterministic polynomial-time hard) problems and it is not practicable to list all possible allocation plans and select the best one as the problem becomes more and more complex with increasingly larger number of operations. In addition, the constraint of the operational sequence, i.e., following operations have to be performed after their preceding operations finished, has not been considered in this equation, which makes this problem more complex. Therefore, it is necessary to find an efficient method to accelerate the searching speed and reduce the computational complexity.