Skip to content

Commit ab36ba1

Browse files
committed
增加遗传算法
1 parent 52162b5 commit ab36ba1

File tree

6 files changed

+498
-42
lines changed

6 files changed

+498
-42
lines changed

aca.js renamed to ACA.js

+1-40
Original file line numberDiff line numberDiff line change
@@ -193,21 +193,6 @@ function draw(resultData) {
193193

194194
})(100, 10, 100, 1000);
195195

196-
/**
197-
* 初始化任务处理时间矩阵
198-
* @param tasks 任务(长度)列表
199-
* @param nodes 节点(处理速度)列表
200-
*/
201-
function initTimeMatrix(tasks, nodes) {
202-
for (var i=0; i<tasks.length; i++) {
203-
// 分别计算任务i分配给所有节点的处理时间
204-
var timeMatrix_i = [];
205-
for (var j=0; j<nodes.length; j++) {
206-
timeMatrix_i.push(tasks[i] / nodes[j]);
207-
}
208-
timeMatrix.push(timeMatrix_i);
209-
}
210-
}
211196

212197
/**
213198
* 初始化信息素矩阵(全为0)
@@ -429,35 +414,11 @@ function acaSearch(iteratorNum, antNum) {
429414
*/
430415
function aca() {
431416
// 初始化任务执行时间矩阵
432-
initTimeMatrix(tasks, nodes);
417+
initTimeMatrix(tasks, nodes, timeMatrix);
433418

434419
// 初始化信息素矩阵
435420
initPheromoneMatrix(taskNum, nodeNum);
436421

437422
// 迭代搜索
438423
acaSearch(iteratorNum, antNum);
439-
}
440-
441-
/**
442-
* 获取指定范围内的随机数
443-
* @param start 起点
444-
* @param end 终点
445-
* @returns {number}
446-
*/
447-
function random(start, end){
448-
var length = end-start+1;
449-
return Math.floor(Math.random() * length + start);
450-
}
451-
452-
/**
453-
* 创建随机数组
454-
* @param length 数组长度
455-
* @param range 数组取值范围
456-
*/
457-
function initRandomArray(length, range) {
458-
var randomArray = [];
459-
for (var i=0; i<length; i++) {
460-
randomArray.push(random(range[0], range[1]));
461-
}
462-
return randomArray;
463424
}

0 commit comments

Comments
 (0)