IMP  2.2.0
The Integrative Modeling Platform
BranchAndBoundSampler.h
Go to the documentation of this file.
1 /**
2  * \file IMP/domino/BranchAndBoundSampler.h
3  * \brief A beyesian infererence-based sampler.
4  *
5  * Copyright 2007-2014 IMP Inventors. All rights reserved.
6  *
7  */
8 
9 #ifndef IMPDOMINO_BRANCH_AND_BOUND_SAMPLER_H
10 #define IMPDOMINO_BRANCH_AND_BOUND_SAMPLER_H
11 
12 #include <IMP/domino/domino_config.h>
13 //#include "Evaluator.h"
14 #include "DiscreteSampler.h"
15 #include <IMP/Sampler.h>
16 #include <IMP/macros.h>
17 #include <IMP/base/Pointer.h>
18 
19 IMPDOMINO_BEGIN_NAMESPACE
20 
21 //! Sample best solutions using BranchAndBound
22 /** Find all good configurations of the model using branch and bound.
23  Searches are truncated when the score is worse than the the thresholds
24  in the Sampler or when two particles with the same kernel::ParticlesState
25  are assigned the same state.
26  */
27 class IMPDOMINOEXPORT BranchAndBoundSampler : public DiscreteSampler {
28  public:
30  std::string name = "BranchAndBoundSampler %1%");
32  std::string name = "BranchAndBoundSampler %1%");
33  Assignments do_get_sample_assignments(const IMP::domino::Subset &known) const
34  IMP_OVERRIDE;
36 };
37 
39 
40 IMPDOMINO_END_NAMESPACE
41 
42 #endif /* IMPDOMINO_BRANCH_AND_BOUND_SAMPLER_H */
A nullptr-initialized pointer to an IMP Object.
A base class for discrete samplers in Domino2.
Represent a subset of the particles being optimized.
Definition: Subset.h:33
Import IMP/kernel/macros.h in the namespace.
A beyesian infererence-based sampler.
Import IMP/kernel/Sampler.h in the namespace.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
#define IMP_OBJECTS(Name, PluralName)
Define the types for storing sets of objects.
Sample best solutions using BranchAndBound.
Class for storing model, its restraints, constraints, and particles.
Definition: kernel/Model.h:72