Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Arak::ColoringProposal Class Reference

#include <coloring_mcmc.hpp>

Inheritance diagram for Arak::ColoringProposal:

Inheritance graph
[legend]
List of all members.

Detailed Description

The proposal distribution of the Markov chain.

This distribution determines the convergence speed of the Markov chain, but does not affect the stationary distribution (provided it is Harris recurrent).

This implementation is analogous to an iterator interface. The sample method "advances the iterator" by generating a new move which can be accessed by the move() method.

Definition at line 76 of file coloring_mcmc.hpp.

Public Member Functions

virtual ~ColoringProposal ()
 Destructor.

virtual void sample (const Coloring &state, Arak::Util::Random &random, bool reversible=true)=0
 Samples the proposal distribution to obtain a new move.

virtual ColoringMovemove ()=0
 Returns a reference to the move most recently sampled from this proposal distribution.

virtual double ll (const Coloring &c)=0
 Returns the log likelihood of the most recently sampled proposal.

virtual double rll (const Coloring &c)=0
 Returns the log likelihood of sampling the reverse of the most recently sampled proposal.

virtual void result (bool accepted)=0
 This method is invoked by the Markov chain to inform the proposal of the result of its most recently proposed move.


Constructor & Destructor Documentation

virtual Arak::ColoringProposal::~ColoringProposal  )  [inline, virtual]
 

Destructor.

Definition at line 83 of file coloring_mcmc.hpp.


Member Function Documentation

virtual double Arak::ColoringProposal::ll const Coloring c  )  [pure virtual]
 

Returns the log likelihood of the most recently sampled proposal.

Returns:
the log likelihood of the most recently sampled proposal

Implemented in Arak::CN94Proposal, and Arak::ModifiedCN94Proposal.

virtual ColoringMove& Arak::ColoringProposal::move  )  [pure virtual]
 

Returns a reference to the move most recently sampled from this proposal distribution.

This move is guaranteed to be stable only until #sample(const Coloring&, Arak::Util::Random&) is called again.

Returns:
the most recently sampled move

Implemented in Arak::CN94Proposal, and Arak::ModifiedCN94Proposal.

virtual void Arak::ColoringProposal::result bool  accepted  )  [pure virtual]
 

This method is invoked by the Markov chain to inform the proposal of the result of its most recently proposed move.

Implemented in Arak::CN94Proposal.

virtual double Arak::ColoringProposal::rll const Coloring c  )  [pure virtual]
 

Returns the log likelihood of sampling the reverse of the most recently sampled proposal.

Returns:
the log likelihood of sampling the reverse of the most recently sampled proposal

Implemented in Arak::CN94Proposal, and Arak::ModifiedCN94Proposal.

virtual void Arak::ColoringProposal::sample const Coloring state,
Arak::Util::Random random,
bool  reversible = true
[pure virtual]
 

Samples the proposal distribution to obtain a new move.

Parameters:
state the current state of the Markov chain
random a source of pseudorandomness
reversible a flag which indicates whether the sampled move be reversible (default: true)

Implemented in Arak::CN94Proposal.


The documentation for this class was generated from the following file:
Generated on Wed May 25 14:41:07 2005 for Arak by doxygen 1.3.6