Maximum flow – minimum cost algorithm of a distribution company in Ghana : Case of ‘ NAAZO ’ Bottling Company , Tamale Metropolis

Every business entity’s primary objective is to maximize profit and satisfy its customers (end users). Since businesses are an integral part of our environment, their operations will be restricted by the environmental factors associated with it. The study seeks to model NAAZO Peki distribution in Tamale Metropolis (TM) as a network flow problem, and to determine the minimum cost of Peki soft drink distribution in the Tamale Metropolis (TM) using Ford-Fulkerson Algorithm. Data on demand and storage capacities of retailers within the metropolis were collected from management of NAAZO and the detailed road network and their corresponding distances sourced from the town and country planning department of the metropolis. Peki distribution within the metropolis was modeled as a network flow problem minimum cost for the annual distribution for the year determined using Ford-Fulkerson algorithm. NAAZO could possibly reduce cost of distribution by up to 58% of minimum cost, that is possible from GH¢1,477,188.30 to GH¢934,487.10.


INTRODUCTION
Day in and day out we hear travelers complain of traffics, passengers complaining of cost of travelling, city authorities going through hell carrying out demolitions of unauthorized structure, spillage of our drainage systems, policy makers choosing venues for conferences without carefully considering the impact of travel cost on the conference.Every business entity's primary objective is to maximize profit and satisfy its customers (end users).
Since businesses are an integral part of our environment, their operations will nonetheless be restricted by certain environmental factors.
According to Chopra and Meindl (2007) companies such as Wal-Mart and McMaster-Carr business success is largely due to their efficient distribution systems.The huge potential benefits distribution companies (e.g Ghana water Company, Electricity Company, Coca-Cola, Uniliver Ghana, etc) stands to benefit inspired the need to undertake the present study.
NAAZO has a bottling division with vehicles that transport crates of their Peki soft drink to its retailers.There are hundreds of retailers within the metropolis and for purposes of this study, the city is zoned into retail communities (nodes/vertices), but only c (u, v) crates per day can go from u node to v node.That is, the vehicles travel on specified routes/edges (u, v) between retail communities and have a limited capacity, and NAAZO can transport at most c (u, v) crates per day between each pair of communities u and v.
NAAZO has no control over the routes and capacities and so cannot alter the flow network.NAAZO's goal is to send the largest number of crates (p) as possible per day that can be transported to the retailers at least cost, since it has no infinite capacity.For the purpose of this study, we code the retail communities within the Tamale Metropolitan Assembly .
Business persons in the various communities with infrastructures are aided by the company with cool chains to stock up the product.Consumers and other smaller retailers in turn can pick their supplies from these persons at no extra cost.The network players of NAAZO are therefore the centers of the business persons, retail shops, super markets, filling stations and individual consumers.The company's warehouse in Tamale is relatively small.Delivery of the products from the depot to the retail communities is done with some sense of urgency from the production warehouse.According to Anany (2007) algorithms can be said to be procedural solutions to problems.These solutions are not answers but specific instructions for getting answers.Damian and Garrett (1991a) in their PhD.thesis work entitled the Minimum Cost Flow Problem and the Network Simplex Solution Method" in Ireland distribution network has Dublin and Belfast as supply nodes, while Cork, Galway, Limerick and Waterford were demand nodes.The Spanning tree technique was used to find the optimal solution.Further, according to Damian and Garrett (1991b) and Dantzig et al. (1950) first studied maximumflow and minimum-cut problem.They left their finding at that stage until mid 1950's.Goldberg and Tarjan (1990) dealt with nine different problem types, with the stated goal of aiding the third of Stalin's five-year plans to obtain the greatest possible usage of existing industrial resources.Principal among these problems were: distribution of work among individual machines; distribution of orders among enterprises; distribution of raw materials; fuel and factors of production; minimization of scrap; and best plan of freight shipments.Shigeno et al. (2000), discussed various algorithms.He explained how efficient Edmond-Karp and Push-relabel algorithms are suitable maximum flow problems.Bellman-Ford Fulkerson has the shortest path algorithm which will not also be discussed here.
In David et al. (2006) a minimum cost maximum flow of a network G = (V, E) is a maximum flow with the smallest possible cost.This problem combines maximum flow (getting as much flow as possible from the source to the sink) with shortest path.O'Connor (1980) outlines a simple method which involves traversing the entire back path of i, labeling each node along it.

Networks
In Timon (2008), Network is some quantity (be it electricity, water, information, goods, money, people) moved along an underlying supporting medium (circuit boards, pipelines, roads, antennas and the air between them).If V is a set of nodes, E a set of arcs then the network G is defined as: Where s is the starting node, t the end node and c capacity function of the arcs.G is shown in Figure 1 graphically.A network consists of a set of nodes linked by arcs (edges or branches).
Flows are generally commodities which we send from one node to another via the arcs.By and large, flow in a network is limited by the capacity of its arcs, which may be finite or infinite.An arc is said to be directed or oriented if it allows positive flow in one direction and zero flow in the opposite direction.A directed network has all directed arcs (Vijaya, 2007).For the purpose of this study, we shall represent nodes by circles and arcs by straight lines.
A connected network is such that every two distinct nodes are linked by at least one path.Network flow is the sending of a commodity from one special node (source) to another special node (sink) through intermediate arcs.The assumption is that for each unit of flow that enters arc (u, v)  ( , ) : ( , ) ( , ) and the generalized antisymmetry constraints: If the arc capacity of a node (1, 2) is 10 which determines the max flow from node 1 to node 2, then the reverse capacity of (1, 2) which is (2, 1) = -(1, 2) is 0. The maximum flow along a path is determined by the least arc capacity along the path.Consider a path, say       1, 2 2, 4 4,5   of capacities {10, 4, 6}, the minimum capacity along the path is 4 Along the arc (2, 4).The maximum quantity that can flow along the path therefore is 4 units.

Residual network
According to Kevin (1999) intuitively, given a flow network The residual capacity function, f c is defined as and the residual capacity is The value of a flow is defined as,

 
, In many practical applications some nodes are connected to the environment surrounding the network.At these entryway nodes, there may be a net gain of flow into the network (source node), or a net loss of flow out of the network (sink node).This is an extension in an attempt to address the issue of gain factor when it comes to modeling.To emphasize that flow conservation still holds at source and sink nodes, a dashed "phantom" arc can be shown on the network diagram.The phantom arc will be an inflow for a source node, and an outflow for a sink node.Consider Figure 2

Augmented network
According to Goldfarb et al. (2002) Max-Flow, Min-Cut theorem in any network, is the value of the maximum flow from source to sink and it is equal to the capacity of the minimum cut.The net flow in the network satisfies three conditions: the capacity constraint, flow conservation constraint and skew symmetry.He further states that according to Max-Flow Min-Cut theorem in any network, the value of the maximum flow from source to sink is equal to the capacity of the minimum cut.
According to Shigeno et al. (2000) and Thomas et al. (2002) augmented network is all the paths from s to t.Note that the residual network may include arcs with zero residual capacity, and still satisfies the symmetry assumption.Flow-Augmenting Algorithm: Every flow augmenting path from source S, to sink, T in a network of directed path from S to T is in the residual network.Thomas et al. (2002) stated that networks may have several sources and or sinks, rather than just one of each.These are called multiple or single source(s) and or multiple or single sink (s) Fortunately, these problems are not really difficult than the ordinary maximum flow problems.To solve any of the scenarios stated above, we convert the problem to the ordinary maximum flow problem by introducing fictitious arcs.The fictitious capacity is as large as the starting arcs can supply or as large as the end arcs can accommodate.

Single source-multiple sinks
This is the case of the problem under study where NAAZO has one depot with several retailed communities.The model becomes

Multiple sources-multiple sinks
Multiple sources-multiple sinks networks can be transform into an ordinary maximum flow problem.A supersource, s was introduced to directed edge (s, si) with capacity c(s, si) =  for each i 1, 2, , m   . We also create a new super sink t and add a directed edge (ti, t) with capacity c(ti, t) =  for each i 1, 2, , m   . The model then becomes: The single source s simply provides as much flow as desired for the multiple sources si, and the single sink t likewise consumes as much flow as desired for the multiple sink ti.

Maximum flow-minimum cost algorithm (Ford-Fulkerson)
According to Handy (2007) the maximum flow algorithm is based on finding breakthrough paths with net positive flow between the source and sink nodes.Each path commits part or all of the capacities of its arcs to the total flow in the network.For a node j that receives flow from node i, we attached a label , j ai   , where aj is the flow from node i to node j. let ( , ) c i j unit cost of sending flow ( , ) f i j along arc ( , ) ij. ( , ) c i j can also be distance or length of arc ( , ) ij.
Algorithm steps: (1) For all arcs   , ij, set the residual capacity equal to the initial a (flow into node 1) and label source node 1 with   , .
Set 1 i  , and go to step 2.
(2) Determine Si, the set of unlabeled nodes j that can be reached directly from node i by arcs with positive residuals.If (4) If 1 i  , no breakthrough is possible; go to step 6.Otherwise, let r be the node that has been labeled immediately before current node i and remove i from the set of nodes adjacent to r. Set ir  , and go to step2 (backtracking).
(5) (Determination of Residuals) Let   , the optimal flow from i to j is  .
Given that m breakthrough paths have been determined, the maximal flow and minimum cost in the network is

Network flow problems
In this session we shall discuss a range of network problems and finally discuss in details the maximum network problem.Network models in this chapter will focus on techniques of finding the most efficient ways of finding the shortest route between two locations; determine the minimum-cost flow in a network that satisfies supply and demand requirements that will produce maximum flow in the network.

Minimum cost flow problem
In the minimum cost flow problem, the goal is to send flow from supply nodes to demand nodes as cheaply as possible, subject to arc capacity constraints.According to Network Optimization Models given s-t flow, the cost of flow is the sum of the flow over all arcs times the cost per unit for that arc.An instance of the minimum cost flow problem is a network G = (V, E, b, a, c), where : bVis a supply function, a is a capacity function, and c is a cost function.
We say node We assume that the total supply equals the total demand, that is, ; otherwise the problem is infeasible.A flow is a pseudoflow that satisfies the mass balance constraint.
Let f be a flow in G and C the cost of transportation/shipment.If there exists a negative cost residual cycle in Gf, then we can improve f by sending flow around the cycle.Busacker and Saaty (1988) showed that the converse is also true.The objective is to find Dawuni and Darkwah 27 The Minimum Cost Flow (MCF) Problem is to send the required flows from the supply nodes to the demand nodes (that is, satisfying the demand constraints ( 2)), at minimum cost.The flow bound constraints (3), must be satisfied.The demand constraints are also known as mass balance or flow balance constraints.

Maximum flow-minimum cost problem
According to Thomas et al. (2002) in the maximum flow minimum cost problem, the goal is to send as much flow as possible between two nodes, subject to arc capacity limits at the least cost.An instance of the maximum flow problem is a network, G = (s, t, V, E, c, a) , where , s t V  , and a and c are as defined previously.Max flowmin cost is a pseudoflow f, stated as: The Maximum-flow Minimum-cut Theorem: The theorem states that for flow in network G = (V, E, s, t, c), the following three conditions are equivalent: (1) f is a maximum flow in G.
(2) There is no augmenting path in G with respect to f; that is, residual network f G contains no path from s to t.
(3) There is a cut (S, T) in G with |f| = c(S, T).The Maximum-flow Minimum-cut theorem establishes that if the Ford-Fulkerson algorithm terminates, then the flow at termination is a maximum flow.An augmenting path is a residual s-t path.Clearly, if there is an augmenting path in Gf, then we can improve f by sending flow along this path.Ford and Fulkerson showed that the converse is also true.
In the maximum flow problem, we are given a flow network Gf with source s and sink t, we wish to find a flow of maximum value.Given that m breakthrough paths have been determined, the maximum flow, F in the network is the sum, ( 12 ... According to Damian and Garrett (1991b) the maximum flow problem is to send the maximum possible flow from a specified source node (s) to a specified sink node (t).The arc (t, s) is added with 1 ts c  , 0 ts l  and ts u .The supply at each node is set to zero, that is, ( ) 0 bi  for all iN  , as is the cost of each arc ( , ) i j A  .Finally, uij represents the upper bound on flow in arc ( , ) ij to give the following LP formulation:

The study area
The NAAZO Company in Tamale is situated at the center of the town, near the Cultural Centre and Volta River Authority (VRA) main offices.NAAZO has a depot (source s) which stores the Peki crates, and it has retailers (sink t) that stock them at the downstream.NAAZO has a Bottling Division with vehicles that transport the crates of the company to the retailers.Because the vehicles travel on specified routes (edges) between retail communities (vertices) and have a limited capacity, NAAZO can transport at most c(u, v) crates per day between each pair of communities u an d v. NAAZO has no control over the routes and capacities and so cannot alter the flow network.It has retailers across the metropolis.The metropolis has a projected 2013 population of 562,919 (http://en.wikipedia.org/wiki/Tamale,Ghana) according to the 2010 population and housing census figures.

Model of the problem
The task at hand is to model NAAZO Peki distribution network in Tamale as a flow problem.NAAZO's Peki Soft drink distribution problem in TMA is formulated as follows: , t is a sink (retail communities), c(u, v) is capacity function for arc (u, v) and d is distance of arc (u, v).Let C be cost of transporting Q of Peki crates from s to t.Let f(u, v) be flow of Peki from the node u to node v for any community,   , Then the model is: and the skew symmetric constraint, .

Solution procedure
Considering the enormous nature of the variables involved, software called Quantitative Methods (QM) for Windows was used to run the solution.QM is iterative software based on Ford-Fulkerson algorithm of solving maximum flow problems.The program provided the solution after 16 iterations using an average time of 1 min, 30 s of three runs for the average monthly demands.The 1 st , 2 nd , 3 rd , 4 th , and 5 th runs used 1 min 30 s, 1 min 29 s, 1 min 30 s, 1 min 30 s, and 1 min 29 s respectively.An Intel (R) PIII CPU, 1.13 GHz of RAM, a hard drive of 160 GIG with Windows 2007 operator was used.

RESULTS AND DISCUSSION
The results of the solution are shown below.Table 1 shows the detailed results of the various augmented paths for the iterations and the resultant flow of the average monthly demands.It is important to note that demand for Peki in TMA shows seasonal patterns.The off season shows very low demand figures and the peak period shows high demand figures.For the purposes of this study we adopted simple averages.

Conclusions
The Model for NAAZO peki drink is thus:

Figure 1 .
Figure 3.1 Example of Network (V, E) the residual network consists of edges that can admit more flow.It is usually represented by undirected graph of the original network flow.Let f be a flow in G, and consider a pair of vertices , u v V  .The amount of additional flow that can be pushed from u to v before exceeding the capacity c(u, v) is called the residual capacity, remaining capacity of flow left unused with respect to a pseudoflow, f.The residual capacity function f Figure 2. Flow conservation.
If k = n, the sink node has been labeled, and a breakthrough path is found, go to step 5.Else, set ik  and go to step 2.

Table 1 .
Augmented paths of the flows for 1 st run.