-
Notifications
You must be signed in to change notification settings - Fork 1
Description
TODO: Compare current implementation with this pseudocode:
\section{Pseudcodes for Nontopology Optimization}
\begin{algorithm}
\DontPrintSemicolon
\KwIn{The current network
\KwOut{The current network, with optimized non-topology parameters in
score_epsilon
max_rounds_slow
act_rounds_slow
got_better_slow
\While{got_better_slow \textbf{and} act_rounds_slow
score_slow_before
got_better_slow
do_brlen_opt
do_model_opt
do_reticulation_opt
got_better
\While{got_better}{
got_better
score_before
\If{do_model_opt}{
score_before_modelopt
optimizeModel(annNetwork);
score_after_modelopt
\If{score_before_modelopt - score_after_modelopt
{
do_model_opt
}
}
\If{do_brlen_opt}{
score_before_brlenopt
optimizeBranches(annNetwork);
score_after_brlenopt
\If{score_before_brlenopt - score_after_brlenopt
{
do_brlen_opt
}
}
\If{do_reticulation_opt}{
score_before_reticulation_opt
optimizeReticulations(annNetwork);
score_after_reticulation_opt
\If{score_before_reticulation_opt - score_after_reticulation_opt
{
do_reticulation_opt
}
}
score_after
\If{score_before - score_after
{
\If{type
{
got_better
}
}
}
score_slow_after
\If{score_before - score_after
got_better_slow
}
act_rounds_slow += 1;
}
\Return{annNetwork};
\caption{optimizeNonTopology: Optimize all non-topology parameters.}
\label{alg:nontopology_opt}
\end{algorithm}