- Timestamp:
- 07/04/11 10:35:39 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/EventBenchCore/src/de/ugoe/cs/eventbench/models/TrieBasedModel.java
r86 r93 1 1 package de.ugoe.cs.eventbench.models; 2 2 3 import java.security.InvalidParameterException; 4 import java.util.ArrayList; 5 import java.util.LinkedHashSet; 3 6 import java.util.LinkedList; 4 7 import java.util.List; … … 104 107 } 105 108 106 public Set< Event<?>> getEvents() {109 public Set<? extends Event<?>> getEvents() { 107 110 return trie.getKnownSymbols(); 111 } 112 113 public Set<List<? extends Event<?>>> generateSequences(int length) { 114 Set<List<? extends Event<?>>> sequenceSet = new LinkedHashSet<List<? extends Event<?>>>();; 115 if( length<1 ) { 116 throw new InvalidParameterException("Length of generated subsequences must be at least 1."); 117 } 118 if( length==1 ) { 119 for( Event<?> event : getEvents() ) { 120 List<Event<?>> subSeq = new LinkedList<Event<?>>(); 121 subSeq.add(event); 122 sequenceSet.add(subSeq); 123 } 124 return sequenceSet; 125 } 126 Set<? extends Event<?>> events = getEvents(); 127 Set<List<? extends Event<?>>> seqsShorter = generateSequences(length-1); 128 for( Event<?> event : events ) { 129 for( List<? extends Event<?>> seqShorter : seqsShorter ) { 130 Event<?> lastEvent = event; 131 if( getProbability(seqShorter, lastEvent)>0.0 ) { 132 List<Event<?>> subSeq = new ArrayList<Event<?>>(seqShorter); 133 subSeq.add(lastEvent); 134 sequenceSet.add(subSeq); 135 } 136 } 137 } 138 return sequenceSet; 108 139 } 109 140
Note: See TracChangeset
for help on using the changeset viewer.