You are on page 1of 24

OPTIMIZATION MODELS Prof. Dr.

Dirk Sackmann

COURSE DESCRIPTION:

This course will provide students with knowledge related to formulate and use mathematical models
to find the optimal solution to support decision making in business operations. The course introduces
optimization models and techniques with typical problems arising in the industry, including linear
programming, transportation models, network models and integer models.

The module introduces optimization models in a deterministic environment, from which the optimal
model can be used to make decisions in daily life. After completing the module, students will be able
to identify the characteristics of problems, identify appropriate models, and algorithms to solve
business decision problems.

LECTURER:

Prof. Sackmann holds a degree in Industrial Engineering from the Technical University of Berlin and a
Ph.D. from the Julius Maximilians University of Würzburg. Previous positions include lecturer at the
Ostfalia University of Applied Sciences and consulting and management positions in automotive
logistics industry. Since 2008 he is Professor for Business Administration, in particular Operations and
Supply Chain Management at Merseburg University of Applied Sciences.

1
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

CONTENTS:

1 Introduction to Operations research

2 Linear Programming and extensions

2.1 General characteristics of linear programs

2.2 Simplex method

2.3 Two-Phase method

2.4 Special cases in the Simplex method

2.5 Interpretation of Simplex optimum tableaus

2.6 Sensitivity analysis

2.7 Integer and mixed integer programming

2.8 Examples and applications

3 Graph theory

3.1 General characteristics of graphs

3.2 Shortest path algorithms

3.3 Minimum spanning tree algorithms

4 Applications of Operations research in Operations and Supply Chain Management

4.1 Travelling salesman problem (TSP)

4.2 Vehicle routing planning (VRP)

4.3 Covering location problems

4.4 Assignment problems

LITERATURE:

Dantzig, G.B.: Linear Programming and Extensions, Rand Corporation, R-366-PR, 1963

Hillier, F.S., Lieberman, G.J.: Introduction to Operations Research, 10th ed., New York, 2015

Taha, H.A.: Operations Research: An Introduction, 8th ed., Upper Saddle River, 2007

Wilson, R.J.: Introduction to Graph Theory, 4th ed., London, 1996

2
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

1 Introduction to Operations research

Operations research is a discipline that is closely related to the solution of business problems. We
can look at these situations as decision-making problems whose solution requires answering three
questions:

1. What are the decision alternatives?

2. Under what restrictions is the decision made?

3. What is an appropriate objective criterion for evaluating the alternatives?

Figure 1: Business problems, OR problems, modeling and algorithms

The Operations research process begins by carefully observing and formulating the problem,
including gathering all relevant data. This procedure includes description of the decision alternatives,
determination of the objective of the study, and specification of the limitations under which the
modeled system operates. The next step is to construct a scientific (typically mathematical) model
that attempts to abstract the essence of the real problem. It is then hypothesized that this model is a
sufficiently precise representation of the essential features of the situation that the conclusions
(solutions) obtained from the model are also valid for the real problem. A peculiarity of most OR
techniques is that solutions are not generally obtained in (formulalike) closed forms. Instead, they
are determined by algorithms. An algorithm provides fixed computational rules that are applied
repetitively to the problem, with each repetition (called iteration) moving the solution closer to the
optimum. Next, suitable experiments are conducted to test this hypothesis, modify it as needed, and
eventually verify some form of the hypothesis. This step is frequently referred to as model validation.

One way of summarizing the phases of an OR study is the following:

1. Definition of the problem.

2. Construction of the model.

3. Solution of the model.

4. Validation of the model.

5. Implementation of the solution.

3
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

When a OR study of a new problem is undertaken, it is usually necessary to use a team approach.

Figure 2: Conducting an OR study

Mathematical models are also idealized representations, but they are expressed in terms of
mathematical symbols and expressions. The mathematical model of a business problem is the system
of equations and related mathematical expressions that describe the essence of the problem.

Thus, if there are n related quantifiable decisions to be made, they are represented as decision
variables (say, x1, x2,..., xn) whose respective values are to be determined. The appropriate measure
of performance (e.g., profit) is then expressed as a mathematical function of these decision variables
(for example, z = 3x1 + 2x2 + . . . + 5xn). This function is called the objective function. Any restrictions
on the values that can be assigned to these decision variables are also expressed mathematically,
typically by means of inequalities or equations (for example, x1 + 3x1x2 + 2x2 <= 10). Such
mathematical expressions for the restrictions often are called constraints. The constants (namely, the
coefficients and righthand sides) in the constraints and the objective function are called the
parameters of the model. The mathematical model might then say that the problem is to choose the
values of the decision variables so as to maximize the objective function, subject to the specified
constraints. Such a model, and minor variations of it, typifies the models used in OR.

After a mathematical model is formulated for the problem under consideration, the next phase in an
OR study is to develop a procedure (usually a computer-based procedure) for deriving solutions to
the problem from this model. You might think that this must be the major part of the study, but
actually it is not in most cases. Sometimes, in fact, it is a relatively simple step, in which one of the
standard algorithms (systematic solution procedures) of OR is applied on a computer by using one of
a number of readily available software packages.

An additional characteristic is that OR frequently attempts to search for a best solution (referred to
as an optimal solution) for the model that represents the problem under consideration. (We say a
best instead of the best solution because multiple solutions may be tied as best.) Rather than simply
improving the status quo, the goal is to identify a best possible course of action.

A solution of the mode is feasible if it satisfies all the constraints. It is optimal if, in addition to being
feasible, it yields the best (maximum or minimum) value of the objective function.

4
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

A common theme in OR is the search for an optimal, or best, solution. OR teams occasionally use
only heuristic procedures (i.e., intuitively designed procedures that do not guarantee an optimal
solution) to find a good suboptimal solution.

Figure 3: Global and local optima of an objective function

This is most often the case when the time or cost required to find an optimal solution for an
adequate model of the problem would be very large. In recent years, great progress has been made
in developing efficient and effective metaheuristics that provide both a general structure and
strategy guidelines for designing a specific heuristic procedure to fit a particular kind of problem.

2 Linear Programming and extensions

This chapter concentrates on model formulation and computations in linear programming (LP). The
adjective linear means that all the mathematical functions in this model are required to be linear
functions. Each linear program consists of an objective function, restrictions and nonnegative
decision variables.

Briefly, the most common type of application involves the general problem of allocating limited
resources among competing activities in a best possible (i.e., optimal) way. More precisely, this
problem involves selecting the level of certain activities that compete for scarce resources that are
necessary to perform those activities. The choice of activity levels then dictates how much of each
resource will be consumed by each activity.

5
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

Figure 4: George B. Dantzig

2.1 General characteristics of linear programs

Let us look at the following linear program:

max z  = 3x1  5 x 2
1x1  2 x 2  10
1x1  1x 2 7
3x1  18
x1 , x 2  0

From the theory of linear programming we know the following:

1 The space of feasible solution in linear programming is a a convex set and a convex set has corner
points.

2 The optimum LP solution is always associated with at least one corner point of the solution space.

3 A corner point is represented by a basic solution.

Standard form:

A linear program (LP) that appears in a particular form where the objective function is to be
minimized, all constraints are equations and all variables are nonnegative is said to be in standard
form. Before we use an LP algorithm to solve a linear program, the problem must be written in
standard form.

Basic solution:

n - m variables should be set equal to zero to target a specific corner point. The zero n – m variables
are known as nonbasic variables. The remaining m variables are called basic variables and their
solution (obtained by solving the m equations) is referred to as basic solution. Column vectors of
basic variables are linearly indepent.

6
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

2.2 Simplex method

Simplex method:

The simplex method alleviates the computational burden dramatically by investigating only a fraction
of all possible basic feasible solutions (corner points) of the solution space. In essence, the simplex
method utilizes an intelligent search procedure that locates the optimum corner point in an efficient
manner.

The objective function shows that an increase in either xj above their current zero value will improve
the value of z. The design of the simplex method calls for increasing one variable at a time, with the
selected variable being the one with the largest rate of improvement in z.

Optimality condition (determination of the entering variable):

The entering variable will correspond to the variable with the most negative coefficient in the
objective equation. This rule is referred to as the optimality condition.

Feasibility condition (determination of the leaving variable):

The mechanics of determining the leaving variable from the simplex tableau calls for computing the
nonnegative ratios of the right-hand side of the equations (Solution column) to the corresponding
constraint coefficients under the entering variable. The leaving variable is the basic variable
associated with the smallest nonnegative ratio. The rule associated with the ratio computations is
referred to as the feasibility condition because it guarantees the feasibility of the new solution.

Optimality criteria:

The optimum is reached at the iteration where all the Z-row coefficients of the non-basic variables
are non-negative.

The swapping process is based on the Gauss-Jordan row operations. It identifies the entering variable
column as the pivot column and the leaving variable row as the pivot row. The intersection of the
pivot column and the pivot row is called the pivot element.

The steps of the simplex method are

Step 1. Determine a starting basic feasible solution.

Step 2. Select an entering variable using the optimality condition. Stop if there is no

entering variable; the last solution is optimal. Else, go to step 3.

Step 3. Select a leaving variable using the feasibility condition.

Step 4. Determine the new basic solution by using the appropriate Gauss-Jordan

computations. Go to step 2.

7
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

2.3 Two-Phase method

To deal with LP where there are not only <= inequalities the simplex method is not an adequate
algorithm. The Two-Phase method deals with LP models where at least one = or >= inequality
appears.

Phase I attempts to find a starting basic feasible solution, and, if one is found, Phase II is invoked to
solve the original problem.

Phase I. Put the problem in equation form, and add necessary artificial variables to the constraints to
secure a starting basic solution. Next, find a basic solution of the resulting equations that, minimizes
the sum of the artificial variables. If the minimum value of the sum is positive, the LP problem has no
feasible solution, which ends the process (recall that a positive artificial variable signifies that an
original constraint is not satisfied). Otherwise, proceed to Phase II.

Phase II. Use the feasible solution from Phase I as a starting basic feasible solution for the original
problem.

min g  2 x1  1x 2
3x1  1x 2  3
4 x1  3x 2  6
1x1  2 x 2  3
x1 , x 2  0

2.4 Special cases in the Simplex method

1. Degeneracy

In the application of the feasibility condition of the simplex method, a tie for the minimum ratio may
occur and can be broken arbitrarily. When this happens, at least one basic variable will be zero in the
next iteration and the new solution is said to be degenerate. From the practical standpoint the model
has at least one redundant constraint.

3 x1  5 x 2 
 max

1 x1  2 x 2  10
1 x1  1 x 2  7
3 x1  0 x 2  12
x1 , x 2  0

2. Alternative optima

When the objective function is parallel to a nonredundant binding constraint (i.e., a constraint that is
satisfied as an equation at the optimal solution), the objective function can assume the same optimal
value at more than one solution point, thus giving rise to alternative optima. In practice, alternative
optima are useful because we can choose from many solutions without experiencing deterioration in
the objective value.

2 x1  4 x 2 
 max

8
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

1 x1  2 x 2  10
1 x1  1 x 2  7
3 x1  0 x 2  18
x1 , x 2  0

3. Unbounded solutions

In some LP models, the values of the variables may be increased indefinitely without
violating any of the constraints-meaning that the solution space is unbounded in at
least one variable. As a result, the objective value may increase (maximization case) or
decrease (minimization case) indefinitely. In this case, both the solution space and the
optimum objective value are unbounded.

2 x1  4 x 2 
 max

2 x1  1 x 2  2
1 x1  1 x 2  4
x1 , x 2  0

4. Nonexisting (or infeasible) solutions

LP models with inconsistent constraints have no feasible solution.

3 x1  5 x2 
 max
1 x1  1 x 2  7
2 x1  3 x 2  12
x1 , x 2  0

2.5 Interpretation of Simplex optimum tableaus

(Taha, H.A., 2007, pp. 129)

9
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

Table 1: Optimum tableau

Table 2: Dual Prices

The zero dual price for operation 3 means that there is no economic advantage in allocating more
production time to this operation. The result makes sense because the resource is already abundant,
as is evident by the fact that the slack variable associated with Operation 3 is positive (= 20) in the
optimum solution. As for each of Operations 1 and 2, a one minute increase will improve revenue by
$1 and $2, respectively. The dual prices also indicate that, when allocating additional resources,
Operation 2 may be given higher priority because its dual price is twice as much as that of Operation
1.

2.6 Sensitivity analysis

In LP, the parameters (input data) of the model can change within certain limits without causing the
optimum solution to change. This is referred to as sensitivity analysis. In LP models, the parameters
are usually not exact. With sensitivity analysis, we can ascertain the impact of this uncertainty on the
robustness of the optimum solution.

2.7 Integer and mixed integer programming

In the classical linear programming problem the behaviour of continuous, nonnegative variables
subject to a system of linear inequalities is investigated. If only some of the unknown variables are
required to be integers, then the problem is called a mixed integer programming (MIP) problem.
These are generally also NP-hard.

10
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

Figure 5: Solution space for the IP model

One possible generalization of this problem is to relax the continuity condition the variables.

Figure 6: Solution of the relaxed IP model

We look at a Branch and bound algorithm design to solve a mixed integer programming problem. A
branch-and-bound algorithm consists of a systematic enumeration of candidate solutions by means
of state space search: the set of candidate solutions is thought of as forming a rooted tree with the
full set at the root. The algorithm explores branches of this tree, which represent subsets of the
solution set. Before enumerating the candidate solutions of a branch, the branch is checked against
bounds on the optimal solution, and is discarded if it cannot produce a better solution than the best
one found so far by the algorithm:

- The algorithm recursively splits the search space into smaller spaces, the splitting is called
branching.
- Branching alone would amount to brute-force enumeration of candidate solutions and testing
them all. To improve on the performance of brute-force search, a B&B algorithm keeps track of

11
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

bounds, and uses these bounds to "prune" the search space, eliminating candidate solutions that
it can prove will not contain an optimal solution.

min Q  2 x1  3x 2
 2 x1  2 x 2  x 3  3
2 x1  2 x 2  x 4  13
x1 
x 2  x1 
0 integer
 ganz
x3  x2 
x 4 

Table 3: Feasible and optimal solution of the relaxed LP problem

2.8 Examples and applications

Production Planning

Production planning often involves developing a plan for how to allocate various limited resources to
the production of various products.

(Taha, H.A., 2007, p. 12)

12
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

a) Formulate the LP Model.

b) Solve the LP problem graphically.

Blending

The objective for a blending problem is to find the best blend of ingredients into final products to
meet certain specifications. Blending problems involve such final products as steel, fertilizer, and
animal feed. A number of LP applications deal with blending different input materials to produce
products that meet certain specifications while minimizing cost or maximizing profit. The input
materials could be ores, metal scraps, chemicals, or crude oils and the output products could be
metal ingots, paints, or gasoline of various grades.

Consider the problem of determining the optimum amounts of three ingredients to include in an
animal feed mix. The final product must satisfy several nutrient restrictions. The possible ingredients,
their nutritive contents (in kilograms of nutrient per kilograms of ingredient) and the unit cost are
shown in the following table.

Nutritive content and price of ingredients


Ingredient Calcium Protein Fiber Unit cost
(kg/kg) (kg/kg) (kg/kg) (cents/kg)
Limestone 0.38 0.0 0.0 10.0
Corn 0.001 0.09 0.02 30.5
Soybean 0.002 0.50 0.08 90.0
meal

The mixture must meet the following restrictions:

- Calcium — at least 0.8% but not more than 1.2%.


- Protein — at least 22%.
- Fiber — at most 5%.

Formulate the LP model.

13
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

Trim loss and slitting (Taha, H.A., 2007, p. 60)

In practice, an order is filled by setting the knives to the desired widths. Usually, there are a number
of ways in which a standard roll may be slit to fill a given order.

The variables are defined as the number of standard rolls to be slit according to a given knife setting.
The Pacific Paper Company wants to minimize the number of standard rolls to be slit.

Formulate the LP model.

Transportation model

The transportation model is a special class of linear programs that deals with shipping a commodity
from sources (e.g., factories) to destinations (e.g., warehouses).

Figure 7: Representation of the transportation model with nodes and arcs

The objective is to determine the shipping schedule that minimizes the total shipping cost while
satisfying supply and demand limits. The model assumes that the shipping cost is proportional to the
number of units shipped on a given route.

14
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

There are m sources and n destinations, each represented by a node. The arcs represent the routes
linking the sources and the destinations. Arc (i, j) joining source i to destination j carries two pieces of
information: the transportation cost per unit, cij, and the amount shipped, xij The amount of supply at
source i is ai and the amount of demand at destination j is bj. The objective of the model is to
determine the unknowns xij that will minimize the total transportation cost while satisfying all the
supply and demand restrictions.

(Taha, H.A., 2007, pp. 194)

MGAuto has three plants in Los Angeles, Detroit, and New Orleans, and two major distribution
centers in Denver and Miami. The capacities of the three plants during the next quarter are 1000,
1500, and 1200 cars. The quarterly demands at the two distribution centers are 2300 and 1400 cars.
The mileage chart between the plants and the distribution centers is given below. The trucking
company in charge of transporting the cars charges 8 cents per mile per car. The transportation costs
per car on the different routes, rounded to the closest dollar, are given below.

Formulate the LP model.

15
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

3 Graph theory

3.1 General characteristics of graphs

A simple graph G consists of a non-empty finite set V(G) of elements called vertices (or nodes), and a
finite set E(G) of distinct unordered pairs of distinct elements of V(G) called edges. We call V(G) the
vertex set and E(G) the edge set of G. We say that two vertices i and j of a graph G are adjacent if
there is an edge ij joining them, and the vertices i and j are then incident with such an edge.

A weight graph is a graph whose edges have a "weight" or "cost". The weight of an edge can
represent distance, time, or anything that models the "connection" between the pair of nodes it
connects.

In graph theory and computer science, an adjacency list is a collection of unordered lists used to
represent a finite graph. Each unordered list within an adjacency list describes the set of neighbors of
a particular vertex in the graph. This is one of several commonly used representations of graphs for
use in computer programs.

Let T be a graph with n vertices. Then the following statements are equivalent:

(i) T is a tree;

(ii) T contains no cycles, and has n—1 edges;

(iii) T is connected, and has n-1 edges;

(iv) any two vertices of T are connected by exactly one path;

(v) T contains no cycles, but the addition of any new edge creates exactly one cycle.

3.2 Shortest path algorithms

Within shortest path algorithms we can differentiate single pair shortest path problems (SPSP) from
single source shortest path problems (SSSP) and all pairs shortest path problems (APSP).

Dijkstra's algorithm is an algorithm for finding the shortest paths between nodes in a graph, which
may represent, for example, road networks. It was conceived by Edsger W. Dijkstra in 1956 and
published three years later.

Figure 8: E.W. Dijkstra

16
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

Dijkstra´s algorithm fixes a single node as the "source" node and finds shortest paths from the source
to all other nodes in the graph (SSSP).

Procedure DIJKSTRA  G, w, s; d 

(1) d  s  0, T  V

(2) for v V \ s do d  v    od;

(3) while T   do
(4) find u  T , to be d u a minimum;

(5) T  T \ u ;

(6) for v  T  Au do d  v   min d  v , d u  wuv  od

(7) od.

Figure 9: Network example for Dijkstra's shortest path algorithm

Use Dijkstra's algorithm to find the shortest route between node 1 and every other node in the
network.

3.3 Minimum spanning tree algorithms

A minimum spanning tree (MST) or minimum weight spanning tree is a subset of the edges of a
connected, edge-weighted undirected graph that connects all the vertices together, without any
cycles and with the minimum possible total edge weight. That is, it is a spanning tree whose sum of
edge weights is as small as possible.

Minimum spanning trees have direct applications in the design of networks, including computer
networks, telecommunications networks, transportation networks, water supply networks, and
electrical grids.

17
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

Figure 10: Network example for Prim's minimal spanning tree algorithm

Use Prim's algorithm to find the minimal spanning tree in the network.

18
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

4 Applications of Operations research in Operations and Supply Chain Management

4.1 Travelling salesman problem (TSP)

In this problem, a travelling salesman wishes to visit several given cities and return to his starting
point, covering the least possible total distance. For example, if there are five cities A, B, C, D and E,
and if the distances are as given, then the shortest possible route is A—>B—>D—>E —>C—>A, giving
a total distance of 26, as can be seen by inspection.

Figure 11: Graph to illustrate the TSP

Given a set of cities and distance between every pair of cities, the problem is to find the shortest
possible tour (from (n-1)!) that visits every city exactly once and returns to the starting point.

The nearest neighbour (NN) algorithm (a greedy algorithm) lets the salesman choose the nearest
unvisited city as his next move. This algorithm quickly yields an effectively short route.

A branch and bound method is based on the idea that sets are divided into two disjoint subsets at
every step of the process - branching. Furthermore, one subset contains the path between two
selected cities and the other subset does not. For each of these subsets the lower restriction (bound)
is calculated for the duration or for travel expenses. Finally, the subset which exceeds the estimated
lower bound is eliminated. The procedure of branching is represented by a tree where the top is
marked by the branching points of the set of solutions, and the edges mark the path between the
two contiguous vertices in the graph which are used to model the problem.

Figure 12: Branching tree of a TSP

19
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

In branch and bound, the challenging part is figuring out a way to compute a bound on best possible
solution.

Compute the shortest tour for a travelling salesman with the nearest neighbour algorithm and
branch and bound.

4.2 Vehicle routing planning (VRP)

The vehicle routing problem (VRP) is a combinatorial optimization that involves finding an optimal
design of routes traveled by a fleet of vehicles to serve a set of customers. In the traditional VRP, we
try to detect routes for a homogeneous fleet of vehicles to satisfy the customers' demands.

The VRP is a combinatorial optimization and integer programming problem which asks "What is the
optimal set of routes for a fleet of vehicles to traverse in order to deliver to a given set of
customers?" Often, the context is that of delivering goods located at a central depot 0 to customers
who have placed orders for such goods. The objective of the VRP is to minimize the total route cost.
Determining the optimal solution to VRP is NP-hard, so the size of problems that can be optimally
solved using mathematical programming or combinatorial optimization may be limited. Therefore,
commercial solvers tend to use heuristics due to the size and frequency of real world VRPs they need
to solve. In 1964, Clarke and Wright developed a heuristic using an effective greedy algorithm called
the savings algorithm.

We focus on savings algorithm to solve a VRP: The Clarke and Wright savings algorithm is one of the
most known heuristic for VRP. It applies to problems for which the number of vehicles is not fixed.
The transportation costs are specified in a matrix D as the cost of driving from any point to any other
point. The costs are not necessarily identical in the two directions between two given points.

Figure 13: Illustration of the savings concept

20
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

Initially in figure (a) customers i and j are visited on separate routes. An alternative to this is to visit
the two customers on the same route, for example in the sequence i-j as illustrated in figure (b).

Denoting the transportation cost between two given points i and j by dij, the total transportation cost
ca in figure (a) is:

ca = d0i + di0 + d0j + dj0

Equivalently, the transportation cost cb in figure (b) is:

cb = d0i + dj0 + dij

By combining the two routes one obtains the savings sij:

sij = d0i + d0j − dij

Relatively large values of sij indicate that it is attractive, with regard to costs, to visit points i and j on
the same route such that point j is visited immediately after point i.

In the first step of the savings algorithm the savings for all pairs of customers are calculated, and all
pairs of customer points are sorted in descending order of the savings. Subsequently, from the top of
the sorted list of point pairs one pair of points is considered at a time. When a pair of points i-j is
considered, the two routes that visit i and j are combined (such that j is visited immediately after i on
the resulting route), if this can be done without deleting a previously established direct connection
between two customer points, and if the total demand on the resulting route does not exceed the
vehicle capacity.

Heuristic for solving the vehicle routing problem with a central repository and an unfixed number of
vehicles:

Step 1. Savings computation

Step 2. Best feasible merge

We consider a problem with 5 customers. The transportation costs D between all pairs of points are
shown in the following table, where 0 represents the depot.

The customers’ demands that must be delivered from the depot are given in the following table. The
vehicle capacity is 100 units.
21
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

Compute the routes using Savings algorithm.

4.3 Covering location problems

In a covering location problem, one seeks a solution to cover a subset of customers, using a pre-
defined number of facilities. When deciding where to locate facilities (e.g., emergency points where
an ambulance will wait for a call) that provide a service, it happens quite often that a customer (e.g.,
a person) can receive this service only if she is located less than a certain distance (service radius S)
from the nearest facility (e.g., the ambulance can arrive in less than 7 min at this person’s home).

Consider the following network:

The Commercial Transport Ltd. delivers outlets in 8 cities. The Outlets in the cities 1, 2, 6 and 7
should be delivered within 5 hours, the Outlets in the cities 3, 4, 5 und 8 should be delivered within
10 hours. The weights determine the driving times between the cities. Where should the Commercial
Transport Ltd. locate warehouses, if the number of warehouses should be minimized.

22
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

4.4 Assignment problems

Assignment problems deal with the question how to assign n items (e.g. jobs) to n resources (e.g.
machines or workers) in the best possible way.

A) Linear assignment problem:

Example:

A tourist car operator has four cars in each of the four cities and four customers in four different
cities. The distance between different cities is given. His objective is to assign each car to one and
only one customer in such a way that the total distance covered is minimized.

B) Quadratic assignment problem:

Consider three buildings G1, G2, G3 and their distances dij, and three shop floors W1, W2, W3 and their
exchange of services or goods Fkl.

23
OPTIMIZATION MODELS Prof. Dr. Dirk Sackmann

Compute an assignment using the following heuristic:

1. Compute:
𝑛 𝑛

𝐷𝑖 = 𝑑𝑖𝑗 + 𝑑𝑗𝑖 (𝑖 = 1, … , 𝑛)
𝑗 =1 𝑗 =1

2. Compute:
𝑛 𝑛

𝐹𝑘 = 𝑓𝑘𝑙 + 𝑓𝑙𝑘 (𝑘 = 1, … , 𝑛)
𝑙=1 𝑙=1

3. Assign the shop floor with the largest FK to the building with the smallest Di. Proceed, until all
assignments are completed.

24

You might also like