• No results found

Literature Review

2.4 Conic Mixed Integer Programming

A second-order cone Qm in m dimension is defined as:

Qm = {x = (x1, . . . , xm) ∈ Rm : kx1, x2, . . . , xm−1k ≤ xm} where k.k refers to the standard Euclidean norm.

A second-order conic programming (SOCP) problem is an optimization prob-lem which has a linear objective and a set of second order conic constraints as can be written below:

minx {cTx : kAix − bik ≤ pTix − qi, i = 1, . . . , k}

where Ai are matrices of the same row dimension as x, bi are vectors of the same dimensions as the column dimensions of the matrices Ai, pi are vectors of the same dimension as x and qi are reals. In conic mixed integer programming, a subset of xi’s is assumed to be integer in the problem form given above.

As a part of the progress observed in conic optimization in last two decades, it was shown that SOCP problems can be solved by using polynomial interior point algorithms as given by Nesterov and Nemirovski [65]. It was also shown that convex optimization problems with norms, fractional quadratic functions, hyper-bolic functions can be formulated and solved as SOCP problems. Our analysis in Chapter 6 is strongly motivated by the recent advances in conic programming, in particular, second order conic (or conic quadratic) programming discussed by Ben-Tal and Nemirovski [13] and Alizadeh and Goldfarb [7]. An extensive review on SOCP was given by Alizadeh and Goldfarb [7]. Due to the advances in SOCP theory and its potential use, stable SOCP solvers were provided by the commer-cial optimization software vendors in their recent versions (e.g. ILOG, MOSEK, XPRESS-MP). Availability of efficient SOCP algorithms implemented in branch-and-bound solvers led us to explore the effectiveness of using conic quadratic constraints to formulate the machine-job assignment problem with controllable processing times as a conic mixed-integer program in Chapter 6.

Research on strengthening conic integer programming formulations is so far fairly limited. C¸ ezik and Iyengar [18] describe Chv´atal-Gomory and disjunctive

cuts for conic integer programs. Atamt¨urk and Narayanan [8] give nonlinear conic mixed-integer rounding cuts for conic mixed-integer programming. Whereas these earlier papers develop cuts for general conic mixed-integer programs, in Chapter 6 we exploit the structure of machine-job assignment problem with controllable processing times in order to derive strong conic formulations.

Two recent papers study a similar structure and propose alternative solution approaches to the one given in Chapter 6. Frangioni and Gentile [32] describe an interesting cutting plane procedure based on linear outer approximations of the perspective of convex functions and apply it to the unit commitment problem with separable quadratic cost. G¨unl¨uk et al. [35] give problem-specific linear and nonlinear cuts for a quadratic cost facility location problem. Although in Chapter 6 we apply conic strengthening to the machine-job assignment problem with controllable processing times, our results are sufficiently general so that they can also be applied to other mixed 0-1 optimization problems with separable convex objective, including those studied in these two recent papers. In the next section, we review the rescheduling literature.

2.5 Rescheduling

Rescheduling has received considerable attention in the scheduling literature.

Many different problems, methods and approaches have been presented on rescheduling. Vieira et al. [90] give an extensive discussion on rescheduling the-ory. Aytug et al. [9] discuss the types and effects of uncertainties that can be faced in the execution of schedules. Both studies include a review of the reac-tive/predictive approaches in the scheduling literature. Reactive and predictive scheduling approaches have also been studied in the project scheduling literature.

Herroelen and Leus [44, 45] review approaches for robust project scheduling and reactive project scheduling under uncertainty.

In the literature, different rescheduling environments were considered with fi-nite or infifi-nite set of jobs in different machine environments. Some studies assume

that all information is given (deterministic) and some of them assume information is uncertain (stochastic). Different approaches were considered to solve reschedul-ing problems such as dynamic (on-line) schedulreschedul-ing with dispatchreschedul-ing rules to apply when jobs arrive or disrupting events occur. In dynamic approach, we make deci-sions based on the current state of the manufacturing system. Another strategy is predictive scheduling which aims to generate initial schedules in a way to reduce the negative effects of possible disruptions. Repairing the schedule or generat-ing a completely new schedule from scratch are other alternatives. Reschedulgenerat-ing after each disruption or rescheduling periodically at a given frequency can be the alternative policies for making the decision of when to reschedule. There are different methods of rescheduling like right-shifting, partial rescheduling or com-plete regeneration. Partial rescheduling avoids rescheduling all jobs from scratch since changing the schedule of jobs frequently causes system nervousness.

Leon et al. [59] compare partial scheduling with complete rescheduling and right-shifting methods. Nof and Grant [67] discuss the right-shift and complete rescheduling methods. Kutano˘glu and Sabuncuo˘glu [56] compare several dis-patching rules of rescheduling in a flexible manufacturing environment. A re-cent study by Hall and Potts [42] is about rescheduling due to arrival of new set of jobs to a machine. They consider scheduling cost (lateness, total completion time) and disruption cost (change in jobs’ positions, change in completion times) simultaneously. Minimizing schedule cost subject to a limit on disruption and minimizing schedule cost plus disruption cost models were considered. They give algorithms and complexity analysis for different models. In Chapter 7, we con-sider rescheduling in parallel machines after a breakdown occurs on one of the machines.

In the rescheduling literature, to the best of our knowledge controllable pro-cessing times have not been considered except two studies. The first one is by T¨urkcan [85] in which reactive scheduling decisions on non-identical parallel CNC machines were considered. They consider the sum of earliness and tardiness and the manufacturing costs along with a stability measure defined as the absolute difference between completion times of jobs in the new schedule and the initial

schedule. They provide a heuristic approach to find the new schedule after a dis-ruption such as machine breakdown or new job job arrival. In the second work, Yang [93] considers the arrival of new jobs in a single machine rescheduling prlem where the objective is to minimize the total cost after rescheduling. The ob-jective includes schedule disruption cost which is a function of deviations on start times of the jobs. Another cost term is the time compression cost which comes from the compression on the processing times. The third term in the objective is the cost of scheduling performance measures such as total completion time and weighted tardiness. Proposed solution approach is a heuristic algorithm based on very large scale neighborhood search. Processing time controllability allows alter-native approaches in rescheduling after a disruption occurs, so in Chapter 7, we deal with rescheduling with controllable processing times and present alternative rescheduling problems and solution approaches.

In the literature, there are studies which propose methods to generate robust schedules with respect to disruptions. A predictive approach proposed by Mehta and Uzsoy [63] is including inserted idle times in a job shop schedule so as to reduce the impact of disruptions. They first find a job sequence by using the shifting bottleneck algorithm and then apply a heuristic approach to insert idle times into the schedule. Similarly O’Donovan et al. [70] describe methods for constructing robust schedules with respect to machine breakdown for a single machine environment. The objective is to minimize the expected deviation in completion times due to the breakdown. Their experiments show that inserted idle time approach improve schedule robustness with little impact on other per-formance measures. For the maximum tardiness problem, Jensen [52] proposed minimizing maximum lateness instead, so that achieved schedule has improved rescheduling performance due to the idle time left at the end of the schedule. In a recent work, Leus and Herroelen [60] considered minimizing expected weighted deviation between actual and planned job starting times in a single machine scheduling problem with a common deadline for all jobs. They find the optimal job sequence and the optimal length of idle time following each job in the sched-ule. However, if we insert idle times in a schedule but no disruption occurs, then the jobs will finish too early and machining capacity will not be fully-utilized.

In case of scheduling with controllable processing times, if a disruption occurs then we have the flexibility to repair the schedule by compressing the processing times of remaining jobs. Inserting idle times implies additional compression on the processing times of the jobs and hence requires higher manufacturing cost. In Chapter 7 we propose rescheduling approaches which repair a parallel machine schedule after a machine breakdown by assigning new processing times to the jobs and making new machine-job assignment decisions.

Match-up scheduling is a rescheduling approach which aims to catch up the preschedule within a certain time after disruption occurs. Match-up scheduling examples in the literature are given by Bean et al. [12] and Akt¨urk and G¨org¨ul¨u [2]. Those two studies propose heuristic approaches to find match-up times.

Match-up scheduling studies in the literature assume planned idle time periods in preschedules so that the disruption can be absorbed. With controllable processing times, even if the preschedule is a non-delay schedule, i.e. no idle time exists in the schedule, we can still reschedule to match up with the preschedule. It may be possible to match up soon after the disruption occurs by compressing the jobs which immediately succeed the breakdown. However, catching up sooner implies incurring more compression cost. Therefore, when we consider the match-up time and the cost objectives at the same time, it is critical to make appropriate rescheduling and processing time decisions. In Chapter 7, we present match-up scheduling problems with controllable processing times which demonstrate the trade off between match-up time and manufacturing cost objectives. We give exact and efficient solution approaches for the considered problems.

Azizo˘glu and Alag¨oz [10] study a rescheduling problem on parallel machines where an unavailability period occurs on one of the machines. They consider the total flow time objective and a stability measure of number of jobs reassigned to another machine than its original machine in the preschedule. They show that efficient solution set for the considered objectives can be generated in polyno-mial time. Curry and Peters [24] consider a dynamic scheduling environment on parallel machines where the arrival of new jobs to the system is handled.

They observed that by considering a machine reassignment cost in the scheduling

problem in addition to the scheduling performance measure of stepwise increas-ing tardiness cost, solutions with few reassignments could be achieved without a statistically significant change in tardiness cost. Lee et al. [58] studied a two-machine scheduling environment where they penalized two-machine-job reassignments made after a disruption as transportation cost in their model. They considered transportation cost with different scheduling performance measures and changes in completion times of jobs. Number of reassignments is an important stability measure, which we have not considered in our study, but in Chapter 7 our models and heuristic algorithm can be easily extended to include a limit on number of reassigned jobs. In the next chapter, we discuss the total manufacturing cost and total weighted completion time objectives in a single machine environment.

Time/Cost Trade-offs in Single