assigning probability

2 次查看(过去 30 天)
Hi,
I'm doing a basic simulated annealing experiment and I want to assign a probability to decide whether a variable change is accepted or not.
My probability function is
probability=exp(-(A2-A1)/temp);
where A is the variable that I'm trying to minimise. As temp decreases the probability of accepting A2>A1 decreases, so that A1 will eventually be in a minimal state.
How can I program my code such that if probability=0.8 (where A2>A1 at a high value of temp), there is an 80% chance that the line
A1=A2;
will be accepted.
If I haven't explained the problem clearly enough, please comment and I'll try to elaborate.
Thanks,
Richard

采纳的回答

David Young
David Young 2011-4-7
if rand < probability
A1 = A2;
end

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Simulated Annealing 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by