Biorithm
1.1
|
This class implements the Vanilla algorithm. More...
#include <reconciliation-algorithms.h>
Public Member Functions | |
Vanilla (MyGraph &graph, MyPointSet &weights, double q, double maxIters, double epsilon, string output) | |
Vanilla (vector< MyGraph > &graphs, double q, double maxIters, double epsilon, string outputPrefix) | |
virtual | ~Vanilla () |
Destructor. | |
virtual string | getName () |
Return the name of the Vanilla algorithm. | |
Protected Member Functions | |
virtual void | _updateNodeWeightA (MyNode node) |
Update the weight of a node in the current graph according to the Vanilla update function. | |
virtual pair< double, double > | _computeEnergy () |
Compute the node sum and edge sum from the Vanilla energy function. |
This class implements the Vanilla algorithm.
Vanilla::Vanilla | ( | MyGraph & | graph, |
MyPointSet & | weights, | ||
double | q, | ||
double | maxIters, | ||
double | epsilon, | ||
string | output | ||
) | [inline] |
Constructor for running the algorithm on a single network with multiple initial weights samples.
[in] | graph | The network on which to operate. |
[in] | weights | The samples containing initial node weights. |
[in] | q | The parameter q used by the algorithm. |
[in] | maxIters | The maximum number of iterations to run the iterative reconciliation algorithms. |
[in] | epsilon | A small value that defines part of the convergence criteria. |
[in] | outputPrefix | A string to prepend to all output files. |
Vanilla::Vanilla | ( | vector< MyGraph > & | graphs, |
double | q, | ||
double | maxIters, | ||
double | epsilon, | ||
string | outputPrefix | ||
) | [inline] |
Constructor for running the algorithm on multiple networks with no initial weights.
[in] | graphs | The networks on which to operate. |
[in] | q | The parameter q used by the algorithm. |
[in] | maxIters | The maximum number of iterations to run the iterative reconciliation algorithms. |
[in] | epsilon | A small value that defines part of the convergence criteria. |
[in] | outputPrefix | A string to prepend to all output files. |
void Vanilla::_updateNodeWeightA | ( | MyNode | v | ) | [protected, virtual] |
Update the weight of a node in the current graph according to the Vanilla update function.
In order to compute the state of any node in the network, GeneMANIA solves the following equation where f_{i} is the node score for gene i, y_{i} is the inital bias vale for gene i, and w_{ij} is the association weight between genes i and j. $f=min({i}{}(f_{i}-y_{i})^{2}+{i}{}{j}{}w_{ij}(f_{i}-f_{j})^{2}) This equation reduces down to $f(u)={y(u)+ w_{u}f(u)}{1+ w_{v}f(v)}$ For more information about this formula, see the paper (cited in the class documentation).
Implements AbstractSingleReconciliation.