It is important to set the parameters correctly in order to take full
advantage of the codes. Particular attention should be paid to the
termination parameters
,
and
, for which
appropriate values are quite problem dependent.
All the parameters are set to their default values by calling the
routine setpars.m. The default values demand high accuracy;
the number of iterations required to meet the termination criteria is reduced
by requesting less accurate solutions.
(see below), then explicitly setting
before calling the solver results in just data validation alone.
is
reduced by approximately a factor of
per iteration in
the last few iterations.
)
, the algorithm terminates. If the infeasibility or
dgap is large, it is recommended to try restarting with
either a reduced value of
or with
and
set to
larger multiples of the identity. This is done automatically when the
driver script sdp.m is used, but is not done if the the
driver script is bypassed with a direct call to the function
fsdp.m.
)
)
reltol is usually set to a value smaller than that of abstol. Successful termination takes place when both the absolute and relative conditions are satisfied. Either one can be relaxed by making the corresponding tolerance large.
(see below), determines when the algorithm
should terminate if significant progress is not taking place.
If
is less than the previous value of
divided by
, then the progress is considered ``sufficient''. This
check is performed only when
has been reduced below
.
(see above),
determines when the algorithm should terminate if significant progress
is not taking place. If the new
is less than
times the previous
, or the new
is
less than
times the previous
, then the loss
of feasibility, if any, is considered ``tolerable''.
Termination occurs if the loss of feasibility was not
``tolerable'' and the reduction in
was not ``sufficient'' to
justify this loss of feasibility. In short, for the default values,
these conditions mean that we are not willing to let the algorithm
continue if the primal or dual infeasibility worsened by a factor
of 5 or more, unless the gap improved by a factor of at least 100.
These parameters attempt to achieve a judicious balance between feasibility
and complementarity by trading the former in return for the latter.
)
or
becomes
greater than
, the algorithm terminates. Unbounded primal (dual)
feasible iterates suggest that the dual (primal) program may be infeasible.
to 1 produces one line of output per
iteration (iteration number, primal and dual step lengths, primal and
dual infeasibilities,
, primal and dual objective values).
Upon termination, summary information is provided by the script sdp.m
regardless of the value of
.
, fsdp.m
makes a check to ensure the initial
and
conform to the block
diagonal structure specified.