Discrete Dynamics in Nature and Society

Volume 2015, Article ID 350308, 12 pages

http://dx.doi.org/10.1155/2015/350308

## A Study on the Enhanced Best Performance Algorithm for the Just-in-Time Scheduling Problem

School of Mathematics, Statistics and Computer Science, University of KwaZulu-Natal, University Road, Westville, Private Bag X 54001, Durban 4000, South Africa

Received 4 November 2014; Accepted 12 January 2015

Academic Editor: Peng Liu

Copyright © 2015 Sivashan Chetty and Aderemi O. Adewumi. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

The Just-In-Time (JIT) scheduling problem is an important subject of study. It essentially constitutes the problem of scheduling critical business resources in an attempt to optimize given business objectives. This problem is NP-Hard in nature, hence requiring efficient solution techniques. To solve the JIT scheduling problem presented in this study, a new local search metaheuristic algorithm, namely, the enhanced Best Performance Algorithm (eBPA), is introduced. This is part of the initial study of the algorithm for scheduling problems. The current problem setting is the allocation of a large number of jobs required to be scheduled on multiple and identical machines which run in parallel. The due date of a job is characterized by a window frame of time, rather than a specific point in time. The performance of the eBPA is compared against Tabu Search (TS) and Simulated Annealing (SA). SA and TS are well-known local search metaheuristic algorithms. The results show the potential of the eBPA as a metaheuristic algorithm.

#### 1. Introduction

Scheduling problems altogether constitute a large and important field of study. It involves the allocation of production (or operational) resources with the intent of optimizing business objectives. Business objectives may include reduced operational costs, reduced production time, increased customer satisfaction, and increased profits in optimizing production processes or service delivery. Several categorizations of scheduling problems are found in the literature [1, 2]. However, of particular interest in this study is the problem of Just-in-Time (JIT) scheduling [3, 4].

JIT scheduling, as described by Taiichi Ohno (commonly referred to as the father of JIT) is, “in a flow process, the right parts needed in assembly reach the assembly line at the time they are needed and only in the amount needed” [5]. Ohno perfected JIT principles at Toyota manufacturing plants in Japan while being vice president of manufacturing. At the time, Toyota created high quality vehicles at relatively low costs, compared to its competitors. This was in spite of the disadvantage of having a lack of natural resources in the country. The success of implementing JIT techniques in manufacturing gave Toyota a prominent position within the automobile sector.

Observing Toyota’s success, many organizations on a global scale have adopted and implemented JIT techniques with relative successes. Proper implementations of JIT techniques have resulted in documentation emphasizing improved product qualities, improved service deliveries, improved customer satisfaction, improved employer and employee relations, decreased production costs, reduced levels of inventory, and increased profit turnover [6]. Organizations have further benefited in remaining competitive within industry, in offering products and/or services without negotiating quality at competitive costs. These factors constitute important business objectives, as organizations remain competitive on the basis of cost, quality, and service delivery [7].

The JIT scheduling problem is largely studied in the sectors of engineering, manufacturing, and service delivery [1]. The objective is the optimized delivery of business resources that meet demand, rather than manufacturing or supplying less or in surplus. JIT scheduling objectives are summarized as follows [8].(1)Competitiveness: companies remain competitive in offering high quality products and services at relatively low costs in meeting demands.(2)Efficient production processes: the objective is greater productivity in maintaining quality and minimizing costs.(3)Improved quality of products: production of smaller quantities allow for better assessment checks. This results in improved product quality.(4)Minimizing wastage: this will reduce costs and save time and effort in business.(5)Reduced inventory: this will minimize investments as capital will not be held (or lost) in holding excess inventory.(6)Efficient space utilization: fewer inventories mean more space available.(7)Improved customer satisfaction: the on-time delivery of quality products and services at competitive rates earn customer satisfaction.(8)Improved supplier relations: supplier relations get strengthened in having organized delivery of goods and services as required.The JIT scheduling problems is -Hard [3, 9, 10]. This study investigates the JIT scheduling problem and determines solutions using metaheuristic techniques. The study proposes an enhanced Best Performance Algorithm (eBPA) which is an enhancement of our recently introduced Best Performance Algorithms (BPA) in literature [11–13]. eBPA, though similar to BPA, improves on the initial implementation of the latter to enhance its efficiency and execution time. Further details on the initial BPA algorithm can be found in Chetty and Adewumi [11, 12]. This study compares eBPA with two other standard metaheuristics to ascertain its efficiency in handling this JIT scheduling problem. The objective of this study is therefore to test the potential of eBPA algorithm in comparing its solutions against well-known local search metaheuristic algorithms for an -Hard problem. This study constitutes initial research on the eBPA algorithm for scheduling problems.

Previous studies on JIT scheduling problems have investigated both the single and multiple machine scenarios. Many optimization techniques have been investigated in determining solutions. They include both the exact and heuristic algorithms. Ronconi and Kawamura [14] investigated a single machine JIT scheduling problem with restrictive common due dates. The objective was the minimization of the earliness and tardiness penalties. The study proposed a Branch and Bound algorithm which used lower bounds and pruning rules in exploiting properties of the problem in determining solutions. The algorithm was investigated using 280 jobs. These jobs were characterized by different due dates. The proposed algorithm showed to be effective in outperforming the CPLEX optimization software. Monette et al. [15] studied a JIT job-shop scheduling problem. Jobs were characterized by earliness and tardiness penalties with respect to their due dates. The objective was the minimization of the earliness and tardiness penalties. The study presented a constrained programming algorithm. This was a filtering algorithm based on machine relaxation. The study investigated a large range of benchmark test instances. 72 problems were studied in total. The algorithm showed to be very effective in determining 29 of the best-known solutions from the problems studied. Dereniowski and Kubiak [16] studied a JIT multislot scheduling problem. In this problem, processing time was divided into time slots rather than a single due date for the jobs. The intent of the study was to determine a minimization of the schedule makespan. The study presented algorithms for both the single and parallel machine problem instances.

Süer et al. [17] studied a single machine scheduling problem with nonzero ready times. Jobs were assumed to have arrived at different times, with the arrival times being known in advance. The objective was determining the job sequences in minimizing tardiness. For the problem setting, preemption was not allowed. The study investigated the Genetic Algorithm (GA) and compared its solutions to known optimal solutions for small to large size problems. Results showed that GA determined optimal solutions for smaller instances and near-optimal solutions for larger instances. van Laarhoven et al. [18] investigated the Simulated Annealing (SA) algorithm in finding the minimum makespan in large instances of job-shop scheduling problems. The results showed that SA found shorter makespan than tailored deterministic algorithms, at the expense of greater execution times. The conclusion was that the disadvantage of expensive computation times was compensated by the simplicity of the algorithm and the higher quality solutions determined. Sidhoum et al. [19] studied a JIT scheduling problem in a parallel machine environment. Jobs were characterized by distinct due dates and earliness and tardiness penalties. The research was motivated due to the difficulty of determining lower bounds for JIT scheduling problems in single and parallel machine environments. A simple heuristic algorithm was presented. Results showed the differences between the lower and upper bound values for the single and parallel machine environments being around 1% for the problem instances investigated. McMullen [20] investigated Tabu Search to a mix-model production scheduling problem at an assembly line. The objective of the algorithm was to best determine an assembly schedule based on the part-usage rates and the number of setups involved in the process. The problem objective was to determine an assembly sequence that optimized the assembly process. Results showed that the multiple-objective problem of minimizing part-usage and setup time could be valuable from a managerial perspective. Naso et al. [21] investigated a hybridized algorithm constructed using GA and a constructive heuristic for a JIT delivery problem in supply chain management. The problem setting is that of a ready-mixed concrete delivery service, in trying to best coordinate the supply of concrete from producers to customer’s on-time. Apart from problem complexity, strict time constraints had forbid early or tardy delivery of ready-mixed concrete. The problems objective was scheduled delivery that maximized profit, in minimizing risk. The case study presented used actual industrial data. The hybridized algorithm was compared to that of four other constructive heuristics. Results showed that the hybridized algorithm determined superior solutions to that of the constructive heuristics.

The rest of this paper is structured as follows. Section 2 describes and presents the JIT scheduling problem studied. Section 3 describes previous research work in this field. Section 4 describes and presents the local search metaheuristic algorithms. Section 4 presents and discusses the experimental results obtained. Finally, Section 5 draws conclusions and outlines possible future work.

#### 2. Problem Description and Mathematical Formulation

The allocations of company resources to meet business demands are critical to the success of an organization. Therefore, in JIT problem formulation, the untimely scheduling of business resources that miss expected due dates is accompanied by penalties factors called earliness and tardiness penalties. An earliness penalty is incurred when a job (which implies a service rendered or an item being produced) is scheduled in business before its expected time. The implication of an earliness penalty relates to the cost of holding inventory before its expected time, as an example. Also, a tardiness penalty is incurred when a job is expected to complete after its expected due date. This could imply, for example, customer dissatisfaction.

The due date of a job refers to either a specific point in time or an interval specified by a window frame of time. The jobs due date is important. It relates to the demand of products or services at predetermined times. The inability of organizations to provide on-time delivery of products and/or services sets the stage for competitiveness in industry.

In a perfect scheduling environment resources will be made available as required. Realistically, however, the limited availability of resources and the differences in demands result in resources becoming available before or after expected due dates. Hence, the problem with JIT scheduling relates to either minimizing the earliness penalty, minimizing the tardiness penalty, or both in scheduling resources [1]. Optimizing a JIT schedule is difficult due to the conflicting objectives.

Most JIT investigations have studied the scheduling of jobs on a single machine where the due dates are specific points in time. This research studies a JIT problem of scheduling jobs on parallel machines where the due dates are window frames of time. The single machine scenario is easier to model and solve. Although in industry the possibility of bottlenecking exists. Surprisingly, far fewer papers have surfaced on JIT problems of scheduling jobs on multiple and parallel machines.

The mathematical model presented in this study is that given in Adamu and Abass [22]. This study takes the opportunity of correcting the original mathematical formulation by removing irrelevant constraints and reformulating the objective function in terms of the schedule. Also, although the formulation is a maximization model, the original study presented solutions for a minimization model. These inconsistencies present the opportunity for this problem to be restudied.

In the mathematical formulation given below, the left and right hand sides of a window interval of time represent the earliest start time (where the job becomes available for processing) and the latest due date (where the job must be completed). The jobs are scheduled starting from time zero. The problems objective is the maximization of the total weight of all on-time jobs. is the weight of a job. This relates to the importance of job being delivered on-time. This problem assumes equivalent earliness and tardiness penalties. These penalty factors are not considered in the objective function. The mathematical formulation is as follows.

Indices:(i): indicative of each machine, that is, .(ii): indicative of each job, that is, .

Parameters:(i): representing the left hand side of the due window of job . This is the earliest start time of job .(ii): representing the right hand side of the due window of job . This is the expected completion time of job .(iii): representing the processing time of each job .(iv): representing the actual start time of job on machine .(v): given a schedule , represents the completion time of job on machine , that is, . Hence, job is said to be early if , tardy if else on-time if .(vi): weight of job .

Variables:(i): representative if job is allocated on machine , in schedule .

Objective function: Maximize Subject to constraints: Equation 1 represents the total weight of all on-time jobs. Equation 2 ensures that if job is scheduled on machine it will start and complete processing between its earliest start time and latest finishing time . Equation 3 ensures that job will be assigned to at most one machine . Equation 4 represents a job being either on-time, early or tardy, with 1 representing on-time and 0 otherwise.

The problem assumptions are as follows.(1)Setup time is included in processing time. Hence, preemption is not allowed. When job is completed, there is no delay in starting job on machine .(2)There is no delay in machine processing. When job starts, it is expected to be completed as represented by processing time .(3)Only one job can be processed at any given time on machine .

#### 3. Methodology

This study investigates three local search metaheuristic algorithms to the problem of JIT scheduling presented in Section 2. Meta (loosely speaking) refers to an algorithm beyond or higher level to that of a simple heuristic. Heuristic means “to find” or to “discover by trial and error” [23]. There are no formal definitions for what a heuristic and metaheuristic algorithm is in computational studies. However, the trend is to classify stochastic algorithms based on randomization into these categories. The metaheuristic algorithms investigated include eBPA, Tabu Search (TS), and Simulated Annealing (SA).

TS and SA are well-known local search metaheuristic algorithms. eBPA, on the other hand, is an enhancement of the Best Performance Algorithm (BPA) previously introduced in literature by Chetty and Adewumi [11, 12]. The improvement lies essentially in the implementation aspect of the algorithm. This study aims to present the potentials of eBPA in solving an NP-Hard problem. eBPA improves on both the efficiency and execution time performances of BPA, in having a simpler and completely new design. For this reason, standard implementations of all algorithms will be compared in determining solutions for the JIT scheduling problem studied. The presentation of the eBPA and the documentation of its potential are the primary objective of this study. The algorithms are presented and explained in the subsections below.

##### 3.1. Enhanced Best Performance Algorithm

The eBPA is modeled on the analogy of professional athletes desiring to improve on their best registered performances within competitive environments. Numerous sporting disciplines exist yet the principles are the same in that professional athletes desire to perfect their levels of skills in order to beat their personal best performances and that of their competitors. Before entering professional, all athletes start off with a simple love for the sport and a desire to succeed. Thereafter, with constant practice and strategy their skill levels increase. They learn from trial and error techniques and improve on their strengths and weaknesses. Knowledge is also acquired in learning from mentors and/or other athletes. In becoming professional, the ultimate goal of an athlete is to develop a level of skill that would cause the athlete to give off a performance that would surpass their personal best registered performances.

Apart from coaching, an effective strategy could be to maintain an archive of a limited number of the athletes’ best registered performances. This could be in the form of recordings. Recordings contain both the techniques used and the result determined in the delivery of performances. Athletes can use this information to identify strengths and weaknesses in the delivery of performances. With this knowledge, weaknesses can be improved upon or new techniques can be learned. In making appropriate changes and with sufficient practice, refined skills can be achieved. The objective is for the athlete to develop a level of skill that would allow for their best performance to be superseded.

Technique (or skill) in this context refers to a solution determined by an optimization algorithm. The result of executing a performance refers to the result of evaluating the objective function using this solution. Therefore, there are notable similarities between an athlete improving on skill level and an optimization algorithm determining improved solutions. Based on this analogy, the enhanced Best Performance Algorithm (eBPA) has been modeled. There are five guiding rules governing the eBPA. They include the following.(1)An athlete maintains an archive of recordings for a limited number of their best performances delivered during competitive environments.(2)An athlete reviews a performance from this archive and makes appropriate changes to the technique used with the hope of executing the new technique in trying to determine a performance that would at least meet the minimum criterion of being accepted into the archive.(3)If an improved performance is determined, the archive is updated in replacing the recording of the worst performance with the recording of the new.(4)The new recording is then chosen as the next recording to be reviewed by the athlete (given a certain probability).(5)Only performances with unique techniques are allowed to be registered in the list.To artificially simulate this analogy, the eBPA maintains a limited number of the best solutions found in a list called the Performance List (). Here, solutions refer to recordings stored in an archive. Solution attributes (i.e., the design variables of a solution) distinguish one solution from the next. Therefore, in allowing solutions to be inserted into the , only solutions that are unique must be considered. Disallowing duplicate solutions prevents the algorithm from working with solutions previously visited. In the , the best and worst solutions (determined by their solution qualities or results) must be indexed. Another solution from the list that is considered to be worked with must also be indexed. This is called the working solution.

To try and determine improved solutions, over solutions already registered in the , local search changes are applied to the solution indexed as the working solution. The new solution determined in applying the change is referred to as an update of the working solution. If the result of this solution at least improves on the result of the worst solution or is equivalent in solution quality but unique in their design variables, then the is updated in replacing the worst solution with that of the new. The new solution is then indexed as the working solution. If this solution result improves on the best solution result (i.e., indexed by the best index) then it is also indexed as the new best solution. The worst solution would also need to be redetermined and reindexed upon an update of the being made. If an update of the is not achieved, then local search changes will continue to be applied to the solution indexed as the working solution. However, given a certain probability, the worked with solution for the next iteration could also be the solution that had been updated in the current iteration (i.e., the updated working solution). The possibility of the algorithm working with the updated working solution, for the next iteration, represents the willingness of an athlete to work with a new but disimproved technique. Working with disimproved solutions could possibly lead to improved solutions being found.

These strategies represent eBPA’s ability to work with both improved and disimproved solutions. A solution is considered improved if the updated working solution result at least improves on the working solution result. A solution is considered disimproved in two ways. Firstly, if the result of the updated working solution causes the to be updated without the actual working solution result in the being improved upon. This means that a better solution is found, which although being a disimproved solution to the current working solution still meets the minimum requirements of being accepted into the . Secondly, a disimproved solution is accepted to be worked with if the updated working solution does not cause an update of the and if the probability factor is satisfied. This will cause the updated working solution to be the worked with solution in the next iteration. Accepting disimproved solutions is eBPA’s strategy of escaping local entrapment and cycling.

To further constrain (or destrain) the acceptance into the , the eBPA allows for the to be dynamically resized. Large sizes have less restrictive acceptance criterion compared to smaller sizes. Reason being the quality of the worst solution is worse off. Therefore, strategically reducing the size is used to further intensify the search in promising neighborhood regions. Similarly, strategically increasing the size can be used to escape local entrapment.

After the termination criterion is satisfied, the solution indexed by the best index will be returned as the best solution found. This solution is representative of the best technique determined by an athlete. The eBPA is shown in Algorithm 1.