<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article  PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article"><front><journal-meta><journal-id journal-id-type="publisher-id">AJOR</journal-id><journal-title-group><journal-title>American Journal of Operations Research</journal-title></journal-title-group><issn pub-type="epub">2160-8830</issn><publisher><publisher-name>Scientific Research Publishing</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.4236/ajor.2016.66043</article-id><article-id pub-id-type="publisher-id">AJOR-72099</article-id><article-categories><subj-group subj-group-type="heading"><subject>Articles</subject></subj-group><subj-group subj-group-type="Discipline-v2"><subject>Physics&amp;Mathematics</subject></subj-group></article-categories><title-group><article-title>
 
 
  Dual Based Procedures for Un-Capacitated Minimum Cost Flow Problem
 
</article-title></title-group><contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Priyank</surname><given-names>Sinha</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref><xref ref-type="corresp" rid="cor1"><sup>*</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Renduchintala</surname><given-names>Raghavendra Kumar Sharma</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib></contrib-group><aff id="aff1"><addr-line>Industrial and Management Engineering Department, IIT Kanpur, Kanpur, India</addr-line></aff><author-notes><corresp id="cor1">* E-mail:<email>sinha.priyank25@gmail.com(PS)</email>;</corresp></author-notes><pub-date pub-type="epub"><day>28</day><month>10</month><year>2016</year></pub-date><volume>06</volume><issue>06</issue><fpage>468</fpage><lpage>479</lpage><history><date date-type="received"><day>October</day>	<month>20,</month>	<year>2016</year></date><date date-type="rev-recd"><day>Accepted:</day>	<month>November</month>	<year>15,</year>	</date><date date-type="accepted"><day>November</day>	<month>1,</month>	<year>2016</year></date></history><permissions><copyright-statement>&#169; Copyright  2014 by authors and Scientific Research Publishing Inc. </copyright-statement><copyright-year>2014</copyright-year><license><license-p>This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/</license-p></license></permissions><abstract><p>
 
 
  In this article, we devise two dual based methods for obtaining very good solution to a single stage un-capacitated minimum cost flow problem. These methods are an improvement to the methods already developed by Sharma and Saxena [1]. We further develop a method to extract a very good primal solution from a given dual solution. We later demonstrate the efficacies and the significance of these methods on 150 random problems.
 
</p></abstract><kwd-group><kwd>Min Cost Flow</kwd><kwd> Transshipment</kwd><kwd> Dual</kwd><kwd> Primal</kwd></kwd-group></article-meta></front><body><sec id="s1"><title>1. Introduction</title><p>Un-capacitated min cost flow problem is a special case of min cost flow problem in which arc capacities are assumed to be infinite. Weintraub [<xref ref-type="bibr" rid="scirp.72099-ref2">2</xref>] developed a variant of negative cycle algorithm which searched for the most negative cycle and subsequently introduced it into the feasible flow at each iteration. Later a strongly polynomial time algorithm for min cost flow was developed by Tardos [<xref ref-type="bibr" rid="scirp.72099-ref3">3</xref>] with a computational complexity of O(m<sup>4</sup>). Enhanced capacity scaling algorithm can be used to solve Transshipment problem with computational complexity of O(n log (n) S(n,m)) (Ahuja et al. [<xref ref-type="bibr" rid="scirp.72099-ref4">4</xref>] ). Tardos [<xref ref-type="bibr" rid="scirp.72099-ref3">3</xref>] developed cost scaling algorithm with the computational complexity of O(n<sup>3</sup> log n). In this algorithm, dual optimality conditions are relaxed to form e-optimality conditions. Thus the best primal based methods solve un-capacitated min cost flow problem in O(n<sup>3</sup> log (n)). Recently Juman [<xref ref-type="bibr" rid="scirp.72099-ref5">5</xref>] has presented a heuristic with O(n<sup>3</sup>) running time to solve un-capacitated transportation problem, and is shown to perform better than VAM.</p><p>Successive shortest path algorithm was developed by Busakar and Gowan [<xref ref-type="bibr" rid="scirp.72099-ref6">6</xref>] . This algorithm maintains dual feasibility at each step and iteratively achieves primal feasibility. Edmonds and Karp [<xref ref-type="bibr" rid="scirp.72099-ref7">7</xref>] proposed the first polynomial time algorithm by modifying the method to calculate shortest paths, to solve min cost flow problem with computational complexity of O((n + m) log U). Dual simplex for network flow was first analyzed by Hegason and Kennington [<xref ref-type="bibr" rid="scirp.72099-ref8">8</xref>] . Plotkin and Tardos [<xref ref-type="bibr" rid="scirp.72099-ref3">3</xref>] improved the pivoting strategy with (m<sup>2</sup> log n) bound over the pivoting strategy proposed by Orlin [<xref ref-type="bibr" rid="scirp.72099-ref9">9</xref>] . This improves the number of pivot steps required in dual simplex algorithm. This algorithm runs in O(m<sup>3</sup> log(n)) time. Ali et al. [<xref ref-type="bibr" rid="scirp.72099-ref10">10</xref>] have demonstrated that an efficient execution of each pivot in dual based algorithm requires less iterations as compared to primal based algorithms. This holds true even for the re-optimization process. However, computational effort required per pivot may be higher. Sharma and Sharma [<xref ref-type="bibr" rid="scirp.72099-ref11">11</xref>] have given a new dual based procedure that has obtained solutions within 85% of the optimal.</p><p>Sharma and Saxena [<xref ref-type="bibr" rid="scirp.72099-ref1">1</xref>] have posed the transshipment problem differently. We use the formulation proposed by Sharma and Saxena [<xref ref-type="bibr" rid="scirp.72099-ref1">1</xref>] . We then modify the dual based methods developed by them to obtain better solutions with the same complexity of O(n<sup>2</sup>) and O(n<sup>3</sup>) respectively. We further devise a method to obtain a good primal solution from the dual solutions already obtained. Empirical results on the random 150 problems are given in Appendix 1.</p></sec><sec id="s2"><title>2. Problem Formulation</title><p>We next present the mathematical formulation of the primal problem and dual problem respectively.</p><sec id="s2_1"><title>2.1. Constants of Problem</title><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x2.png" xlink:type="simple"/></inline-formula>refers to the demand at the k<sup>th</sup> demand node, while <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x3.png" xlink:type="simple"/></inline-formula> is the demand at market k</p><p>as a fraction of total market demand. Hence we have <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x4.png" xlink:type="simple"/></inline-formula> and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x5.png" xlink:type="simple"/></inline-formula>, where K is the total number of demand nodes. Similarly <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x6.png" xlink:type="simple"/></inline-formula> refers to units available for transportation at the source node i and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x7.png" xlink:type="simple"/></inline-formula>. If the problem is balanced, then we have<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x8.png" xlink:type="simple"/></inline-formula>, I is the total number of supply nodes. J is total number of</p><p>transshipment nodes. <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x9.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x10.png" xlink:type="simple"/></inline-formula> is the cost of transporting <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x11.png" xlink:type="simple"/></inline-formula> units from node to j and j to k respectively.</p></sec><sec id="s2_2"><title>2.2. Decision Variables</title><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x12.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x13.png" xlink:type="simple"/></inline-formula> is the number of units transported from node i to node j and j to k respectively. We also have <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x14.png" xlink:type="simple"/></inline-formula> and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x15.png" xlink:type="simple"/></inline-formula>.</p></sec><sec id="s2_3"><title>2.3. Primal (P)</title><disp-formula id="scirp.72099-formula3"><graphic  xlink:href="http://html.scirp.org/file/5-1040517x16.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula4"><label>(1)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x17.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula5"><label>(2)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x18.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula6"><label>(3)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x19.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula7"><label>(4)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x20.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula8"><label>(5)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x21.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula9"><graphic  xlink:href="http://html.scirp.org/file/5-1040517x22.png"  xlink:type="simple"/></disp-formula><p>In this formulation we assume flows only in the forward direction. Equation (1) ensures that entire supply is transported to meet the demand, which is valid for the balanced problem. Equation (2) ensures that the total demand is met by the supply. Equations (3) and (4) ensure that individual supply and demand constraints are satisfied, while Equation (4) ensures that no inventory is built at any transshipment node.</p></sec><sec id="s2_4"><title>2.4. Dual of the Problem (DP)</title><p>In this section we present the dual of the problem P. We associate <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x23.png" xlink:type="simple"/></inline-formula> as the dual variables corresponding to (1), (2), (3), (4), (5) respectively. We first state the dual of the problem as DP and then divide it into two parts as DP-source and DP-sink for computational simplicity.</p><p>DP</p><disp-formula id="scirp.72099-formula10"><graphic  xlink:href="http://html.scirp.org/file/5-1040517x24.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula11"><label>(6)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x25.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula12"><label>(7)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x26.png"  xlink:type="simple"/></disp-formula><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x27.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x27.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x28.png" xlink:type="simple"/></inline-formula>Unrestricted in sign</p><p>DP-source</p><disp-formula id="scirp.72099-formula13"><graphic  xlink:href="http://html.scirp.org/file/5-1040517x29.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula14"><label>(8)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x30.png"  xlink:type="simple"/></disp-formula><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x31.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x31.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x32.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x31.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x32.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x33.png" xlink:type="simple"/></inline-formula> unrestricted in sign.</p><p>DP-sink</p><disp-formula id="scirp.72099-formula15"><graphic  xlink:href="http://html.scirp.org/file/5-1040517x34.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula16"><label>(9)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x35.png"  xlink:type="simple"/></disp-formula><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x36.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x36.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x37.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x36.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x37.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x38.png" xlink:type="simple"/></inline-formula> unrestricted in sign.</p></sec></sec><sec id="s3"><title>3. Few Theoretical Results</title><p>We start with development of the heuristic for the dual solution, and then move on to develop the heuristic for the primal. Computational attractiveness of these results will be demonstrated in the later sections through empirical testing. Well known dual based approaches (Orlin [<xref ref-type="bibr" rid="scirp.72099-ref9">9</xref>] , Plotkin and Tardos [<xref ref-type="bibr" rid="scirp.72099-ref3">3</xref>] and Ali et al. [<xref ref-type="bibr" rid="scirp.72099-ref10">10</xref>] ) can be used for our solution to get an advanced start while solving the transshipment problem. We begin by defining the set SPS which is as under-</p><p>SPS = {SP<sub>ik</sub>:SP<sub>ik</sub> is the shortest path between i and k}.</p><p>Problem (TP)</p><disp-formula id="scirp.72099-formula17"><graphic  xlink:href="http://html.scirp.org/file/5-1040517x39.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula18"><label>(10)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x40.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula19"><label>(11)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x41.png"  xlink:type="simple"/></disp-formula><p>and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x42.png" xlink:type="simple"/></inline-formula>,<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x42.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x43.png" xlink:type="simple"/></inline-formula>.</p><p>Theorem 1: Optimal solution of problem TP is equal to optimal solution to problem P.</p><p>Proof: Since upper value of the flow is unbounded, hence optimal flow for a pair of source node and sink node will be on SP<sub>ik</sub>. This ensures that any further reduction in the objective value is not possible. Therefore problem TP gives the optimal solution to problem P. Hence proved.</p></sec><sec id="s4"><title>4. Solution Procedure</title><sec id="s4_1"><title>4.1. Heuristic to Solve Dual of the Problem (H1)</title><p>DP-source and DP-sink are equivalent in structure to DRP1 in Sharma and Murlidhar [<xref ref-type="bibr" rid="scirp.72099-ref12">12</xref>] . Sharma and Murlidhar [<xref ref-type="bibr" rid="scirp.72099-ref12">12</xref>] have given an efficient algorithm to solve DRP1 which can be modified to solve DP-source and DP-sink.</p><p>Step 1. DP-source and DP-sink can be rewritten as under</p><p>DP-source</p><disp-formula id="scirp.72099-formula20"><graphic  xlink:href="http://html.scirp.org/file/5-1040517x44.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula21"><label>(12)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x45.png"  xlink:type="simple"/></disp-formula><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x46.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x46.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x47.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x46.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x47.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x48.png" xlink:type="simple"/></inline-formula> unrestricted in sign.</p><p>DP-sink</p><disp-formula id="scirp.72099-formula22"><graphic  xlink:href="http://html.scirp.org/file/5-1040517x49.png"  xlink:type="simple"/></disp-formula><disp-formula id="scirp.72099-formula23"><label>(13)</label><graphic position="anchor" xlink:href="http://html.scirp.org/file/5-1040517x50.png"  xlink:type="simple"/></disp-formula><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x51.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x51.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x52.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x51.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x52.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x53.png" xlink:type="simple"/></inline-formula> unrestricted in sign.</p><p>Step 2. Find <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x54.png" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x54.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x55.png" xlink:type="simple"/></inline-formula> &quot; all i, j, k and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x54.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x55.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x56.png" xlink:type="simple"/></inline-formula> and remove all the redundant constraints in DP-source and DP-sink (Equations (8) and (9)). In case of tie, only one equation is retained while others are eliminated. This reduces the DP-source and DP-sink to the following form:</p><p>DP-source</p><p>Maximize: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x57.png" xlink:type="simple"/></inline-formula></p><p>s.t <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x58.png" xlink:type="simple"/></inline-formula></p><p>DP-sink</p><p>Maximize: <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x59.png" xlink:type="simple"/></inline-formula></p><p>s.t. <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x60.png" xlink:type="simple"/></inline-formula></p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x61.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x61.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x62.png" xlink:type="simple"/></inline-formula> represent the least cost transportation route between source and transshipment node and transshipment node and sink respectively.</p><p>Step 3. We sort the values of <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x63.png" xlink:type="simple"/></inline-formula> in an increasing order and re-index such that<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x63.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x64.png" xlink:type="simple"/></inline-formula></p><p>Step 4. Since <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x65.png" xlink:type="simple"/></inline-formula> and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x65.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x66.png" xlink:type="simple"/></inline-formula>, we let<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x65.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x66.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x67.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x65.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x66.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x67.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x68.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x65.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x66.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x67.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x68.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x69.png" xlink:type="simple"/></inline-formula>and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x65.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x66.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x67.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x68.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x69.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x70.png" xlink:type="simple"/></inline-formula>. Solution to the problem is given by <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x65.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x66.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x67.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x68.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x69.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x70.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x71.png" xlink:type="simple"/></inline-formula></p><p>We repeat the whole procedure for different increases in values of W<sub>j</sub> &quot; all j and retain the best solution.</p><p>It may be noted that when we increase/decrease the value of W<sub>j</sub> &quot; j, DP-source increases while DP-sink decreases as per the structure of DP-source and DP-sink. Actually all four possibilities are there for a general case. Our algorithm here intends to balance value of W<sub>j</sub> for the best trade-off possible.</p><p>Result 1: Computational complexity of A1 is O(n<sup>2</sup>).</p><p>Proof: Complexity of algorithm is dominated by step 2 which can be solved in O(n2) time.</p></sec><sec id="s4_2"><title>4.2. Heuristic to Solve Dual of the Problem (H2)</title><p>In the previous algorithm, we tinkered with value of <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x72.png" xlink:type="simple"/></inline-formula> along<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x72.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x73.png" xlink:type="simple"/></inline-formula>. There is no reason as to why we should not tinker with the values of <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x72.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x74.png" xlink:type="simple"/></inline-formula> along<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x72.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x75.png" xlink:type="simple"/></inline-formula>. <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x72.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x75.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x76.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x72.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x75.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x76.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x77.png" xlink:type="simple"/></inline-formula> are achieved simultaneously along <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x72.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x75.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x76.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x77.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x78.png" xlink:type="simple"/></inline-formula> in this method. <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x72.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x75.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x76.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x77.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x78.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x79.png" xlink:type="simple"/></inline-formula>and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x72.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x75.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x76.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x77.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x78.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x79.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x80.png" xlink:type="simple"/></inline-formula> are defined as source slack and sink slack respectively <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x72.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x73.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x74.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x75.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x76.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x77.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x78.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x79.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x80.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x81.png" xlink:type="simple"/></inline-formula> in the later sections. Next we describe this heuristic in detail.</p><p>Step 0: Set W<sub>j</sub> = 0 ∀ j = 1, …, J.</p><p>Step 1: Compute max_value of DP_source and DP_sink, set current_best_DP = objective function value of (DP source + DP-sink), set j = 0.</p><p>Step 2: j = j + 1; if j &gt; J then stop or else go to step 3.</p><p>Step 3: Increase value of W<sub>j</sub> in steps and compute for each value of W<sub>j</sub>: max_value of DP-source and DP-sink.</p><p>Step 4: Set current_DP = objective function value of (DP-source + DP-sink).</p><p>If current_DP &gt; current_best_DP then current_best_DP = current_DP go to step 3, else go to step 2.</p><p>Result 2: Heuristic 2 runs in O(n<sup>3</sup>) time.</p><p>Proof: Complexity of the step is heuristic is dominated by step 3 which can be completed in O(n<sup>3</sup>) steps.</p></sec><sec id="s4_3"><title>4.3. Development of the Heuristic to Obtain a Good Primal Solution (H3)</title><p>In this section we will develop a primal heuristic by utilizing the complimentary slackness condition. This heuristic extracts a good primal solution from a good dual solution by utilizing complimentary slackness condition. Let us denote the solution of DP by</p><p>V<sub>sso</sub>, V<sub>ssi</sub>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x82.png" xlink:type="simple"/></inline-formula>,<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x83.png" xlink:type="simple"/></inline-formula>. We further define l<sub>j</sub>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x84.png" xlink:type="simple"/></inline-formula> and l<sub>k</sub>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x84.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x85.png" xlink:type="simple"/></inline-formula>as <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x84.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x85.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x86.png" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x84.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x85.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x86.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x87.png" xlink:type="simple"/></inline-formula> where <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x84.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x85.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x86.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x87.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x88.png" xlink:type="simple"/></inline-formula> and <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x82.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x83.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x84.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x85.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x86.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x87.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x88.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x89.png" xlink:type="simple"/></inline-formula>. Slack S<sub>so</sub> and S<sub>si</sub> is defined as following:</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x90.png" xlink:type="simple"/></inline-formula>and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x90.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x91.png" xlink:type="simple"/></inline-formula>. If S<sub>so</sub> = 0 and S<sub>si</sub> = 0, then <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x90.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x91.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x92.png" xlink:type="simple"/></inline-formula> and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x90.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x91.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x92.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x93.png" xlink:type="simple"/></inline-formula>. X<sub>ij</sub> and X<sub>jk</sub> can assume a positive value if for the corresponding i and k, we have <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x90.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x91.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x92.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x93.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x94.png" xlink:type="simple"/></inline-formula> and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x90.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x91.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x92.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x93.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x94.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x95.png" xlink:type="simple"/></inline-formula>. According to the complimentary slackness condition, X<sub>ij</sub> = 0 and X<sub>jk</sub> = 0 when <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x90.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x91.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x92.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x93.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x94.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x95.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x96.png" xlink:type="simple"/></inline-formula> and<inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x90.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x91.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x92.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x93.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x94.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x95.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x96.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x97.png" xlink:type="simple"/></inline-formula>. Let S<sub>so</sub> and S<sub>si</sub> be the source and</p><p>sink slacks respectively, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x98.png" xlink:type="simple"/></inline-formula>and DN<sub>ik</sub> = SP<sub>ik</sub> &#215; X<sub>ik</sub>. DN<sub>ik</sub> is</p><p>then referred to as deviation number. If SP<sub>ik</sub> = 0, then we can send a positive flow along this arc without violating the Complimentary slackness property. However if SP<sub>ik</sub> &gt; 0, then flow along this has to be zero if complimentary slackness property is not to be violated. As we are working with good dual solution (and not optimal dual solution), we may have to send positive flow along a path (i,k) even if SP<sub>ik</sub> &gt; 0. But the heuristic so described tries to minimize DN<sub>ik</sub> and hence keep complementary slackness violations as low as possible to get good primal solution. If at the end of execution of algorithm DN = 0, then we have the optimal primal solution. In this way DN<sub>ik</sub> is similar to Kilter number (ref OUT-OF-KILTER algorithm (a primal dual approach) [<xref ref-type="bibr" rid="scirp.72099-ref13">13</xref>] for solving general min-cost-flow problem).</p><p>We find shortest path from every source node ‘i’ to every sink node ‘k’ using these slacks as weights, and then make the allocations according to shortest path available. Detailed heuristic is described as under.</p><p>Step 0: X<sub>ij</sub> = X<sub>jk</sub> = 0, S<sub>i</sub><sub>1k1</sub> = 0 &quot;all i, j and k.</p><p>Step 1: Compute S<sub>ik</sub> = S<sub>so</sub> + S<sub>si</sub> &quot;all j and particular i and k.</p><p><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x99.png" xlink:type="simple"/></inline-formula>, <inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x99.png" xlink:type="simple"/></inline-formula><inline-formula><inline-graphic xlink:href="http://html.scirp.org/file/5-1040517x100.png" xlink:type="simple"/></inline-formula></p><p>And S<sub>ik</sub><sub>’</sub> = S<sub>so</sub><sub>’</sub> + S<sub>si</sub><sub>’</sub> &quot;j’ &#185; j for the same i, k.</p><p>If S<sub>ik’</sub> &lt; S<sub>ik</sub> then S<sub>i</sub><sub>1k1</sub> = S<sub>ik</sub><sub>’</sub>, Repeat the step &quot;i, j and k.</p><p>Step 2: Find i and k: d<sub>k</sub> &gt; 0 and b<sub>i</sub> &gt; 0.</p><p>If S<sub>i</sub><sub>1k1</sub> &lt; S<sub>i</sub><sub>2k2</sub>: i1 &#185; i2 or k1 &#185; k &quot;all i and k then X<sub>ij</sub> = X<sub>jk</sub> = S<sub>i</sub><sub>1k1</sub> = min(b<sub>i</sub>, d<sub>k</sub>) = a<sup>*</sup>, b<sub>i</sub> = b<sub>i</sub> − a<sup>*</sup>, d<sub>k</sub> = d<sub>k</sub> − a<sup>*</sup>.</p><p>Step 3: Stop.</p><p>Result 3: Heuristic H2 runs in O(n2) time.</p><p>Proof: Complexity is dominated by the step 1 which is sorting and can be solved in O(n<sup>2</sup>).</p></sec></sec><sec id="s5"><title>5. Results and Discussion</title><p>We have solved 150 random problems of varying sizes using methods proposed in this article and the ones developed by Sharma and Saxena [<xref ref-type="bibr" rid="scirp.72099-ref1">1</xref>] . We performed one tail paired-test and F-test on the results. Results of paired t-test are as follows. In terms of duality gap, Subroutine S3(O(n<sup>3</sup>)) performs better than subroutine S2(O(n2)) with the statistical significance of 0.00722 (p-value) in Sharma and saxena [<xref ref-type="bibr" rid="scirp.72099-ref1">1</xref>] . Similarly in terms of duality gap, H2(O(n<sup>3</sup>)) in this paper performs better than H1(O(n<sup>2</sup>)) with a statistical significance of 0.000419 (p-value). H2(O(n<sup>3</sup>)) in this article performs better than S3(O(n<sup>2</sup>)) form Sharma and saxena [<xref ref-type="bibr" rid="scirp.72099-ref1">1</xref>] with a statistical significance of 2.94E−15. For F-test, F-statistic was calculated to be 58.31 as against the f-critical value of 2.62. P-value was calculated to be 4.05E−32. In terms of computational time, no significant difference is registered between these methods, however methods in this paper perform slightly better than those proposed in Sharma and saxena [<xref ref-type="bibr" rid="scirp.72099-ref1">1</xref>] . This is largely due to the fact that we calculate shortest path between the source nodes and sink nodes in contrast to shortest path individually between source and transshipment nodes and transshipment nodes and sink nodes respectively. This method is better computationally.</p></sec><sec id="s6"><title>6. Conclusion</title><p>In this work we have developed computationally efficient dual based method to achieve good solution to un-capacitated transshipment problem. As stated earlier, available primal and dual based approaches are capable of solving un-capacitated transshipment problem in O(n<sup>3</sup> log(n)) and O(m<sup>3</sup> log(n)) time respectively. Computational complexities of H1, H2 and H3 are O(n<sup>2</sup>), O(n<sup>3</sup>) and O(n<sup>2</sup>) respectively. Later we intend to extend this work to General Minimum Cost Flow Problem which would have additional capacity constraints on the arcs.</p></sec><sec id="s7"><title>Cite this paper</title><p>Sinha, P. and Sharma, R.R.K. (2016) Dual Based Procedures for Un-Capacitated Minimum Cost Flow Problem. American Journal of Operations Research, 6, 468-479. http://dx.doi.org/10.4236/ajor.2016.66043</p></sec><sec id="s8"><title>Appendix 1</title><p>Results of 150 Problems.</p></sec></body><back><ref-list><title>References</title><ref id="scirp.72099-ref1"><label>1</label><mixed-citation publication-type="other" xlink:type="simple">Clasen, R.J. (1968) The Numerical Solution of Network Problems Using the Out-of-Kilter Algorithm. No. RM-5456-PR. RAND CORP Santa Monica.</mixed-citation></ref><ref id="scirp.72099-ref2"><label>2</label><mixed-citation publication-type="other" xlink:type="simple">Sharma, R.R.K. and Muralidhar, A. (2009) A New Formulation and Relaxation of the Simple Plant Location Problem. Asia-Pacific Journal of Operational Research, 26, 1-11.  
https:/doi.org/10.1142/S0217595909002122</mixed-citation></ref><ref id="scirp.72099-ref3"><label>3</label><mixed-citation publication-type="other" xlink:type="simple">Sharma, R.R.K. and Sharma, K.D. (2000) A New Dual Based Procedure for the Transportation Problem. European Journal of Operational Research, 122, 611-624.  
https:/doi.org/10.1016/S0377-2217(99)00081-8</mixed-citation></ref><ref id="scirp.72099-ref4"><label>4</label><mixed-citation publication-type="other" xlink:type="simple">Ali, A.I., Padman, R. and Thiagarajan, H. (1989) Dual Algorithms for Pure Network Problems. Operations Research, 37, 159-171. https:/doi.org/10.1287/opre.37.1.159</mixed-citation></ref><ref id="scirp.72099-ref5"><label>5</label><mixed-citation publication-type="other" xlink:type="simple">Orlin, J.B. (1984) Genuinely Polynomial Simplex and Non-Simplex Algorithms for Minimum Cost Problems. Technical Report 1615-84, Sloan School of Management, MIT, Cambridge, MA.</mixed-citation></ref><ref id="scirp.72099-ref6"><label>6</label><mixed-citation publication-type="other" xlink:type="simple">Helgason, R.V. and Kennington, J.L. (1977) An Efficient Procedure for Implementing a Dual Simplex Network Flow Algorithm. AIIE Transactions, 9, 63-68.  
https:/doi.org/10.1080/05695557708975122</mixed-citation></ref><ref id="scirp.72099-ref7"><label>7</label><mixed-citation publication-type="other" xlink:type="simple">Edmonds, J. and Karp, R.M. (1972) Theoretical Improvements in Algorithmic Efficiency for Network Flow Problems. Association for Computing Machinery Journal, 19, 248-264.</mixed-citation></ref><ref id="scirp.72099-ref8"><label>8</label><mixed-citation publication-type="other" xlink:type="simple">Busaker, R.G. and Gowen, P.J. (1961) A Procedure for determining Minimal-Cost Flow Network Patterns. Tech. Rep. ORO-15, Operational Research Office, Johns Hopkins University, Baltimore.</mixed-citation></ref><ref id="scirp.72099-ref9"><label>9</label><mixed-citation publication-type="other" xlink:type="simple">Juman, Z.A.M.S. and Hoque, M.A. (2015) An Efficient Heuristic to Obtain a Better Initial Feasible Solution to the Transportation Problem. Applied Soft Computing, 34, 813-826.  
https:/doi.org/10.1016/j.asoc.2015.05.009</mixed-citation></ref><ref id="scirp.72099-ref10"><label>10</label><mixed-citation publication-type="other" xlink:type="simple">Ahuja, R.K. (1993) Network Flows. PhD Thesis, Technische Hochshule Darmstadt, Darmstadt.</mixed-citation></ref><ref id="scirp.72099-ref11"><label>11</label><mixed-citation publication-type="other" xlink:type="simple">Plotkin, S.A. and Tardos, E. (1990) Improved Dual Network Simplex. Proceedings of the 1st Annual ACM-SIAM Symposium on Discrete Algorithms, Society for Industrial and Applied Mathematics, San Francisco, 22-24 January 1990, 367-376.</mixed-citation></ref><ref id="scirp.72099-ref12"><label>12</label><mixed-citation publication-type="other" xlink:type="simple">Weintraub, A. (1974) A Primal Algorithm to Solve Network Flow Problems with Convex Costs. Management Science, 21, 87-97. https:/doi.org/10.1287/mnsc.21.1.87</mixed-citation></ref><ref id="scirp.72099-ref13"><label>13</label><mixed-citation publication-type="other" xlink:type="simple">Sharma, R.R.K. and Saxena, A. (2002) Dual Based Procedures for the Special Case of Transshipment Problem. Operation Research, 39, 177-188.</mixed-citation></ref></ref-list></back></article>