自适应VNS和偏斜GVNS在学校课程表编排中的应用及二分图中寻找平衡二部图的研究
1. 学校课程表编排算法介绍
在学校课程表编排问题中,提出了两种基于VNS元启发式的算法,分别是偏斜GVNS(SGVNS)和自适应VNS(Adaptive VNS)。
1.1 SGVNS算法
SGVNS算法是由偏斜VNS(SVNS)和通用VNS(GVNS)两种VNS元启发式变体合并而成。
- SVNS :使用参数α来接受比当前解更差的解。因为更好的解可能离当前解较远,所以需要经过中间(更差)的步骤才能到达。
- GVNS :使用可变邻域下降(VND)算法进行局部搜索。VND是一种通过系统改变邻域来探索解空间的下降方法,它能返回所有使用邻域中的局部最优解。
- SGVNS :同样使用VND作为局部搜索方法,并且和SVNS一样用参数α接受更差的中间解。为避免接受更差解导致的循环问题,实现了禁忌列表,该列表按FIFO协议工作,存储已访问解的值,防止生成相同的解序列。
SGVNS算法的伪代码如下:
Algorithm 2. SGVNS
1 Input: Initial solution (s0); Maximum runtime (MaxTime); Maximum
number of Kempe’s Chain move (Kempemax); percentage to accept worse
solutions (α); Length of the
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



