Biorithm  1.1
Public Member Functions | Protected Member Functions | Protected Attributes
MyOneVersusAllSemiHierarchicalHopfieldGainAlgo Class Reference
Inheritance diagram for MyOneVersusAllSemiHierarchicalHopfieldGainAlgo:
MyOneVersusAllHopfieldGainAlgo MyOneVersusAllGainAlgo MyAbstractGainAlgo< MyGainTriStateType > MyReallyAbstractGainAlgo MyOneVersusAllHierarchicalHopfieldGainAlgo

List of all members.

Public Member Functions

 MyOneVersusAllSemiHierarchicalHopfieldGainAlgo (MyGainGraph &g, MyAnnotations &a, MyGainParams &p, Reporter &r, GeneOntology *go)
virtual void computePredictions (const BioFunction &function, const MyNodeIdList &nodesToAnnotate, MyNodeIdList &predictedNodes)
virtual void initialiseNodeStates (const BioFunction &function, MyNodeIdList &nodesToAnnotate)
virtual string getName ()
virtual void initialiseAlgorithm ()
virtual void printStatistics (ostream &statsStream)

Protected Member Functions

void _storeResults (const BioFunction &function)

Protected Attributes

map< BioFunction, map
< MyNodeId, MyGainTriStateType > > 
_allInitialStates
map< BioFunction, map
< MyNodeId, MyGainTriStateType > > 
_allFinalStates
vector< MyNodeId > _globalNodePermutation
map< MyNodeId, unsigned int > _globalNodePermutationMap
map< GOFunction *, unsigned int > _numProcessedChildren
unsigned int _numStatesFixedAtStart
map< string, set< string > > _statesFixedAtStart

Detailed Description

of MyOneVersusAllHopfieldGainAlgo. When functions are arranged in a DAG (e.g., in the Gene Ontology), this algorithm exploits results obtained for a function's parents in order to compute results for the function. However, this approach does not completely ensure that the predictions follow GO's true path rule, because a gene may have initial state -1 for an ancestor of a function that the gene is predicted to have. To achieve complete consistency with GO's true path rule, use MyOneVersusAllHierarchicalHopfieldGainAlgo.

Warning:
The algorithm assumes that the caller is invoking the algorithm in the right order of functions.

Member Function Documentation

void MyOneVersusAllSemiHierarchicalHopfieldGainAlgo::computePredictions ( const BioFunction function,
const MyNodeIdList &  nodesToAnnotate,
MyNodeIdList &  predictedNodes 
) [virtual]

Compute which genes in nodesToAnnotate MyOneVersusAllGainAlgo::run() predicts has the function. Since different algorithms may have different methods for predicting a function, this method must be implemented separately for each class.

Parameters:
nodesToAnnotate,aninstance of MyNodeIdList, the nodes that run() tried to annotate.
predictedNodes,aninstance of MyNodeIdList, the nodes that run() predicts as having the function.

Reimplemented from MyOneVersusAllGainAlgo.

virtual string MyOneVersusAllSemiHierarchicalHopfieldGainAlgo::getName ( ) [inline, virtual]

Return the name of the algorithm.

Reimplemented from MyOneVersusAllHopfieldGainAlgo.

Reimplemented in MyOneVersusAllHierarchicalHopfieldGainAlgo.

Initialise internal data structures for the algorithm.

Reimplemented from MyReallyAbstractGainAlgo.

void MyOneVersusAllSemiHierarchicalHopfieldGainAlgo::initialiseNodeStates ( const BioFunction function,
MyNodeIdList &  nodesToAnnotate 
) [virtual]

Initialise the states of the nodes in the graph. Each node annotated with function gets the state ANNOTATED_STATE; these nodes are "clamped," i.e., the algorithm will not change their states. All other nodes get the state HYPOTHETICAL_STATE. The algorithm may change the states of these nodes. In other words, these nodes are not clamped. The argument nodesToAnnotate contains the IDs of the unclamped nodes.

Reimplemented from MyOneVersusAllGainAlgo.

void MyOneVersusAllSemiHierarchicalHopfieldGainAlgo::printStatistics ( ostream &  statsStream) [virtual]

Print statistics about the performance of the algorithm.

For this algorithm, this method simply prints the number of iterations taken to achieve convergence.

Reimplemented from MyOneVersusAllGainAlgo.


The documentation for this class was generated from the following files:
 All Classes Functions Variables Typedefs Friends