%--------------------------
%遗传算法求解多维背包问题
%编写者:***
%数统院研2015级
%-------------------------
clc;
clear all;
close all;
%% ----------------参数设置------------------------------
c=[100 220 90 400 300 400 205 120 160 580 400 140 100 1300 650];
A=[ 8 24 13 80 70 80 45 15 28 90 130 32 20 120 40
8 44 13 100 100 90 75 25 28 120 130 32 40 160 40
3 6 4 20 20 30 8 3 12 14 40 6 3 20 5
5 9 6 40 30 40 16 5 18 24 60 16 11 30 25
5 11 7 50 40 40 19 7 18 29 70 21 17 30 25
5 11 7 55 40 40 21 9 18 29 70 21 17 30 25
0 0 1 10 4 10 0 6 0 6 32 3 0 70 10
3 4 5 20 14 20 6 12 10 18 42 9 12 100 20
3 6 9 30 29 20 12 12 10 30 42 18 18 110 20
3 8 9 35 29 20 16 15 10 30 42 20 18 120 20];
b=[550;700;130;240;280;310;110;205;260;275];
popsize=20; %种群规模
chromlength=15; %变量个数
pc=0.9; %杂交概率
pm=0.1; %变异概率
Max_iter=500; %迭代次数
Runtime=30;
%% -----------------------------------------------------
for i = 1:Runtime
g(i) = GA_Package(popsize,chromlength,pc,pm,A,b,c,i,Max_iter);
end
mean_g = mean(g) % 计算平均值
[min_g,k] = min(g) % 计算最好目标函数值
[max_g,kk] = max(g) % 计算最差目标函数值
std_g = std(g) % 计算标准方差
%% ---------------------------------------------------------------