GAMS/PATH User Guide Version 4.3
GAMS/PATH User Guide Version 4.3
GAMS/PATH User Guide Version 4.3
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
as a merit function. However, the residual of the normal map is not differentiable,<br />
meaning that if a subproblem is not solvable then a “steepest<br />
descent” step on this function cannot be taken. <strong>PATH</strong> 4.x considers an alternative<br />
nonsmooth system [21], Φ(x) =0,whereΦi(x) =φ(xi,Fi(x)) and<br />
φ(a, b) := √ a 2 + b 2 −a−b. The merit function, Φ(x) 2 ,inthiscaseisdifferentiable,<br />
and is used for globalization purposes. When the subproblem solver<br />
fails, a projected gradient direction for this merit function is searched. It is<br />
shown in [14] that this provides descent and a new feasible point to continue<br />
<strong>PATH</strong>, and convergence to stationary points and/or solutions of the MCP is<br />
provided under appropriate conditions.<br />
The remainder of this chapter details the interpretation of output from<br />
<strong>PATH</strong> and ways to modify the behavior of the code. To this end, we will assume<br />
that the modeler has created a file named transmcp.gms which defines<br />
an MCP model transport asdescribedinSection1.1andisusing<strong>PATH</strong><br />
4.x to solve it. See Section 1.3 for information on changing the solver.<br />
2.1 Log File<br />
We will now describe the behavior of the <strong>PATH</strong> algorithm in terms of the<br />
output typically produced. An example of the log for a particular run is<br />
given in Figure 2.1 and Figure 2.2.<br />
The first few lines on this log file are printed by <strong>GAMS</strong> during its compilation<br />
and generation phases. The model is then passed off to <strong>PATH</strong> at<br />
the stage where the “Executing <strong>PATH</strong>” line is written out. After some basic<br />
memory allocation and problem checking, the <strong>PATH</strong> solver checks if the<br />
modeler required an option file to be read. In the example this is not the<br />
case. If <strong>PATH</strong> is directed to read an option file (see Section 2.4 below), then<br />
the following output is generated after the <strong>PATH</strong> banner.<br />
Reading options file <strong>PATH</strong>.OPT<br />
> output_linear_model yes;<br />
Options: Read: Line 2 invalid: hi_there;<br />
Read of options file complete.<br />
If the option reader encounters an invalid option (as above), it reports this<br />
but carries on executing the algorithm. Following this, the algorithm starts<br />
working on the problem.<br />
21