<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><i>I am guessing the way to find a good initial tree with an initial solution that has fewer than #sources+#sinks-1 arcs is to find arcs with minimal cost to make the initial solution into a spanning tree. I am still figuring out if this is correct / how I would implement it.<br></i></div></div></blockquote><div><br></div><div> I tried this and the algorithm still does degenerate pivots. And, indeed, I came up with a small theoretical example where the algorithm still finds an arc with negative reduced cost despite initialising with minimal cost arcs.<br><br></div><div>So, I am still wondering if there is a way to set the zero-flow arcs such that, if given the optimal solution, the algorithm does no iterations, i.e. no other arc has negative reduced cost. Anyone got any ideas on this?<br><br></div><div>Also, I have coded another version of the initialisation where I use the standard LEMON initialisation <i>after</i> having added the arcs with positive flow, thus I only add an artificial arc if needed. So the number of artificial arcs is equal to the number of nodes minus the number of positive flow arcs in my initialisation. And in this initialisation, I only give the positive flow arcs, no need to input a spanning tree.<br><br></div><div>This seems to work OK (see joint file).<br><br></div><div>Matthew<br></div></div></div></div>