• Keine Ergebnisse gefunden

In Chapter 2 the ConFL and the bi-objective ConFL which is tackled in this thesis are for-mally defined. Chapter 3 gives an overview of common approaches to solve the single objective combinatorial optimization problems, including exact algorithms, heuristics as well as genetic algorithms. Chapter 4 which gives an overview of the most commonly used approaches in the literature to conquer the single objective ConFL and briefly summarizes relevant algorithms for bi- and multi-objective problems. Chapter 5 describes the algorithm developed in this thesis and discusses the implementation. In the next Chapter the results obtained from a computational study are discussed. Finally, in Chapter 6 some conclusions are drawn and ideas for future work based on this thesis are presented.

CHAPTER 2

Problem Definition

The Connected Facility Location Problem is a generalization of the Facility Location Problem and the Steiner Tree Problem and defined as follows:

Definition 2.1.1 (Connected Facility Location Problem). We are given a graph G = (V, E) where the node set is the disjoint union of customer nodesR ⊆ V, facility nodesF ⊆ V and potential Steiner nodesT =V \(F∪R). The set of edgesEis the disjoint union of core edges EC ={{i, j} ∈E :i, j ∈F ∩T}and assignment edgesEA={{i, j} ∈E :i∈F, j ∈R}.

For all core edgese∈EC we are given an edge costce ≥0, for all facilitiesi∈F we are given facility opening costsfi ≥0, and each edgee∈ EAwe are given costsaij ≥ 0for assigning customerj∈Rto facilityi∈F.

A solution to the ConFL consists of a set of open facilitiesF0 ⊆F, a set of chosen assign-ment edgesEA0 ⊆EAsuch that each customerj ∈Ris connected to exactly one open facility i(j)∈F0and a Steiner tree(V0, EC0 )which is a subgraph of(F∪T, EC).

The objective value of a solution is given by the sum of the opening costs, the costs of assigning customers to open facilities and the edge costs of the Steiner tree connection the open facilities, i.e.

and the overall objective is to identify a solution with minimal costs. Note that in this for-mulation closed facility nodes can also be used as pure Steiner nodes.

The bi-objective ConFL can be modeled equivalently with the addition that a potential rev-enue is assigned to each customer and not every customer has to be assigned to a facility in a feasible solution.

Definition 2.1.2 (Bi-objective Connected Facility Location Problem). We are given a graph G = (V, E)where the node set is the disjoint union of customer nodesR ⊆V, facility nodes

F ⊆ V and potential Steiner nodes T = V \(F ∪R). Further we are given a root node b∈(F ∪T)which can either be a facility (open or closed) or a Steiner node. The set of edges E is a disjoint union of core edgesEC ={{i, j} ∈ E : i, j ∈ F ∩T}and assignment edges EA = {{i, j} ∈ E : i ∈ F, j ∈ R}. For all core edges e ∈ EC we are given an edge cost ce ≥ 0, for all facilities i ∈ F we are given facility opening costs fi ≥ 0. Additionally a potential revenuerk >0is assigned for each customerk ∈R. For each edgee∈ EAwe are

In the BoConFL we have not one but two objective values for each solution, the costz1(S) which is given by the sum of the opening costs, the costs of assigning customers to open facilities and the edge costs of the Steiner tree connection the open facilities and the revenuez2(S)which is the sum of the revenue of each selected customer.

In the BoConFL we want to simultaneously minimize the total costsz1(S)and maximize the collected revenuez2(S)of a solutionS, i.e.,

z1(S) = X

The objective is to identify the set of Pareto optimal solutions, i.e., the set of feasible solutions for which one cannot find another feasible solution that is better w.r.t. to one of the objectives without deteriorating the other objective.

In order to create a minimization problem, instead of calculating the revenue which would be maximized we calculate the lost revenuez20(S)which needs to be minimized. This results in the following two objective functions:

CHAPTER 3

Methodologies

The following chapter will provide an introduction to exact and heuristic approaches for solving combinatorial optimization problems (COPs) Furthermore an overview of methods used to con-quer bi- and multi-objective problems is given. Finally Section 3.3 introduces basic definitions and terminology of multi-objective optimization.

Exact methods usually take a form of branching and other forms of exhaustive search in order to find optimal solutions for given problems if given enough time. Due to their behavior these methods tend to find good if not exact solutions but the drawback is the long runtime because of the large solution space which needs to be searched. The most common and widely used approach for COPs is mixed integer linear programming.

3.1 Integer Linear programming

This topic was first studied by Kantorovich [23] and gained military interest during the second world war. A few years later, independent of Kantorovich, Dantzig [9] formalized linear pro-gramming and published the well known simplex algorithm to solve linear programs (LPs). Von Neumann [50] proposed the theory of duality of LPs stating that every minimization problem has an equivalent maximization problem and vice versa.

Formulation (3.1)-(3.3) is the standard for a linear program (LP),

min.cTx (3.1)

s.t. Ax≥b (3.2)

x≥0 (3.3)

wherex ∈ Rnis the vector of variables which needs to be determined,c ∈Rnis the cost vector, b ∈ Rm is a coefficient vector and matrixA ∈ Rm×n is a matrix of coefficients. cT

denotes the transposed vector ofc. The objective function (3.1) is to be optimized regarding to the given criterion. The inequality (3.2) is the constraint which specify a convex polytope over which the objective function will be optimized. The domain of the variables (3.3) defines the value range ofx.

The most well known algorithms to solve linear programs are the Simplex algorithm by Dantzig [8] and the Interior point method [25, 47] as well as adaptations of them.

Some problems are formulated as maximization problems so these need to be transformed to minimization problems by application of the theorem of von Neumann (3.1) - (3.3):

max.bTy (3.4)

s.t.ATy≥c (3.5)

y∈Rn (3.6)

This transformation can also be used in the other direction, from minimization to maximization problems.

Based on the domain is the variable (3.3) we differentiate between the following four forms of LPs: The domain ofxneed not to be restricted toR. Due to a more restricted domain ofx we can differentiate some special forms:

• Integer Linear Program(ILP):x∈Zn

• Binary Integer Program(BIP):x∈ {0,1}n

• Mixed Integer Program(MIP):x≥0,xi∈Z, i∈S ⊂ {1, ..., n}

In order to solve ILPs, BIPs or MIPs some advanced algorithms that implement the simplex algorithm are used, e.g., branch and bound method [29], branch and cut algorithm [41]. This is done by relaxing the integer condition of variables fromx ∈ Nto a continuous value range x ∈ R. Due to this relaxation of a constraint the solution obtained might not be integral any-more. This fact can be used to get a lower bound of the relaxed minimization problem as well as an upper bound by solving the dual maximization problem or vice versa. The Branch and Bound algorithm is used to solve such relaxation problems. It uses a divide and conquer approach to break the problem into smaller and easier subproblems which can be solved independently. If a solution to a relaxed problem is found with one or more variables being a fractal by using binary branching, e.g.: a solution of a ILP withx= 3.5will be branched to two new subproblems each having an additional constraintx≤3and the otherx≥4.

After a new solution is obtained, it is checked if it worse than the best upper / lower bound already found the node is pruned and all resulting subproblems as well. The branch and bound procedure is finished when the lower and and the upper bound respectively the the primal and dual solution are equal and integral.