人工智能导论作业,仅对fans开放,不要外传,不一定对,最后两个不要抄!!!!!
定义h=n*k
n为已经走的步数,k为不同的数字的个数
基本步骤:编码,群体设定,适应度函数,选择复制,交叉重组,变异
主要特点:1、编码操作使其可以直接对结构对象进行操作
2、采用群体搜索策略,具有较好的全局性能
3、仅适用于适应度函数来评估个体
区分群体中个体的好坏,进行自然选择
利用群体中的个体对信息的共享从而使得整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得问题的最优解
1、初始化每个粒子
2、评价每个粒子的适应度
3、设置每个粒子经历过的最好位置Pi
4、设置全局最优值Pg
5、更新粒子的速度和位置
6、设置检测终止条件
代码来自:CSDN,作者:RavenXRZ
%% 数据准备
% 清空环境变量
clear all
clc
% 程序运行计时开始
t0 = clock;
%导入数据
citys=xlsread(‘Chap9_citys_data.xlsx’, ‘B2:C53’);
%--------------------------------------------------------------------------
%% 计算城市间相互距离
n = size(citys,1);
D = zeros(n,n);
for i = 1:n
for j = 1:n
if i ~= j