随机化算法
AndrewMe8211
no more threads
展开
-
模拟退火略谈
模拟退火算法(Simulate Anneal,SA)是一种通用概率演算法,用来在一个大的搜寻空间内找寻命题的最优解。模拟退火是由S.Kirkpatrick, C.D.Gelatt和M.P.Vecchi在1983年所发明的。V.Černý在1985年也独立发明此演算法。模拟退火算法是解决TSP问题的有效方法之一。模拟退火的出发点是基于物理中固体物质的退火过程与一般组合优化问题之间的相似性。模拟退...原创 2019-01-29 10:15:58 · 519 阅读 · 0 评论 -
JSOI2004 平衡点 / 吊打XXX
题面分析正解表示不会蒟蒻只会用模拟退火随机一个点,用鬼畜的物理推理得到W=sqrt(dxdx+dydy)*w[i]这个公式,然后评价这个点,再随机,再评价然后就玄学的A掉了本题code#include<bits/stdc++.h>using namespace std;#define LD long double#define RD T*(2*rand()-RAN...原创 2019-01-30 10:52:33 · 250 阅读 · 0 评论 -
noip 2012 Day2 T2 P1080 国王游戏
analysisrandom_shuffle是个好东西就这样如果random数组的话,记得要映射回来,否则凉透(所以还是用结构体吧)code结构体版#include<bits/stdc++.h>using namespace std;#define loop(i,start,end) for(register int i=start;i<=end;++i)#d...原创 2019-03-30 16:16:59 · 171 阅读 · 0 评论 -
luogu P2210 Haywire
analysis模拟退火大法好!!!让我们一起念:P(dE)=detlatemperatureP(dE)=\frac{detla}{temperature}P(dE)=temperaturedetla好吧,思路很简单,每次交换两头奶牛的位置,然后评价,决定是否保留,若不保留就换回去,然后又换,又评价…这就是SA的步骤了:得到一个状态s1随便你怎么转移到另一个状态s2评价状态s...原创 2019-03-31 12:34:21 · 194 阅读 · 0 评论