Search Results for

    Show / Hide Table of Contents

    Class solver::ParallelTempering

    Parallel Tempering algorithm.

    Run multiple metropolis simulating at separate temperatures, allowing exchange of configuration between neighboring replicas between sweeps.

    Note

    Use of the Metropolis Algorithm is currently hard-coded, but this could in principle be a template argument, provided that the alternative method implements the corresponding interfaces for exchange moves.

    Inheritance
    solver::SteppingSolver
    solver::ParallelTempering
    solver::PTParameterFree
    Inherited Members
    clear_observable_label
    restart
    is_watching
    scoped_observable_label
    observe
    Observer
    render
    set_observable_label
    ~ModelSolver
    get_solutions
    copy_lowest_state
    copy_solutions
    get_model_properties
    update_lowest_cost
    get_model_term_size
    init_memory_check
    count_solutions
    copy_solutions
    get_model
    get_model_unconst
    copy_solutions_other
    ModelSolver
    populate_solutions
    max_replicas_adjusted_state
    set_model
    get_model_sweep_size
    is_empty
    get_lowest_cost
    adjust_states
    max_replicas_of_state
    set_time_limit
    get_result
    copy_limits
    ~Solver
    get_benchmark
    get_max_threads
    get_thread_count
    Solver
    fixed_step_per_tick
    update_accumulated_info
    handle_signals
    run
    current_steps
    reset
    get_cost_function_evaluation_count
    SteppingSolver
    get_solver_properties
    status
    get_seed
    ~SteppingSolver
    get_runtime
    seconds_per_step
    set_output_parameter
    set_output_parameter
    param
    get_output_parameters
    ~Component
    Component
    get_status
    get_class_name

    Constructors

    ParallelTempering()

    Create an uninitialized Parallel Tempering instance.

    Declaration
    solver::ParallelTempering<Model_T>::ParallelTempering()

    ParallelTempering()

    Declaration
    solver::ParallelTempering<Model_T>::ParallelTempering(const ParallelTempering&)=delete

    Methods

    operator=()

    Declaration
    ParallelTempering&solver::ParallelTempering<Model_T>::operator=(const ParallelTempering&)=delete

    get_temperatures()

    Declaration
    std::vector<double>solver::ParallelTempering<Model_T>::get_temperatures()

    use_inverse_temperatures()

    Declaration
    bool solver::ParallelTempering<Model_T>::use_inverse_temperatures()

    get_identifier()

    Identifier of this solver (target in the request)

    Declaration
    std::string solver::ParallelTempering<Model_T>::get_identifier() const override

    init_memory_check_error_message()

    Declaration
    std::string solver::ParallelTempering<Model_T>::init_memory_check_error_message() const override

    target_number_of_states()

    Declaration
    size_t solver::ParallelTempering<Model_T>::target_number_of_states() const override

    init()

    Initialize each replica.

    Declaration
    void solver::ParallelTempering<Model_T>::init() override

    accept()

    Decide whether to accept an exchange move.

    Declaration
    double solver::ParallelTempering<Model_T>::accept(const markov::Metropolis<Model_T>&a, const markov::Metropolis<Model_T>&b)

    make_step()

    Perform discrete time step t.

    Declaration
    void solver::ParallelTempering<Model_T>::make_step(uint64_t step) override

    configure()

    Configure.

    Declaration
    void solver::ParallelTempering<Model_T>::configure(const utils::Json&json) override

    finalize()

    Declaration
    void solver::ParallelTempering<Model_T>::finalize() override
    In This Article
    Back to top Generated with Doxygen and DocFX