文章标题:On the Runtime of Randomized Local Search and Simple Evolutionary Algorithms for Dynamic Makespan Scheduling
会议:Proceedings of the Twenty-Fourth International Joint Conference on Artificial Intelligence (IJCAI 2015)
arXiv: 1504.06363
- 问题描述
目标函数:f(x)=max{∑i=1npi(1−xi),∑i=1npixi}
其中,
n 为作业(job)的个数,pi 为工作i 的耗时
有两个机器M1 和M2 ,对所有工作进行处理
xi=0 表示 作业i 由M1 处理;xi=1 表示 作业i 由M2 处理
pi 为作业i 的代价(时间)
目的是 将所有作业分配到两个机器进行处理,两个机器同时运行,最小化最大运行时间。
此问题为动态问题,即:每隔一定的时间(代数)对随机一项作业i 的耗时改变(pi+1 或pi−1 ) 基准算法
进化计算运行时分析的标准基准算法:Randomized Local Search (RLS) , (1+1) EA .
具体来说:
RLS : 随机改变一个变量
(1+1) EA : 以几率1/n 改变每一个变量 (n 为变量的个数)算法:
desired goal (期望目标):
d(x)=∣∣∣∣(∑i=1npi(1−xi))−(∑i=1npixi)∣∣∣∣
即:the discrepancy (差异) of the solutionx - 算法用时为达到期望目标的时间
fuller machine — 负载较大的机器
其作业数至少为:⌈(P/2)/U⌉≥⌈(n/2)(L/U)⌉=⌈(n/2)⋅R−1⌉ - 期望时间
目标:d(x)≤U ,U 为pi 的上限,L 为下限;独立于初始解及作业时间的动态变化
RLS:O(nmin{logn,logR}) ,R=U/L
(1+1)EA:O(n3/2)