FMT 1.2.0
Forest management tools for forest planning
Loading...
Searching...
No Matches
FMTExponentialSchedule.h
Go to the documentation of this file.
1/*
2Copyright (c) 2019 Gouvernement du Québec
3
4SPDX-License-Identifier: LiLiQ-R-1.1
5License-Filename: LICENSES/EN/LiLiQ-R11unicode.txt
6*/
7
8#ifndef FMTEXPONENTIALSCHEDULE_H
9#define FMTEXPONENTIALSCHEDULE_H
10
11#include "FMTSaSchedule.h"
12#include <string>
13#include <memory>
14
15
16namespace Spatial
17{
18
19// DocString: FMTExponentialSchedule
24 {
25 public:
26 // DocString: FMTExponentialSchedule()
31 // DocString: ~FMTExponentialSchedule()
36 // DocString: FMTExponentialSchedule::reduceTemp
40 void reduceTemp();
41 // DocString: FMTExponentialSchedule::clone
46 std::unique_ptr<FMTSaSchedule> clone()const;
47 // DocString: FMTExponentialSchedule::setAnnealingRate
51 void setAnnealingRate(const double& p_annealingRate);
52 private:
53 double m_ANNEALING_RATE;
54
55 };
56}
57#endif // FMTSASCHEDULE_H
Exponential cooling schedule for simulated annealing, reducing the temperature by a constant annealin...
Definition: FMTExponentialSchedule.h:24
~FMTExponentialSchedule()=default
Default destructor for FMTExponentialSchedule.
std::unique_ptr< FMTSaSchedule > clone() const
Return a clone of the FMTExponentialSchedule.
void reduceTemp()
Reduce the temperature using the exponential annealing rate.
void setAnnealingRate(const double &p_annealingRate)
Set the annealing rate.
FMTExponentialSchedule()
Default constructor for FMTExponentialSchedule.
Abstract class for a simulated annealing cooling schedule.
Definition: FMTSaSchedule.h:24
Definition: FMTAreaParser.h:40