org.omegahat.Simulation.MCMC.Proposals
Class AdaptiveMultiKernelProposal

java.lang.Object
  |
  +--org.omegahat.Simulation.MCMC.Proposals.AdaptiveMultiKernelProposal
All Implemented Interfaces:
HastingsCoupledProposal
Direct Known Subclasses:
AdaptiveMultiSourceCoupler, LocallyAdaptiveNormalKernelProposal, LocallyAdaptiveNormalProposal

public abstract class AdaptiveMultiKernelProposal
extends java.lang.Object
implements HastingsCoupledProposal


Field Summary
 boolean DEBUG
           
protected  GeneralProposal[] kernels
           
protected  PRNG prng
           
 
Constructor Summary
AdaptiveMultiKernelProposal()
           
 
Method Summary
abstract  void adapt(MultiState mstate, int which)
          modify the state of the enclosed proposal distribution using information from the provided state vector
 double conditionalPDF(java.lang.Object state, java.lang.Object conditions, int which, MultiState stateVector)
          Computes the HastingsCoupled transition probability for one sub-state given the entire state vector
 java.lang.Object generate(java.lang.Object conditionals, int which, MultiState stateVector)
          Generate a new component state given the entire state vector
 GeneralProposal[] getKernels()
           
 PRNG getPRNG()
           
 double logConditionalPDF(java.lang.Object state, java.lang.Object conditions, int which, MultiState stateVector)
          Computes the HastingsCoupled transition probability for one sub-state given the entire state vector
 double logTransitionProbability(java.lang.Object from, java.lang.Object to, int which, MultiState stateVector)
          Computes the HastingsCoupled transition probability for one sub-state given the entire state vector
 GeneralProposal[] setKernels(GeneralProposal[] kernels)
           
 PRNG setPRNG(PRNG prng)
           
 double transitionProbability(java.lang.Object from, java.lang.Object to, int which, MultiState stateVector)
          Computes the HastingsCoupled transition probability for one sub-state given the entire state vector
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

kernels

protected GeneralProposal[] kernels

prng

protected PRNG prng

DEBUG

public boolean DEBUG
Constructor Detail

AdaptiveMultiKernelProposal

public AdaptiveMultiKernelProposal()
Method Detail

getKernels

public GeneralProposal[] getKernels()

setKernels

public GeneralProposal[] setKernels(GeneralProposal[] kernels)

getPRNG

public PRNG getPRNG()

setPRNG

public PRNG setPRNG(PRNG prng)

conditionalPDF

public double conditionalPDF(java.lang.Object state,
                             java.lang.Object conditions,
                             int which,
                             MultiState stateVector)
Computes the HastingsCoupled transition probability for one sub-state given the entire state vector
Specified by:
conditionalPDF in interface HastingsCoupledProposal
Parameters:
conditions - Current value of the component state being updated
state - Proposed state of the component state being updated
which - index of the component state being updated
stateVector - entire set of states, including the state being updated

logConditionalPDF

public double logConditionalPDF(java.lang.Object state,
                                java.lang.Object conditions,
                                int which,
                                MultiState stateVector)
Computes the HastingsCoupled transition probability for one sub-state given the entire state vector
Specified by:
logConditionalPDF in interface HastingsCoupledProposal
Parameters:
conditions - Current value of the component state being updated
state - Proposed state of the component state being updated
which - index of the component state being updated
stateVector - entire set of states, including the state being updated

generate

public java.lang.Object generate(java.lang.Object conditionals,
                                 int which,
                                 MultiState stateVector)
Generate a new component state given the entire state vector
Specified by:
generate in interface HastingsCoupledProposal
Parameters:
conditions - Current value of the component state being updated
which - index of the component state being updated
stateVector - entire set of states, including the state being updated

transitionProbability

public double transitionProbability(java.lang.Object from,
                                    java.lang.Object to,
                                    int which,
                                    MultiState stateVector)
Computes the HastingsCoupled transition probability for one sub-state given the entire state vector
Specified by:
transitionProbability in interface HastingsCoupledProposal
Parameters:
from - Current value of the component state being updated
to - Proposed state of the component state being updated
which - index of the component state being updated
stateVector - entire set of states, including the state being updated

logTransitionProbability

public double logTransitionProbability(java.lang.Object from,
                                       java.lang.Object to,
                                       int which,
                                       MultiState stateVector)
Computes the HastingsCoupled transition probability for one sub-state given the entire state vector
Specified by:
logTransitionProbability in interface HastingsCoupledProposal
Parameters:
from - Current value of the component state being updated
to - Proposed state of the component state being updated
which - index of the component state being updated
stateVector - entire set of states, including the state being updated

adapt

public abstract void adapt(MultiState mstate,
                           int which)
modify the state of the enclosed proposal distribution using information from the provided state vector