boolean eqs = true; if (this.parentSetTime0.size() != dyndag.getParentSetsTime0().size()) { return false; } else { while (i < this.parentSetTime0.size() && eqs) { if (this.getParentSetsTime0().get(i).equals(dyndag.getParentSetsTime0().get(i))) { i++; } else { i = 0; while (i < this.parentSetTimeT.size() && eqs) { if (this.getParentSetsTime0().get(i).equals(dyndag.getParentSetsTime0().get(i))) { i++; } else {
/** * Creates a new EF_BayesianNetwork object given a {@link DynamicDAG} object. * @param dag a {@link DynamicDAG} object. */ public EF_DynamicBayesianNetwork(DynamicDAG dag) { this.bayesianNetworkTime0 = new EF_BayesianNetwork(dag.getParentSetsTime0()); this.bayesianNetworkTimeT = new EF_BayesianNetwork(dag.getParentSetsTimeT()); }
/** * Sets the dynamic DAG for this this DynamicPlateauStructure. * @param dbnModel a {@link DynamicDAG} object. */ public void setDBNModel(DynamicDAG dbnModel) { this.dbnModel = dbnModel; List<EF_ConditionalDistribution> distTim0 = this.dbnModel.getParentSetsTime0().stream().map(pSet -> pSet.getMainVar().getDistributionType().<EF_ConditionalDistribution>newEFConditionalDistribution(pSet.getParents())).collect(Collectors.toList()); this.setEFBayesianNetworkTime0(new EF_LearningBayesianNetwork(distTim0)); List<EF_ConditionalDistribution> distTimT = this.dbnModel.getParentSetsTimeT().stream().map(pSet -> pSet.getMainVar().getDistributionType().<EF_ConditionalDistribution>newEFConditionalDistribution(pSet.getParents())).collect(Collectors.toList()); this.setEFBayesianNetworkTimeT(new EF_LearningBayesianNetwork(distTimT)); }