Search in sources :

Example 1 with MLOptimizer

use of dr.inference.ml.MLOptimizer in project beast-mcmc by beast-dev.

the class MLOptimizerParser method parseXMLObject.

public Object parseXMLObject(XMLObject xo) throws XMLParseException {
    int chainLength = xo.getIntegerAttribute(CHAIN_LENGTH);
    OperatorSchedule opsched = null;
    dr.inference.model.Likelihood likelihood = null;
    ArrayList<Logger> loggers = new ArrayList<Logger>();
    for (int i = 0; i < xo.getChildCount(); i++) {
        Object child = xo.getChild(i);
        if (child instanceof dr.inference.model.Likelihood) {
            likelihood = (dr.inference.model.Likelihood) child;
        } else if (child instanceof OperatorSchedule) {
            opsched = (OperatorSchedule) child;
        } else if (child instanceof Logger) {
            loggers.add((Logger) child);
        } else {
            throw new XMLParseException("Unrecognized element found in optimizer element:" + child);
        }
    }
    Logger[] loggerArray = new Logger[loggers.size()];
    loggers.toArray(loggerArray);
    return new MLOptimizer("optimizer1", chainLength, likelihood, opsched, loggerArray);
}
Also used : Likelihood(dr.inference.model.Likelihood) OperatorSchedule(dr.inference.operators.OperatorSchedule) Likelihood(dr.inference.model.Likelihood) ArrayList(java.util.ArrayList) Logger(dr.inference.loggers.Logger) MLOptimizer(dr.inference.ml.MLOptimizer)

Aggregations

Logger (dr.inference.loggers.Logger)1 MLOptimizer (dr.inference.ml.MLOptimizer)1 Likelihood (dr.inference.model.Likelihood)1 OperatorSchedule (dr.inference.operators.OperatorSchedule)1 ArrayList (java.util.ArrayList)1