87
Business Computing and Operations Research Scheduling Basic Models and Algorithms Prof. Dr. Stefan Bock University of Wuppertal Business Computing and Operations Research

Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

  • Upload
    lamdang

  • View
    233

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research

SchedulingBasic Models and Algorithms

Prof. Dr. Stefan Bock

University of WuppertalBusiness Computing and Operations Research

Page 2: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 2

Selected Literature I

Adams, J.; Balas, E.; Zawack, D.: The Shifting Bottleneck Procedure for Job Shop Scheduling. Management Science, Vol.34, No.3, 1988. Ballou, R.H.: Business Logistics Management. Planning, Organizing , and Controlling the Supply Chain, Upper Saddle River/New Jersey, 1999.Baker, K.R.: Introduction to Sequencing and Scheduling. John Wiley&Sons, New York et al., 1974. (ISBN‐10: 0‐4710‐4555‐1)Bierwirth, C.; Mattfeld, D.C.: Production scheduling and rescheduling with genetic scheduling. Evolutionary Computation 7(1), 1‐18, 1999.Brucker, P.; Knust, S.: Complex Scheduling. Springer, Berlin, 2006.Brucker, P.: Scheduling Algorithms. Springer, Berlin et al., 5th edition, 2007. (ISBN‐10: 3‐5406‐9515‐X)Carlier, J.: The one‐machine sequencing problem. European Journal of Operational Research, 11, pp.42‐47, 1982.Campbell, H.G.; Dudek, R.A.; Smith, M.L.: A Heuristic Algorithm for the n Job m Machine Sequencing Problem. Management Science, Vol.16, No.10,1970.Domschke, W.; Scholl, A.; Voß, S.: Produktionsplanung –Ablauforganisatorische Aspekte (in German). 2nd Edition, Springer, Berlin, 1997. (ISBN‐10: 3‐5406‐3560‐2)

Page 3: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 3

Selected Literature II

Fleischmann, M.: Quantitative Models in Reverse Logistics. 1st edition, Springer, Berlin, 2001. (ISBN‐10: 3‐5404‐1711‐7)Garey, M.R.; Johnson, D.S.: Computers and Intractability – A Guide to the Theory of NP‐Completeness. 1st edition, W.H. Freeman and Company, San Francisco, 1979. (ISBN‐10: 0‐7167‐1045‐5)Glover, F.: Tabu Search: A tutorial. Interfaces, Vol. 20, No. 4, 74‐94, 1990.Glover, F.; Laguna, M.: Tabu Search. Kluwer Acad. Publishers (Springer), 2007. (ISBN‐10: 0‐7923‐8187‐4 )Hansen, P.; Mladenović, N.: Variable neighborhood search: Principles and applications. European Journal of Operational Research, Vol.130(3), 449‐467, 2001.Hansen, P. and Mladenović, N.: A Tutorial on Variable Neighborhood Search. Les Cahiers Du GERAD, HEC Montreal and GERAD, technical report, 2003.Holland, J.: Adaption in Natural and Artificial Systems. University of Michigan Press, Ann Arbor, 1975. (Reprint 1992, ISBN‐10: 0‐2625‐8111‐6 )Kirkpatrick, S.; Gelatt, C. D.; Vecchi, M. P.: Optimization by SimulatedAnnealing. Science, Vol. 220, No. 4598, 671–680, 1983. 

Page 4: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 4

Selected Literature III

Lorenço, H.R.; Martin, O.C.; Stützle, T.: Iterated Local Search. In: Glover, F. and Kochenberger, G.: Handbook of Metaheuristics. Springer, New York, 1stEdition, 2003. (ISBN‐10: 1‐4020‐7263‐5 )Nahmias, S.: Production and Operations Analysis. Sixth edition. Mc GrawHill, 2009. (ISBN‐10: 0‐0712‐6370‐5, Paperback Edition)Nowicki, E.; Smutnicki, C.: A fast Taboo Search Algorithm for the Job Shop Problem. Management Science 42, 797‐813, 1996.Nowicki, E.; Smutnicki, C.: An advanced Tabu Search Algorithm for the Job Shop Problem. Journal of Scheduling 8, 145‐159, 2005.Palmer, D.S.: Sequencing Jobs Through a Multi‐Stage Process in the Minimum Total Time – A Quick Method of Obtaining a Near Optimum. Operational Research Quarterly, Vol.16, No.1, 101‐107, 1965.Pinedo, M.: Scheduling. Theory, Algorithms and Systems. Springer, Berlin, New York, 3rd edition, 2008. (ISBN‐10: 0‐3877‐8934‐0)Tompkins, J.A. et. Al.: Facilities planning. 4th Edition. Wiley, New York et. Al., 2009. (ISBN‐10: 0‐4704‐4404‐5)

Page 5: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 5

Agenda

1. Scheduling and Operations Management2. Basic definitions in Scheduling3. Simple single stage systems4. Single stage sequencing problem with heads and 

tails5. Job Shop Scheduling6. Flow Shop Scheduling7. Real‐time control of Job Shop Systems

Page 6: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 6

1 Scheduling and Operations Management

In this lecture we consider Scheduling problems that are relevant for Operations ManagementTherefore, we give a brief introduction into Operations Management Operations Management

Efficient control, implementation, and execution of complex processes in Production and ServicesI.e., efficient management of operationsOperations strategy (e.g., location of facilities, sizing of facilities, allocation of processes, assignment of workers, service operations) (see among others (Nahmias (2009) pp.3‐18))

Page 7: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 7

General problem fields

Location PlanningLayout PlanningDistributionTransportationLot‐size planningForecastingInventory ManagementProject PlanningScheduling

Page 8: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 8

1.1 Basic definitions

In what follows, we focus on production processes Here, Operations Management pursues an efficient execution of Production and Logistics processesThus, we have to introduce the terms

Production ManagementLogistics Management and Management itself

beforehand…

Page 9: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 9

Management

Institutional perspective:Persons as “carriers” of management activities

Functional perspective:=all activities to do with

planningdeciding and the continuous control 

of the activities and processes in a companyManagement process

Page 10: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 10

Management process

1. Definition of objectives2. Analyzing the current situation

1. Internal2. External

3. Forecasting1. Estimating possible scenarios2. Qualitative Forecasting3. Quantitative Forecasting

4. Problem definition5. Generation of existing alternatives6. Decision making7. Implementation8. Continuous control

Page 11: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 11

Production Management

Production can be characterized as a transformation process

Transformation of the input‐goods in the throughput in order to generate the output‐goodsProduction system is interpreted as an input‐output system

ThroughputInput Output

Page 12: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 12

Different levels of production management

Material resource planning:Management of the supply of the necessary input‐goods(not considered in this lecture)

Production program planning:Planning of the program of the offered output‐goods (not considered in this lecture)

Managing the production process:Management of the throughput, i.e. planning and controlling the respective processes in order to attain the pursued objectives

Page 13: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 13

Transformation processes

Time transformationDifferent time assignment of the respective input‐ and output‐goods

Location transformationDifferent location assignment of the respective input‐and output goods

State transformationDifferent states of the respective input‐ and output goods

Page 14: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 14

Logistics Management – A characterization

…it can be stated that “as far as humankind can recall, the goods that people wanted were not produced where they wanted to consume them or were not accessible when desired to consume them.  Food and other commodities were widely dispersed and were available in abundance only at certain times of the year” (Ballou (1999) p.3) ……..

Page 15: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 15

Logistics Management – A characterization

That means we have different local and temporal circumstances that prevent a “free and unlimited consumption of goods and products”. These problems need a solution that provides local or temporal transformation processesTherefore, the supply chains or ‐networks have to cover so‐called logistical functions

Page 16: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 16

Logistics Management – A characterization

Therefore, in many companies and in the scientific community “logistics methods” yielded a significant increasing interest. In literature, there are often four phases itemized that characterize the development of the understanding of what we call Logistics Management

Page 17: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 17

Historical development

1970‐1979Logistics comprises the basic functions to control the material‐ and commodity flows in the companiesFor example these basic functions deals with the problems of transportation, storage, stock turn activities, consolidation and packagingLogistics has to guarantee an efficient material supply of the production process This phase is also known as the so‐called classical logisticOwing to this, logistics was seen in a pure functional way.

Page 18: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 18

Historical development

1980‐1989In the 80‐ties the “logistics understanding” was extended to a more flow‐oriented perspectiveThis becomes necessary by the integration of the interfaces between the interacting functions of the production, procurement and the distributionTherefore, logistics becomes to a company‐wide coordination instrument.

Page 19: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 19

Historical development

1990‐1999In this phase the “Logistics‐understanding” was extended to a company‐wide optimization of the supply chain by using the current information in the considered flowThis development was enabled by the use of improved information systemsIn addition to this, this phase was characterized by the integration of the functions of research and development and the so‐called reverse logisticsReserve logistics deals with the problems of managing the returned flows induced by different forms of reuse of products and materials (Cf. Fleischmann (2001) p.6).

Page 20: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 20

Reverse logistics

“Reverse logistics is the process of planning, implementing, and controlling the efficient, effective inbound flow and storage of secondary goods and related information opposite to the traditional supply chain direction for the purpose of recovering value or proper disposal”(Fleischmann (2001) p. 6)

Page 21: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 21

Historical development

Since 2000Today, the “Logistics‐understanding” is extended from the consideration of separated companies to an integrated optimization of complete supply‐networksSince the interactive dependencies between different companies increase due to the installation of storage reducing concepts like Just‐in‐Time or Just‐in‐Sequence, this development becomes to a crucial point for the installation of a modern logistics management.

Page 22: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 22

1.2 Selected Tasks of OM

Number of raw materials and/or semi‐finished products to be procured / Time of procurement

Procurement

Number of product items continuously produced without preemption

Lot‐size planning

Generating the sequence of the different tasks at every machineScheduling

Generating the time table for all tasks to be executed in the controlled production processes; Personnel planning 

Time planning

Which processes/tasks are executed in which lot sizes by which production processes?

Work distribution

Which kind of processes are applied to realize the production process? 

Process planning

ProblemsTasks

Page 23: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 23

Interdependencies

…between the decisions of the different task levels complicate the solution process considerably…underline that an isolated optimal solution for one task level can result in a poor constellation for the subsequent levelsTherefore, a comprehensive planning approach has to be generated to deal with the existing interdependencies efficiently

Page 24: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 24

Possible planning concepts I

Successive/iterative planning conceptIn this approach the total problem is divided into smaller much simpler tasksA solution of the original problem is generated iteratively by solving resulting smaller sub‐problems one by one in a predefined sequence

Intention:Reduction of the total complexity. Finding a feasible production plan by the iterative generation of sub‐plans. Finding good constellations for the smaller sub‐problems

Page 25: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 25

Structure of the iterative concept

Real‐time control of the production processProcess 

realization

Sequencing, Work distribution, Computation of the operative timetables (next shift), Personnel employment

Process startReal‐time 

control

Check of capacity availabilitiesOrder release

Execution preparation

Planning of the master time tableMaster capacity requirement planning

Time and resource / capacity planning

Planning the demand of assemblies, components, materials by respecting the respective lead‐times; Lot‐size‐ and order‐planning

Material planning

Planning the production program (job‐oriented, forecast‐oriented), Planning of due dates

Program planning

Planning

Page 26: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 26

Main problems in iterative concepts

Neglecting the dependencies in one directionImprecise assumptions on the higher levels (e.g. cost‐estimations for the throughput in the production program planning level)“Wrong decisions” at the top levels can lead to poor constellations for the subsequent levels

Page 27: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 27

Possible planning concepts II

Simultaneous planning conceptSimultaneous examination of different planning levels in a single model (cf. lot‐size planning and scheduling, production program planning and scheduling)Computation of a combined production plan

Intention:Respecting as much interdependencies as possible during the planning process. Finding elaborated production plans.

Page 28: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 28

Problems in simultaneous planning concepts

Extreme model complexityData of different planning levels are frequently not simultaneously available (cf. weekly production program and currently available capacities)Missing reliability of the presupposed data

Page 29: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 29

Possible planning concepts III

Hierarchical planning conceptDivision of the total planning problem in smaller sub problemsIterative processing of the smaller problems in a predefined sequenceNo isolated consideration of the different sub problems but coordinated solution process by using specific instruments:

Building a solution hierarchy: Top‐down approach. Restrictions from higher levels and feedbacks from lower ones. By receiving feedbacks adjustments on higher levels are possible to integrate existing interdependencies between the different decisionsAggregation: Combining data of lower levels on higher levels (cf. group of products)Rolling approach: Repeated execution of the planning process to respect possible feedbacks and therefore existing interdependencies

Intention:Combining the advantages of iterative and simultaneous planning approaches (Complexity reduction as well as the necessary consideration of interdependencies)

Page 30: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 30

Problems in hierarchical planning concepts

Finding an unambiguous definition of the necessary interfaces between the different planning levels to support an efficient solution processDefining the data exchange between the different planning levels

Currently, the most promising approach in practice

Page 31: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 31

1.3 Objective function

To evaluate the different production plans we have to define a general objective function or a system of objective functionsFor an efficient realization of production processes costs‐ or profit‐oriented definitions of the objective functions are the most appropriate approaches (e.g. chose a production plan that realizes a costs‐minimizing execution of the production process)Examples:

Minimization of manufacturing costsMinimization of storage costsMinimization of costs for tardinessMinimization of costs unproductive machine times

Page 32: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 32

Substitute objectives

But: Frequently, cost consequences of production plans cannot be identified as accurate as necessary. Therefore, we have to use substitute objectives as for example:

Minimization of lead timeMinimization of tardinessMinimization of unproductive machine timesMinimization of unproductive job times

Page 33: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 33

Trade‐offs of objectives

The use of multiple objective functions can result in trade‐offsFor example:

Minimization of inventoryagainstMinimization of tardiness

Page 34: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 34

1.4 Classification of problems

In what follows, we propose specific solution methods that are generated for different problems in order to deal with their specific attributes.  In order to do so, first of all, we have to generate some criteria for classification of production processes

Criterion 1: Output quantitySmall sizedMedium sized Large sized

Page 35: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 35

Small sized output quantities

The production program in the considered planning horizon comprises the production of one or only a few items of a very small variety of product typesSingle‐product productionThe production of the single item can be interpreted as a project, wherefore for this kind of problems project planning instruments are applied 

Page 36: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 36

Medium sized output quantities

The production program in the considered planning horizon comprises the production of a larger number of items of a larger variety of product typesBatch oriented production systemFrequently implemented as Job‐Shop‐ or Flow‐Shop‐Systems depending on the requirements of the production programs

Page 37: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 37

Large sized output quantities

The production program in the considered planning horizon comprises the production of an extreme large number of items of a small or larger variety of product typesThe size of the production program stays large for the next planning periodsMass productionMainly supported by the use of assembly lines

Page 38: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 38

Classification of the problems

Criterion 2: Number of echelons in the                          production system

Single‐echelon production systems Production process comprises only a single production stage. One stage cases with parallel machines are integrated. Problems are often quite simple and can be solved optimally by appropriate algorithms

Multi‐echelon production systemsProduction process comprises more than one production stage with or without parallel machines. These problems are often NP‐hard and cannot be solved optimally in reasonable time. Therefore specific heuristic methods are applied

Page 39: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 39

Criterion 3: Facility layout principles in the departmentsProduct planning departments / Production line departments

Combine all workstations which produce similar products and/or componentsAdditional subdivided according to the characteristics of the products being producedGrouping of all workstations required to produce the product Line shape arrangement

Fixed materials location departmentsUsed in case of large immoveable productsInclude all workstations required to produce the product and the respective staging area

Classification of the problems

Page 40: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 40

Criterion 3: Facility layout principles

Product family departments:Grouping of workstations to produce a “family of components”Combination of these groups of workstation results in a product planning department

Process departments:Combination of workstations performing similar processesE.g. metal cutting departments, gear cutting departments, turning shop departments, paint shop departments …

Page 41: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 41

Procedural guide for departmental planning(cf. Tompkins et al. (2009) p.73)

Combine process related workstations while respecting 

interrelationships

Process departmentNone of the above

Combine all workstations required to produce the respective family of 

products

Product family, product department

Capable of being grouped into families of parts that 

may be produced by a group of workstations

Combine all workstations required to produce the product with the 

staging area 

Fixed material location, product 

department

Large product, awkward to move, sporadic demand

Combine all workstations required to produce the product

Production line, product department

Standardized, large stable demand

Method of combiningDepartmenttype

If the product is…

Page 42: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 42

Volume‐variety layout classification

Variety

Quantity

low

medium

high

low medium high

Fixed materialsLocation Planning

Department

Product Family Planning

Department

Product Planning Department

ProcessPlanning

Department

Product layout

Process layout

Group technology layout

Fixed locationlayout

Page 43: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 43

Finding product families is not always possible

Loss of competenceWorse performance

Job enrichmentMotivation of the employees

Complexity reduction

Product familylayout

Hard to controlLow production ratesHigh variable costs

Large flexibilityReliable

Process layout

Small flexibilityUnreliable

High investments necessaryProblems with large varieties

Error prone

Easier to controlHigh production ratesLow variable costs

Product layout

ConsProsType of layout

Layout types – Pros and Cons

Page 44: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 44

Criterion 4: Degree of collaboration Isolated system planning

Consideration of isolated problemsIntra company collaboration

Generation of problems resulting from planning and controlling of the company wide supply chain

General supply chain managementAdvanced planning problems dealing with the coordination of inter‐company supply chains

Classification of the problems

Page 45: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 45

1.5 Basic instruments

In the following we introduce the following instruments…

GraphsGantt‐DiagramsSpecific Matrices Disjunctive Graph

Page 46: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 46

Graphs

1.5.1 Definition( ) ( )

( )

1Let a finite set and , mappings.

Then we call the tuple , directed graph. The elements of are called vertices or nodes. A vertex is called of if and only

Σ Γ : Σ Ρ Σ Γ : Σ Ρ Σ

Σ

i Σ j Σ

−→ →

Σ Γ

∈ ∈direct successor

( )

( )( ) ( )

( )

1

if . Additionally, a vertex is called of if and only if .

The tuple i,j with and is called an .

Each node i with i is called a

Each n

i Γ ji Σ j Σ

i Γ j

i, j Σ j Γ i

∈ ∈

∈ ∈

Γ =∅

direct predecessor

directed edge

sink

( )1ode i with i is called a −Γ = ∅ source

Page 47: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 47

Paths / Coherence

1.5.2 Definition (path)( )

{ }( )

G in cyclei ndestinatio to i source from path a

n a called is ,ly additional If .

called is :1-n1,2,...,l holds If G.in verticesfor

and 1.4.1 definitionin defined asgraph directed a ,GLet

11

111

1

nn

nll

n

,...,iiii

,...,iiii,...,iIN in

=

Γ∈

∈∀Σ∈∈ΓΣ=

+

1.5.3 Definition (connected graph)( )

( )0 0 n

Let G , a directed graph as defined in definition 1.4.1. Then G is called connected if and only if for each pair of vertices i and j a sequence of vertices exists n 1 with: i i and i j

ani ,...,i

= Σ Γ

≥ = =

{ } ( ) ( )11 1nd 0,..., 1 : or c c c cc n i i i i−+ +∀ ∈ − ∈Γ ∈Γ

Page 48: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 48

Connected graphs…?

Page 49: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 49

Strongly connected graph

1.5.4 Definition (strongly connected graph)A directed graph that has a path from each vertex to every other vertex is called strongly connected graph

1.5.5 Definition (tree)A directed graph G is called a tree if and only if:

There is a single source i in GEach vertex j unequal to i possesses a single definite predecessor in G

Sinks in the tree are called leafs

Page 50: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 50

Weighted directed graph

1.5.6 Definition (network)( )

( ) ( )i,j

Let G , a directed graph as defined in definition 1.4.1 and c a function that assigns a real number c to each existing edge

i,j in G. Then N , , is called a weighted directed graph or network.

c

= Σ Γ

= Σ Γ

( ) ( )

( )1

0 1 1

1

,0

Additionally let p , , a path in N. Then:

l p is the .v v

n n

n

i iv

i i ,..., i i

c+

=

=

=∑ length of the path p

Page 51: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 51

Scheduling problems(cf. Brucker (2007) pp.1)

Suppose that mmachines Mj (j=1,…,M) have to process n jobs Ji (i=1,…,N). A schedule for each job is a sequenced assignment of processes executed on different machines. Schedules can be illustrated by Gantt chartsThese Gantt charts may be machine‐ or job‐oriented

Page 52: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 52

Job data

Each Job Ji consists of a number ni of operations Oi1,…, Oini. Associated with each operation Oij is a processing requirement pij. A release date ri, on which the first operation of Ji becomes available for processing may be specified. Associated with each operation Oij is a set of machines mij {M1,…,MM}. Oij is processed on a machine out of mij

Page 53: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 53

Gantt charts

Gantt charts are used to illustrate specific constellations in production processes idea:

Identification of specific bottlenecksObtaining insights into the problem structure

job or machine

time

processing the job by the machine

start end

Page 54: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 54

Machine‐oriented Gantt chart

Machine

time

J3M3 J2

J3M2 J2 J1

J1 J3 J1 J2M1

Page 55: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 55

Job

time

M3J3

M3

M2

J2 M2

M2M1

M1

M1

M1

J1

Job‐oriented Gantt chart

Page 56: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 56

Machine restrictions

In a Job Shop environment we have precedence relations of the form:

Oi1→Oi2→Oi3→…→Oini

We distinguish problems with and without machine repetition of jobs, i.e., in the case of forbidden repetition we require additionally:

{ } { } ∅=∩≠∈∀∈∀ kijini mmkjOkjNii ,,, :,,...,1,:,...,1

Page 57: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 57

Specific matrices

To define specific restrictions as for instance precedence constraints of the operations per job to be executed specific matrices are appliedAltogether we define three different kinds of matrices:

Matrix of processing times (PT)Machine‐sequence matrix (MS)Job‐sequence matrix (JS)

Note that PT and MS are predefined while the definition of JS is part of the solution finding process

Page 58: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 58

Matrix of processing times

{ } { }

1,1 1,

,1 ,

,

...... ... ...

...

:1,..., : 1,..., : :

Processing time of job j on machine i

n

m m n

i j

p pPT

p p

withj n i m p

⎛ ⎞⎜ ⎟= ⎜ ⎟⎜ ⎟⎝ ⎠

∀ ∈ ∀ ∈

Page 59: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 59

Machine sequence matrix

[ ] [ ]

[ ] [ ]

{ } { } [ ]

1

1

1 ... 1... ... ...

...

: 1,..., : 1,..., : :

The number of the machine that processes the operations of the y-th processing step of the x-th job. We assume that repetition is not

n

n

x

MSM M

with x n y m y

⎛ ⎞⎜ ⎟

= ⎜ ⎟⎜ ⎟⎝ ⎠

∀ ∈ ∀ ∈

allowed and each job is processed on each machine once in a predefined sequence.

Interpretation in this direction

Page 60: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 60

Job sequence matrix

[ ] [ ]

[ ] [ ]

{ } { } [ ]

1 11

1

1 1

The number of the job that is processed at the x-th job on machine y.

m m

y

... nJS ... ... ...

... n

with : x ,...,n : y ,...,m : x :

⎛ ⎞⎜ ⎟

= ⎜ ⎟⎜ ⎟⎝ ⎠

∀ ∈ ∀ ∈

Interpretation in this direction

Page 61: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 61

Example

3 jobs on 2 machines

6 7 6 1 2 29 5 4 2 1 1

The following Job sequence matrix has been generated:1 2 32 1 3

Generate the machine- and job-oriented Gantt.

PT MS

JS

⎛ ⎞ ⎛ ⎞= =⎜ ⎟ ⎜ ⎟⎝ ⎠ ⎝ ⎠

⎛ ⎞= ⎜ ⎟⎝ ⎠

Page 62: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 62

Machine‐oriented Gantt chart

Machine

time

J3M2 J2 J1

J1 J3J2M1

5 10 2015 25

Lead time = 25

Idle times of the respective machine

Page 63: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 63

Job‐oriented Gantt chart

Job

time

J2 M2 M1

M1 M2J1

5 10 2015 25

M2J3 M1

Lead time = 25

Waiting times of the respective job

Page 64: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 64

Gantt charts – Pros and Cons

Pros:Simple instrument, easy to generateVery demonstrative illustrationSupports the search for improvementsIllustrates existing bottlenecks

Cons:Complete regeneration for each modificationNo solution process instrument

Page 65: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 65

Adjacency matrix

Definition 1.5.7

( ) { }( ) ( ) { }

( )

I I

1

Let be a directed graph with 1 .

The matrix 0,1 with:

1 if j i0 otherwise

is called an adjacency matrix of G.

i , j i , j I

i , j

G Σ,Γ Σ ,...,I

A G a

a

×

≤ ≤

= =

= ∈

∈Γ⎧= ⎨⎩

Page 66: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 66

Distance matrix

Definition 1.5.8( ) { }

( ) ( )( )

I I

1

Let be a network with 1 .

The matrix

if j i and i jwith: 0 if i j

otherwise

is called distance matrix of G.

i , j i , j I

i , j

i , j

N Σ,Γ ,c Σ ,...,I

K N k IR

ck

×

≤ ≤

= =

= ∈

∈Γ ≠⎧⎪= =⎨⎪∞⎩

Page 67: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 67

Disjunctive graphs

• Disjunctive graphs are used to define general shop problems. These graphs can map arbitrary feasible solutions to be implemented electronically

• For a given instance of a general job shop problem, the disjunctive graph G=(V,C,D) is defined as follows:

V is the set of nodes defining all operations of each job to be executed. Additionally, there are two special nodes, a source 0 and a sink s belonging to V. While all operation‐nodes have a weight equal to their processing time these additional nodes have the weight 0.C is the set of directed conjunctive arcs. These arcs reflects the precedence relations between the operations. Additionally, there are conjunctive arcs to guarantee that the source is indirect predecessor and the sink is indirect successor of all other operation‐nodes.D is the set of all undirected arcs connecting each pair of operations to be executed on one machine. These operations compete for this machine, wherefore the arcs should determine a possible ordering

Page 68: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 68

An example

⎟⎟⎟

⎜⎜⎜

⎛=

⎟⎟⎟

⎜⎜⎜

⎛=

132423333

;313132221

PTMS

Page 69: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 69

Disjunctive graph

0 s2

1

3

1

1

1

2

2

2

3

3

3

0

0

0

3 3

3

3

2

3

1

2

4

Operation 1 Operation 2 Operation 3

Job

Page 70: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 70

Interpretation

In order to define a schedule, each disjunctive arc has to be orientedQuestion: What about cycles? How do you interpret a schedule comprising a cycle in its oriented disjunctive graph?We will focus on those questions later

Page 71: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 71

1.6 Basics of computational complexity theory

In this lecture we consider different mathematical optimization problemsWe want to generate solutions for our defined models generating production plans of the highest possible qualityBut practical experiments show that some computational problems are easier to solve than othersAdditionally, there are a lot of problems where we assume that finding an optimal solution can be generated only by a total enumeration of all possible constellations

Page 72: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 72

Basics of computational complexity theory

Therefore, in order to get a satisfying answer to our problems, we need some rules or better a complete theory which tells us which kind of problems are hard to solveIn this subsection we want to consider the main attributes of such a theory – the NP‐completeness theoryBasic results of this theory will be referenced throughout this lecture

Page 73: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 73

Basic definitions

A computational problem can be viewed generally as a function h that maps each input x in some given domain to a well defined output h(x) in a given domain

The respective program generates h(x) for each input xTo compare the performance of different procedures rated by the caused computational effort, we define T(n) as the number of necessary steps the algorithm takes at most to compute each output for an input of length n. T is called the run‐time functionof the respective algorithm

Input Outputx h(x)x x

Page 74: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 74

Basic definitions

Note that in most cases a precise definition of T becomes a nearly unsolvable taskTherefore, we concentrate on finding appropriate performance‐ or complexity‐classes a specific run‐time function belongs to. These classes are sets of functionsWe say T(n) belongs to the class O(g(n)) if and only if there exists a constant c>0 and a nonnegative integer n0 such that T(n)≤c.g(n) for all integers n≥n0. 

Page 75: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 75

Important O classes

Simplex algorithmO(bn), b>1exponential

Knapsack problem dynamic programming approach

O(nkml), k,l ≥ 1

pseudo‐polynomial

Sum of n numbersO(n)linear

Sorting n numbers (heap sort)O(n∙log n)linearithmic

Wagner‐Within algorithm (Dynamic Programming SLULSP)

O(n2)quadratic

Matrix multiplication O(n3)O(nk), k≥1polynomial

Binary searchO(log n)logarithmic

Multiplying 2 numbersO(1)constant

Algorithmic exampleO class

Page 76: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 76

( ) ( ) ( )

A problem is called polynomially solvable if there exists a polynomial such that for all possible inputs

of length x , i.e., if there exists such that .k

p T(n) O(p(n)) x

n n k T x O x

= ∈

{ }A problem is called a decision problem if the output range is restricted to yes, no . We may associate with each combinatorial minimizing problem a decision problem by finding a threshold for the cor

k

( )

responding objective function . Consequently, the decision problem is defined as: Does there exists a feasible solution such that .

f

S f S k≤

Definition 1.6.1

Definition 1.6.2

Polynomially solvable / Decision problems

Page 77: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 77

.by denoted is solvablely polynomial are whichproblems decision all of class The

P

Definition 1.6.3 (The class P):

The classes P and NP

. as denoted is for ecertificat valid a is thatverify to algorithm time-polynomial is there and in polynomial a

by bounded is that such , ecertificat a has output yesan x withinput each whereproblems decision all of class The

NPxyx

yy

Definition 1.6.4 (The class NP):

Page 78: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 78

What is NP?

The definition of the class P seems to be obvious. It comprises all problems which can be solved with a reasonable effortIn contrast to this, the definition of the class NP seems to be somehow artificial. Therefore, we give the following additional hints for a better understanding:

The string y can be seen as an arbitrary solution possibly fulfilling the restrictions of our defined problemIf this string y is feasible and fulfills the defined restrictions of the decision problem a “witness for the yes‐answer is found”

Page 79: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 79

What is NP?

Therefore, the class NP consists of all decision problems where for all inputs with a yes‐output an appropriate witness can be generated and certified in polynomial time, e.g., generating the representation of the solution and the corresponding feasibility check only needs polynomial computational timeIn theoretical computer science the model of a non‐deterministic computer system is proposed which is able to guess an arbitrary string. After generating this string the system changes back to a deterministic behavior and checks the feasibility of this computed solution. An input x is accepted (output is yes) by such a system if there is at least one computation started with x and leading to the output yes. Its effort is determined by the number of steps of the fastest accepting computation NP and P separate problems from each other. In P there are the problems we can solve efficiently. But from the problems in NP we only know that the representation of a solution and its feasibility check can be computed in a reasonable amount of time

Page 80: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 80

Conclusions

First of all we can easily derive:

But:One of the major open problems in theoretical computer science or modern mathematics is whether P equals NP or not. It is generally conjectured that this is not the case.In order to provide the strong evidence that P is not equal to NP, a specific theory was generated by different authors, especially by Cook.  This theory is called the NP‐completeness theory and is discussed subsequently

NPP ⊆

Page 81: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 81

The Theory of NP‐completeness

The basic principle in defining the NP‐completeness of a given problem is the method of reduction

For two decision problems S and Q, we say S is reduced to Q if there exists a polynomial‐time computational function g that transforms inputs of S into inputs of Q such that x is a yes‐input for S if and only if g(x) is a yes‐input for QHow we can explain the meaning of this method playing the central role in the Theory of NP‐completeness?

By reducing a problem S to Q we say somehow that if we can solve Q in polynomial time we can solve S in polynomial time, tooThat means Q is at least as hard to solve as S

Page 82: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 82

The Theory of NP‐completeness

To understand this, imagine we have a polynomial time restricted solution algorithm A deciding Q. Then, we can use the computed reduction defined above in order to decide S in the following way:

Input: x (for S)Generate g(x) (Input for Q) in polynomial timeDecide by using A whether g(x) belongs to Q (polynomial effort)Output: yes if g(x) belongs to Q, no otherwise

Consequently, we have designed a polynomial time restricted decision procedure deciding S

Consequence: If Q belongs to P, by knowing S can be reduced to Q, S also belongs to P

Page 83: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 83

NP‐hardness, NP‐completeness

1.6.5 Definition:A problem P is called NP‐hard if all problems belonging to NP can be reduced to P

1.6.6 Definition:A problem P is called NP‐complete if P is NP‐hard and P belongs additionally to NP

Page 84: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 84

Consequences

If any single NP‐complete problem P could be solved in polynomial time all problems in NP can be solved in polynomial time, too. Therefore in this case we can derive P=NP.In order to prove that a specific problem Q is NP‐hard, it is sufficient to show that an arbitrary NP‐hard or NP‐complete problem C can be reduced to Q.But how we can find a starting point of this Theory? What do we need is a first NP‐complete or NP‐hard problemCook has shown that the problem SAT (Satisfiability) which consists of all satisfiable boolean terms in Disjunctive Normalized Form (DNF) is the first NP‐complete problem

Page 85: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 85

The well‐known SAT Problem

Let U be a set of binary variablesA truth assignment for U is a function t:U→{true,false}={T,F}If t(u)=T we say u is true and false otherwiseIf u is a variable in U u and ┐u (not u) are literals, while not u is true if and only if t(u) is false and u is true if and only if t(u) is trueA clause over U is a set of literals which is true if and only if at least one literal belonging to it is trueA boolean term in DNF is a collection of clauses which is true if and only if all clauses are true

Cook has shown that for each non‐deterministic program p and input x a boolean term can be defined which is satisfiable if and only if p accepts x. Therefore all problems in NP can be reduced to SAT.

Page 86: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 86

Dealing with NP‐completeness

Exact proceduresMost efficient ones are constructed as Branch & Bound‐procedures. These algorithms can be characterized as enumeration methods testing all possible constellations while reducing their computational effort by using specific bounding techniques. The computation is tree‐oriented while the generation process can be realized in a depth‐first‐search as well as breadth‐first‐search mannerBut: The application of exact algorithms to NP‐complete problems seems to be reasonable for small sized problems only

Page 87: Scheduling - extras.springer.comextras.springer.com/2012/978-1-4899-9043-3/1_slides_academia/2...Since the interactive dependencies between different ... a single model (cf. lot‐size

Business Computing and Operations Research 87

Dealing with NP‐completeness

HeuristicsIn order to find good but not necessarily optimalsolutions, NP‐complete problems are frequently solvedby • Approximation algorithms• And specific heuristics, e.g.,

• Construction procedures• Improvement procedures

• Simulated Annealing (Kirkpatrick et. Al. (1983))• Tabu Search (Glover (1990); Glover and Laguna (2007))• Genetic Algorithms (Holland (1975))• Iterated Local Search (Lorenço et. Al. (2002))• Variable Neighborhood Search (Hansen and Mladenović (2001) and (2003))

• ….