Application of Johnson’s algorithm in processing jobs through two-machine system

The purpose of this research is to effectively schedule jobs in a production company using heuristic Johnson’s algorithm. A popular pure water production factory, Iterlene industrial services limited (IISL) located at Effurun, Nigeria was investigated and it was noticed that different sizes of jobs (bottled water) are produced ranging from 25 cl, 50 cl, 60 cl, 75 cl, and 150 cl respectively, which are processed through the filling machine (FM1) and capping machine (CM2). In the order FM1CM2. Each job has to pass through the same sequence of operations. Jobs are assigned in such a way that a job is assigned on FM1 first and once processing is completed on FM1, it is assigned to CM2 and passing is not allowed. The idle time for the production of 500 bottles of water was estimated to be 1020 seconds (17.00 mins.). Johnson’s algorithm was applied to minimize the idle time for both FM1 and CM2 by determining the optimal sequence of the processed jobs. This was achieved within 780 seconds (13.00 mins.). Conclusively, the minimization of total elapsed time between the completion of first and last job was achieved. This would greatly improve productivity, effectiveness, and profitability at iterlene factory.


INTRODUCTION
Johnson's algorithm is a way of determining the optimal sequence or shortest paths in a manufacturing or production system. In operations research and production management, Johnson's rule is a method of scheduling jobs in two work centers, with the primary objective of finding the optimal sequence of jobs to reduce make span (Sharma, 2013). It also reduces the number of idle time between the two work centers. Sharma (2013) further explained that results are not always optimal, especially for a small group of jobs. Johnson's algorithm is one approach that can often be applied to minimize the total elapsed time between the start of a job on the first machine and completion of a job on another machine. The heuristic algorithm can be implemented in job scheduling. Johnson's algorithm gives a straightforward approach to finding an optimal order (Taha, 2012). Sanan et al. (2013) described Johnson Algorithm as a perfect algorithm for the shortest path problem (SPP). They stated further that Johnson Algorithm is capable of solving combinatorial problems and can be applied in the different area especially where processing n jobs through two or more machines is required. According to Johnson E. B. (1977) In solving the shortest-path problem, it is important to look at the flow process of the jobs through the available machines, the opined that knowing the different paths job flow process and predicting the minimum length from source to the destinations is important. In real value problem where the distance between two points is considered especially cases where weights are assigned for positive and negative weights, Johnson algorithm can be implemented, unlike other algorithms that consider only positive values. Other research areas where Johnson algorithm has been demonstrated effectively demonstrated are in the work of (Black 2004;Cormen et al. 2001;Russel andNorvig 2003, Pogorilyy et al. 2017). Scheduling is the allocation of start and finish time to each particular order and jobs in a machine shop. Therefore, scheduling can bring productivity in the shop floor by providing a calendar for processing a set of jobs. It is nothing but scheduling various jobs on a set of resources (machines) such that certain performance measures are optimized. In flow shop scheduling problem, there are 'n' jobs; each requires processing on 'm' different machines. The order in which the machines are required to process a job is called process sequence of that job. The process sequences of all the jobs are the same. But the processing times for various jobs on a machine may differ. If an operation is absent in a job, and then the processing time of the operation of the job is assumed to be zero. A job shop is a type of manufacturing process structure where small batches of a variety of custom products are made. In the job shop process flow, most of the products produced require a unique set-up and sequencing of processing steps. Similar equipment or functions are grouped, such as all drill presses in one area and grinding machines in another in a process layout. The layout is designed to minimize material handling, cost, and work in process inventories.

Related Researching on Sequencing or
Scheduling of Jobs According to Bruker (1998) in his book titled "Scheduling Algorithms", he stated clearly that Johnson Algorithm is an effective method of finding solutions to the problem considering a two server one queue system. According to him, it is important to observe the processing times on the servers. If the shortest processing time is on the first server then the job is positioned in the first available space in the sequence. If the processing time is on the second server, then the job is positioned in the last available space in the sequence. Where there is a tie in processing in selecting the minimum processing times some conditions are implemented. He further demonstrated this by solving the problem considering a two machine, one-queue, no-passing arrangement tasks. This serves as a starting point for many creative and heuristic algorithms. Glaser and Sinha (2010) considered a problem of minimizing the overall time required to complete a sequence of associated jobs. The traditional heuristic method was adopted and for complex combinatorial problems, Johnson's algorithm remains a reliable method or technique that can be applied to solve such problems. The algorithm is straightforward and can easily be understood and implemented. Sandor et al. (2003) implemented Johnson's algorithm in solving the scheduling problem in Group Technology (GT). They factored into consideration a two automated machine system machine A (MA) and machine B (MB). While solving the problem using Johnson Algorithm, they organized the machines in such a way that MA is very much available to start or perform the available task at a predetermined time and MB is also very much ready to engage the jobs flowing out from MA. Also, the work-piece that are to flow from MA to MB are arranged in an orderly manner and well positioned in billets for easy feed into MA and MB. The pattern of arrangement is done in group such that workpiece can flow from one point to another to ensure that setup time is minimized for all group of jobs. The problem of setup time perfectly optimized using the Johnson algorithm and the authors were satisfied with the obtained result. Xiong et al. (2014) carried out an analysis on issues surrounding scheduling of job for cloud data centres by looking at existing constraints and developed a mathematical model for effective scheduling of job. To solve the problem a hybrid algorithm was developed by breeding Johnson's Rule (JR) and Genetic Algorithm (GA) to create Johnson's rule base genetic algorithm, the coding was perfectly achieved and simulations were used for sensitivity alalysis. The hybrid algorithm gave a better and faster result than the traditional scheduling operation.

MATERIALS AND METHODS
Iterlene bottled water factory in Effurun, Nigeria was investigated. A two-machine system is considered in this research, the filling machine (FM1) and capping machine (CM2. According to Sharma, the extension of Johnson's algorithm is possible where the machine exceeds more than two (2) and it also should satisfy the condition (min ti1 ≥ max ti2, min ti3 ≥ max ti2). The sequence can adopt same procedure but easier by converting a three machine problem to a two machine by combining "Machine 1 and Machine 2" then "Machine 2 and Machine 3". The combination of two machines "Machine 1 and Machine 2" will be considered as one machine "machine 1" and then the combination of "Machine 2 and Machine 3" will also be considered as Machine 2. Then, jobs are proceeded using heuristic Johnson's algorithm. Processed jobs can be many in number. In this research, 5 jobs are processed on two machine system. Johnsons rule is summarized by Sharma (2013) as follows: − jobs are listed along their processing times on each machine in a table with the processing time of the machine on the left hand side column and number of jobs on the right hand side column; − processing time was examined on the available machines. Considering the two machines FM1 and CM2, in each column of the table established, the shortest processing time was noted, that is (t1j, t2j) for all j; − where the shortest processing time is on the first machine (FM1), then select the job in the first available position in the sequence. A situation where the processing time is on the second machine (M2) , then place the job in the last position of the sequence. Break ties arbitrarily; − cross off assigned jobs from the table and assign the next job; − calculate the idle time for machine FM1 and CM2.
Idle time for FM1 = (Total elapsed time) minus (Time required for the last job to be completed on FM1).Idle time for CM2 = (Time at which the first job is completed on FM1) plus (Time the jth job in a sequence commenced on CM2) -(Time when the (j-1)th job in a sequence completed on CM2); − total elapsed time for all jobs = is the time required for the nth job to be completed on CM2.

Process of Jobs on FM1 and CM2 at IISL
Iterlene industrial services limited is a versatile establishment that has its product and services widespread into various sectors, such as petroleum sector, consumer's goods sector and catering and servicing services. This research focused on the application of Johnson's algorithm for effective scheduling of jobs in the system to minimize the total elapsed time between the completion of first and last job on FM1 and CM2 while considering a range of product in bottles of size: 25 cl, 50 cl, 60 cl, 75 cl, 150 cl. The two machines used for performing the filling and capping processing operation in the aforementioned company are shown in Figures 1 and 2.

Filling Process
This is a process of filling different water bottles of different sizes. The filling machine shown in Figure 1 is needed to automatically perform the filling operation.

Capping Process
This is an enclosure process or process of tight sealing the processed and filled bottled container. The capping machine shown in Figure 2 is required to perform the capping operation.
Within the period of investigation at IISL, the researcher considered a process of filling and capping of 100 bottles of different sizes of bottled water. The time spent to fill and cap each bottled water of different sizes on each of the machines is noted putting into consideration 100 bottles of water ranging from 25 cl, 50 cl, 60 cl, 75 cl, and 150 cl sizes respectively. Below is a time table for filling and capping operation at ISSL is shown in Figure 3. Summarizing Table 1 further by taking the average of first and second reading, the final table is presented as Table 2. To effectively apply Johnson algorithm (JA) to solve the underlying problem, it is important to note the basic assumptions of JA: − the processing time of each machine is exactly known and independent of the order in which they are being processed, − time taken by the job moving from one machine to another is negligible, − once a job has begun on a machine it must be completed before another job can begin on that machine, − only one job can be processed on a given machine at a time, − all jobs are known and ready for processing before the period under consideration. Applying Johnson's algorithm we first carry out the sequencing operation using the time data available in Table 2. Following the already established Johnson's Algorithm rule as earlier stated and as proposed by Sharma 2013, the processing time of FM1 and CM2 were examined, the job with shortest processing time was processed first and so on following the sequencing rule, the ideal sequencing is shown in Table 3. Having obtained the optimum sequence as shown in Table 3, scheduling, which involves the allocation of start and finish time to each particular order (sequence) was implemented. This can be seen in Table 4. A well scheduled job helps in the effective computation of the total processing time based on production carried out in terms of the optimum sequence. The total optimum elapsed time obtained is further presented in the Gant chart of Figure 3.

RESULTS AND DISCUSSION
As shown in Table 6, the processing time n jobs are processed on the two machines FM1 and CM2 in the order FM1CM2, each job has to go through FM1 and then to CM2. The no passing rule was fully implemented and the minimum elapsed time, which is the time for filling of the first assigned Job Jb to capping of the last Job Jc is 1019.5 seconds. During this time, the machine rem ained idle for about 177 seconds, that is 1019.5 minus 842.9 seconds, which gives a total of roughly 2.95 mins. The idle time for CM2 is shown in Table 6.
Total time of completion of filling process of jobs: which is approximately equal to 4.17 mins. Also, neglecting idle time, total time of production of jobs is equivalent to 17.00 minutes of processing time minus 4.17 minutes of processing time as shown in Table 4, which equal 12.83 minutes, approximately 13 minutes.

CONCLUSIONS
Johnsons Algorithm has been effectively demonstrated as an effective technique for accurately scheduling and optimizing time. Different sizes of jobs were processed through FM1 and CM2. In the order FM1CM2. The idle time for the production of 500 bottles of water was estimated to be 1020 seconds (17.00 mins.). Idle time for both FM1 and CM2 was further minimized by determining the optimal sequence of the processed jobs using Johnson's algorithm. The solution form the heuristic technique was achieved within 780 seconds (13.00 mins.) approximately. Finally, the optimal sequence of completing the required job was achieved and total elapsed time was minimized between completion of first and last job on FM1 and CM2.

Nomenclature
Symbols i -index representing number of jobs tij -time required for job i on machine j T -Total elapsed time for processing all jobs on machine, it includes idle time if any exist IIJ -Idle time on machine j for the end of job (i-1) to the start of job i Ji -jobs to be moved from one machine to another ai -average processing time for job to pass through the filling machines in seconds bi -average processing time for job to pass through the capping machines in seconds S -Sequencing of Job