• Keine Ergebnisse gefunden

decisions would significantly change the complexity of our model, which is designed to be solved with network flow based approaches. However, we want to point out that our model can very well be used to assist strategic planners in evaluating different network layouts: In Section 3.6, we assess solution methods that are sufficiently fast to solve multiple instances separately in a row. In the context of operational planning, the exact time of dispatchment, transit time, and arrival time of a shipment play a crucial role.

We intentionally omitted these aspects in the design of the pattern-expanded network as they are not the subject of tactical planning. Of course, transit times can be included by adjusting the arcs of the pattern-expanded network in the same way as it is done in the time-expanded network of Ford and Fulkerson [FF62]. However, it still needs to be investigated how to incorporate other aspects relevant for operational planning into our model, such as scheduling personnel, vehicle usage, or loading devices and return of empties.

3.3 Tariff selection subproblem 51 we devise a mixed integer programming formulation for arbitrary combinations of tariff cost functions. However, out of the different tariff cost functions, property-dependent piecewise constant costs stand out for a number of reasons. Firstly, even though they constitute the most elementary class of cost functions, finding an optimal tariff selec-tion is alreadyNP-hard when restricting to piece-wise constant costs; see Theorem 3.2.

Secondly, they are a very common, if not the most common, tariff type in logistic ap-plications. Indeed, in the real-life data for our computational study inSection 3.6, most transport relations are equipped exclusively with piecewise constant tariffs. Therefore, Section 3.3.2is devoted to theoretic and algorithmic insights into TS for this tariff type.

Combinatorial algorithms for TTP have to solve TS as a subroutine with a very high frequency. Due to its hardness and the demand for extremely short computation times, we develop fast heuristic algorithms for piecewise constant tariffs yielding only approximate solutions as an alternative to the exact MIP approach. In particular, we propose an efficientgreedy algorithmfor computing solutions of decent quality within a minimum of computation time and acost estimator, which instead of a feasible solution only outputs an estimate of the optimal cost of the given instance.

A more detailed analysis of the techniques presented in this section, together with an extensive computational study on real-world and randomly generated tariff selection instances can be found in [KMR12].

3.3.1 MIP for the general case

The introduction of tariff gadgets inSection 3.2.4 enables us to naturally formulate and solve TS as a mixed integer program. This versatile approach is especially suited when various tariff types occur together on a single transport relation, or when computational time is not a great issue, e.g., if flow paths for all commodities are already specified and TS only needs be solved once on each transport relation to optimize the tariff choice.

When each tarifft∈T(R) is represented by a container gadget(V(t), A(t))as described in Section 3.2.3, we denote with A(R) := S

tT(R)A(t) and V(R) := S

tT(R)V(t) the set of all arcs and nodes, respectively, that are used to model the tariff structure on transport relationR. TS for R can then be written as

min X

aA(R)

c(a)y(a) + X

i∈K

ci(a)xi(a)

s.t. X

aδ+(v)

xi(a)−X

aδ(v)

xi(a) =

i if v= tail(R)

−∆i if v= head(R)

0 otherwise ∀v∈V(R), ∀i∈K X

iK

αijxi(a) ≤ βj(a)y(a) ∀a∈A(R), ∀j∈P

y(a) ≤ u(a) ∀a∈A(R)

y(a)∈Z+, xi(a)∈Q+ ∀a∈A(R), ∀i∈K.

As this MIP only involves the tariff choices on a single transport relation, the correspond-ing instances are rather small and can be solved near-optimally in reasonable time for matters of post-optimization.

3.3.2 Piecewise constant costs

When all tariffs on a transport relation are of the property-dependent piecewise constant type, the tariff-expanded counterpart of the transport relation is a bundle of parallel fixed-charge container arcs. In this case, the MIP formulation of TS can be simplified to

min X

aA(R)

c(a)y(a)

s.t. X

a∈A(R)

xi(a) = ∆i ∀i∈K X

iK

αijxi(a) ≤ βj(a)y(a) ∀a∈A(R), ∀j∈P y(a)∈Z+, xi(a)∈Q+ ∀a∈A(R), ∀i∈K.

It is not hard to see that finding an optimal tariff selection for piecewise constant cost functions is NP-hard, even for very restricted special cases. We give a straightforward reduction from the well-known unbounded knapsack problem, which is known to beNP -hard [Lue75], to TS instances with only a single property and a single commodity.

Problem: Unbounded knapsack

Input: A set of n items with values v1, . . . , vn ∈ Z+ and weights w1, . . . , wn∈Z+, capacity W ∈ Z+, and a desired valueV ∈Z+.

Task: Find numbers z1, . . . , zn ∈ Z+ such that Pn

i=1wizi ≤ W and Pn

i=1vizi≥V, or decide that no such numbers exist.

Theorem 3.2 The tariff selection problem isNP-hard, even when restricted to instances with only piecewise constant cost functions, a single property, and a single commodity.

Proof. In the single-commodity single-property case, the above MIP reduces to|A(R)|+1 non-trivial constraints, and there remain single variablesαij,x andβj, which we denote by α, x and β, respectively. Every feasible solution satisfies α∆≤P

a∈A(R)β(a)y(a), and conversely, if this inequality is satisfied, it is trivial to find feasible assignmentsx(a). Hence, the MIP reduces in fact to a single non-trivial constraint.

Given an instance IUK of the unbounded knapsack problem, we construct an in-stance ITS of the above special case of TS as follows. First, for every itemi∈ {1, . . . , n} of IUK, define ui := dW/wie to be the maximum number of items of type i in a fea-sible knapsack solution. Then, for each item i ∈ {1, . . . , n} introduce a corresponding arc ai with containers of fixed cost c(ai) = vi and capacity β(ai) = wi. Moreover, we set ∆ =Pn

i=1wiui−W andα = 1.

We now argue thatIUK possesses a solution with value at leastV if and only if ITS can be solved with cost at mostPn

i=1viui−V. First assume there is a feasible solutionz to IUK with value at leastV. We define y(ai) :=ui−zi and observe that

n

X

i=1

β(ai)y(ai) =

n

X

i=1

wi(ui−zi)≥

n

X

i=1

wiui−W =α∆

3.3 Tariff selection subproblem 53

Algorithm 3.1: Greedy algorithm for tariff selection Initialize∆0 = ∆, x= 0, y= 0, x = 0, y = 0. while∆0 6= 0do

if ∃a = argmin{c(a) : a∈A(R), α(∆0)≤β(a)}then if y= 0 or c(y) +c(a)< c(y) then

Sety(a) =y(a)and x(a) =x(a) for alla∈A(R)\ {a}.

Sety(a) =y(a) + 1andx(a) =x(a) + ∆0. Choose a0 ∈argmax{score(a,∆0) : a∈A(R)}.

Setd=fill(a0,∆0). Setk=j

minn0

i

di : i∈K, di>0ok . Sety(a0) =y(a0) +k andx(a0) =x(a0) +kd. Set∆0= ∆0−kd.

if y6= 0 and c(y)< c(y) then returnx, y

returnx, y

and n

X

i=1

c(ai)y(ai) =

n

X

i=1

vi(ui−zi)≥

n

X

i=1

viui−V.

We omit the converse of the argument as it works analogously.

Greedy algorithm

We now present a generic greedy algorithm to heuristically solve instances of TS for piecewise constant cost functions. The inherent covering nature of TS—in the sense that we select containers in order to “cover” the capacity extents of a fixed flow vector—

motivates us to devise a generalization of the natural greedy approach to integer programs with nonnegative data as studied for example by Dobson [Dob82]. We emphasize that our methods are specifically designed to cope well with the given practical instances: in those instances all properties and capacities are strictly positive, they are always feasible and the number of properties is small. Though some of the following methods also work with zero-valued properties or capacities and feasibility tests could be easily incorporated, we omit the explicit treatment of these issues for the sake of readability.

The greedy algorithm for tariff selection repeatedly selects a “most efficient” con-tainera∈A(R)to cover portions of, or the whole remaining shipping amount∆0 ∈QK+. In this context, the “efficiency” of a container is measured by a function score(a,∆0), which reflects the ratio between cost of container typea∈A(R)and the shipping amount it covers. The selected container then is packed using the function fill(a,∆0), which returns a vector d∈QK+, with di ≤∆0i for all i ∈ K and αj(d) ≤ βj(a) for all j ∈ P, trying to ensure an “efficient” capacity usage of the container. To speed up the algorithm we can assign the computed mix of commoditiesdmultiple times to copies of the same container, as long asd≤∆0. The algorithm repeats until all demand is assigned, i.e.,∆0 is reduced to zero. During the course of the algorithm, there might be containers large enough to cover all remaining demand, although thescoremethod still favors a smaller container that covers only fractions and leaves demand for the next step. In such situ-ations it is advisable to consider both container types and to branch on the computed

solution: Among all containers that suffice to cover ∆0, the algorithm picks the one with least cost and constructs acomplete solution(x, y)to be stored separately—if it is bet-ter than any previous complete solution—and it also proceeds with the partial solution arising from selecting the container with bestscore value.

A formal listing of the greedy algorithm is given as Algorithm 3.1. To simplify notation we denote by c(y) :=P

a∈A(R)c(a)y(a) the selection cost of a vectory∈ZA(R)+ . Implementation of score and fill

Algorithm 3.1uses two subprocedures calledscorefor estimating “container efficiency”, and fill for computing corresponding assignment d∈QK+ of commodities to the con-tainer. Several variants of different implementations of these subprocedures, including LP based methods and simple scaling techniques, have been tested in [KMR12]. For the implementation of the algorithms incorporated into theTTPsolvers, we decided to base both scoreand fillon a two-phase greedy algorithm, which we shortly outline here.

Recall that the input of both subprocedures consists of a container type a∈ A(R) and the vector of remaining shipping amount ∆0 ∈QK+. The algorithm tries to greedily fill the container aby approximating the ray induced by its capacity vector β(a) with the property extents α(d)∈QP+ of the computed vector d. The two phases are described in detail below. The subroutine score only executes the first phase of this algorithm and uses the resulting vector d∈QK+ to return the score P

j∈P αj(d)/c(a). Note that scoreis executed far more frequently thanfill and thus restricting to the first phase significantly reduces computation time. Once a container is selected, fill returns the refined filling derived by the second phase.

Phase 1. The algorithm maintains a vectord∈QK+ of demand assigned to the container, starting with d = 0. It will iteratively increase d by adding a certain amount δ of a commodityi ∈K. Letβ(a) :=¯ β(a)−α(d)denote the residual capacity of the container with respect to the currently assigned demand. At the beginning of every iteration the algorithm computes

δi := min β¯j

αij : j∈P, αij >0

0i

for every commodity i ∈ K. Note that δi corresponds to the maximal assignment of commodity i that can be added to d without violating the capacities of the container.

The algorithm iteratively chooses a commodity i ∈ K that minimizes the Euclidian norm of the vector of slacks with respect to this assignment, i.e.,

i∈argminiK

β(a)¯ −δiαi 2

and adds δi units of commodity i to d and subtracts the same amount from∆0. The first phase ends when δi = 0 for alli∈K.

Phase 2. The second phase tries to further reduce unused container capacities by adjusting the vector d produced in the first phase. It does so by approximating the ray induced by the capacity vector β(a) with a conic combination of the extent vec-tors αi ∈QP+ of the available commodities i ∈ K. More formally, we decompose the property space QP = span(β(a)) + span(β(a)) into the linear subspace spanned by the

3.3 Tariff selection subproblem 55 capacity vector β(a) and its orthogonal complement and consider for each commod-ityi∈K the unique decomposition of its extent vectorαi =vi+ui withvi ∈span(β(a)) andui∈span(β(a)). The current filling vector d∈QK+ induces the vector

α(d) =X

iK

diαi=X

iK

divi+X

iK

diui ∈QP+.

Our goal of approximating the ray induced by β(a) corresponds to minimizing the or-thogonal deviationkP

i∈Kdiuik2. For commodityk∈K, we define λk:= X

iK

diuTi uk uTkuk. Note that λkuk corresponds to the projection of P

iKdiui on span(uk). We chosse ani ∈K withλi <0 and increased bymin{−λi,∆0i} units of commodity i, which leads to a decrease of the orthogonal deviation. We iteratively augmentdin this way until no additional improvement can be achieved by any commodity. Note that the resulting vectordmight violate container capacities. We therefore scale ddown to feasibility.

Cost estimation by covering relaxation

In many situations in which TS occurs as a subproblem in the course of an algorithm forTTP, it is not important to know which tariffs are actually utilized in a solution, but merely which cost is incurred. Examples include shortest path type algorithms where the transport relations leaving some node are to be labeled with the cost of forwarding some flow along them. In these situations, the following covering relaxation can be used to obtain considerable speed-ups while still computing reasonable cost estimates.

The relaxation is based on dropping the requirement of an exact assignment of the commodities to containers. Instead, we only require the chosen containers to cover the vector of aggregated propertiesΓ :=α(∆0) induced by the flow vector∆0. The result of this relaxation is the following covering integer program:

min X

a∈A(R)

c(a)y(a) s.t. X

aA(R)

y(a)βj(a)≥Γj ∀j ∈P y(a)∈Z+ ∀a∈A(R)

We can heuristically solve this problem very efficiently by adjusting Algorithm 3.1 to directly operate on the vectorΓ instead of considering ∆, i.e., we reduce Γ by β(a) for each selected container copy of type a. An appropriate scoring function can be defined by

score(a,Γ) := 1 c(a)min

βj(a)

Γ : j∈P, Γj >0

.

Note that a solution to the covering relaxation does not necessarily yield a feasible solu-tion for the original TS problem. In fact, one can easily come up with counterexamples where the estimate obtained from the relaxation is arbitrarily far away from the actual optimal solution value of TS. However, these examples are of rather artificial nature, including containers with near-zero capacity in certain properties. Such cases do not occur in the instances of TS arising from our practical data.