/** * {@inheritDoc} */ @Override public void addDynamicEvidence(DynamicAssignment assignment_) { if (this.sequenceID != -1 && this.sequenceID != assignment_.getSequenceID()) throw new IllegalArgumentException("The sequence ID does not match. If you want to change the sequence, invoke reset method"); if (this.timeID >= assignment_.getTimeID()) throw new IllegalArgumentException("The provided assignment is not posterior to the previous provided assignment."); this.assignment = assignment_; }
/** * {@inheritDoc} */ @Override public void addDynamicEvidence(DynamicAssignment assignment_) { if (this.sequenceID!= -1 && this.sequenceID != assignment_.getSequenceID()) throw new IllegalArgumentException("The sequence ID does not match. If you want to change the sequence, invoke reset method"); if (this.timeID>= assignment_.getTimeID()) throw new IllegalArgumentException("The provided assignment is not posterior to the previous provided assignment."); this.assignment = assignment_; }
/** * {@inheritDoc} */ @Override public void addDynamicEvidence(DynamicAssignment assignment_) { if (this.sequenceID!= -1 && this.sequenceID != assignment_.getSequenceID()) throw new IllegalArgumentException("The sequence ID does not match. If you want to change the sequence, invoke reset method"); if (this.timeID>= assignment_.getTimeID()) throw new IllegalArgumentException("The provided assignment is not posterior to the previous provided assignment."); this.assignment = assignment_; }
return; long sequenceID = evidence.get(0).getSequenceID(); for(DynamicAssignment dynAssig : evidence) { if (dynAssig.getSequenceID()!=sequenceID) { System.out.println("Error: Different sequence IDs in the evidence"); System.exit(-15);
public static void main(String[] args) throws Exception{ Stopwatch watch = Stopwatch.createStarted(); DynamicBayesianNetworkGenerator dbnGenerator = new DynamicBayesianNetworkGenerator(); dbnGenerator.setNumberOfContinuousVars(0); dbnGenerator.setNumberOfDiscreteVars(3); dbnGenerator.setNumberOfStates(2); DynamicBayesianNetwork network = DynamicBayesianNetworkGenerator.generateDynamicNaiveBayes(new Random(0), 2, true); DynamicBayesianNetworkSampler sampler = new DynamicBayesianNetworkSampler(network); sampler.setSeed(0); DataStream<DynamicDataInstance> dataStream = sampler.sampleToDataBase(3,2); DataStreamWriter.writeDataToFile(dataStream, "./datasets/simulated/dnb-samples.arff"); System.out.println(watch.stop()); for (DynamicAssignment dynamicdataassignment : sampler.sampleToDataBase(3, 2)){ System.out.println("\n Sequence ID" + dynamicdataassignment.getSequenceID()); System.out.println("\n Time ID" + dynamicdataassignment.getTimeID()); System.out.println(dynamicdataassignment.outputString()); } } }