|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.biojava.utils.AbstractChangeable
org.biojava.bio.dp.WMAsMM
public class WMAsMM
Wraps a weight matrix up so that it appears to be a very simple HMM.
| Field Summary |
|---|
| Fields inherited from interface org.biojava.bio.dp.MarkovModel |
|---|
ARCHITECTURE, PARAMETER |
| Constructor Summary | |
|---|---|
WMAsMM(WeightMatrix wm)
|
|
| Method Summary | |
|---|---|
void |
addState(State toAdd)
Adds a state to the model. |
int[] |
advance()
The maximum advance for this model. |
boolean |
containsTransition(State from,
State to)
Returns wether a transition exists or not. |
void |
createTransition(State from,
State to)
Makes a transition between two states legal. |
void |
destroyTransition(State from,
State to)
Breaks a transition between two states legal. |
Alphabet |
emissionAlphabet()
Alphabet that is emitted by the emission states. |
Distribution |
getWeights(State source)
Get a probability Distribution over the transition from 'source'. |
int |
heads()
The number of heads on this model. |
protected int |
index(State s)
|
MagicalState |
magicalState()
The MagicalState for this model. |
void |
registerWithTrainer(ModelTrainer modelTrainer)
|
void |
removeState(State toAdd)
Remove a state from the model. |
void |
setWeights(State source,
Distribution dist)
Set the probability distribution over the transitions from 'source'. |
FiniteAlphabet |
stateAlphabet()
FiniteAlphabet of the states. |
FiniteAlphabet |
transitionsFrom(State from)
Returns the FiniteAlphabet of all states that have a transition from 'source'. |
FiniteAlphabet |
transitionsTo(State to)
Returns the FiniteAlphabet of all states that have a transition to 'dest'. |
| Methods inherited from class org.biojava.utils.AbstractChangeable |
|---|
addChangeListener, addChangeListener, generateChangeSupport, getChangeSupport, hasListeners, hasListeners, isUnchanging, removeChangeListener, removeChangeListener |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.biojava.utils.Changeable |
|---|
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener |
| Constructor Detail |
|---|
public WMAsMM(WeightMatrix wm)
throws IllegalSymbolException
IllegalSymbolException| Method Detail |
|---|
public int[] advance()
MarkovModelEach head consumes a single SymbolList. However, the states that advance through that SymbolList may emit more than one symbol at a time. This array give the maximum advance in each direction.
advance in interface MarkovModelpublic Alphabet emissionAlphabet()
MarkovModel
emissionAlphabet in interface MarkovModelpublic FiniteAlphabet stateAlphabet()
MarkovModelWe are modeling a finite-state-machine, so there will be a finite set of states.
The MagicalState returned by getMagicalState is always contained within this as the start/end state.
stateAlphabet in interface MarkovModelpublic int heads()
MarkovModelEach head consumes a single SymbolList. A single-head model just consumes/ emits a single sequence. A two-head model performs alignment between two sequences (e.g. smith-waterman). Models with more heads do more interesting things.
heads() should equal advance().length.
heads in interface MarkovModelpublic MagicalState magicalState()
MarkovModel
magicalState in interface MarkovModel
public Distribution getWeights(State source)
throws IllegalSymbolException
MarkovModel
getWeights in interface MarkovModelsource - the State currently occupied
IllegalSymbolException - if from is not a legal state
public void setWeights(State source,
Distribution dist)
throws ChangeVetoException
MarkovModelThis should throw an IllegalAlphabetException if the source alphabet in 'dist' is not the same alphabet as returned by transitionsFrom(source).
setWeights in interface MarkovModelsource - the source Statedist - the new distribution over transitions from 'source'
ChangeVetoException - if for any reason the distribution can't be
replaced at this time
public FiniteAlphabet transitionsFrom(State from)
throws IllegalSymbolException
MarkovModel
transitionsFrom in interface MarkovModelfrom - the source State
IllegalSymbolException
public FiniteAlphabet transitionsTo(State to)
throws IllegalSymbolException
MarkovModel
transitionsTo in interface MarkovModelto - the destination state
IllegalSymbolException
public void registerWithTrainer(ModelTrainer modelTrainer)
throws BioException
BioException
public void createTransition(State from,
State to)
throws ChangeVetoException
MarkovModelThis should inform each TransitionListener that a transition is to be created using preCreateTransition, and if none of the listeners fire a ChangeVetoException, it should create the transition, and then inform each TransitionListener with postCreateTransition.
createTransition in interface MarkovModelfrom - the State currently occupiedto - the State to move to
ChangeVetoException - if creating the transition is vetoed
public void destroyTransition(State from,
State to)
throws ChangeVetoException
MarkovModelThis should inform each TransitionListener that a transition is to be broken using preDestroyTransition, and if none of the listeners fire a ChangeVetoException, it should break the transition, and then inform each TransitionListener with postDestroyTransition.
destroyTransition in interface MarkovModelfrom - the State currently occupiedto - the State to move to
ChangeVetoException - if breaking the transition is vetoed
public void addState(State toAdd)
throws IllegalSymbolException,
ChangeVetoException
MarkovModel
addState in interface MarkovModeltoAdd - the state to add
IllegalSymbolException - if the state is not valid or is a MagicalState
ChangeVetoException - if either the model does not allow states to
be added, or the change was vetoed
public void removeState(State toAdd)
throws IllegalSymbolException,
ChangeVetoException
MarkovModelStates should not be removed untill they are involved in no transitions. This is to avoid producing corrupted models by accident.
removeState in interface MarkovModeltoAdd - the state to remove
IllegalSymbolException - if the symbol is not part of this model
or a MagicalState
ChangeVetoException - if either the model does not allow states to
be removed, or the change was vetoed
public boolean containsTransition(State from,
State to)
throws IllegalSymbolException
MarkovModel
containsTransition in interface MarkovModelfrom - the transitin sourceto - the transition destination
IllegalSymbolException - if either from or to are not states in this
modelprotected int index(State s)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||