本文档是对课程内容的简单整理。
- 前缀Z_ 为正课视频的简称,如Z1为正课视频第1课
- 前缀G_ 为更新视频的简称,如G1为更新视频第1课
生成大量的备选解 反复测试
使用于2019D 选择片段 非线性整数规划
参考 D:\00000MCM\清风\0 课件和代码\更新的模型的课件和代码\更新12 数学规划模型\代码\非线性规划\code4\code4.m (蒙特卡罗方法找初始值)
文章:
随机搜索: D:\00000MCM\0 研究生数学建模竞赛历年真题和优秀论文集锦\研究生数学建模-优秀论文\2019优秀数模论文\D19100010050.pdf
2019D 自己写的代码
D:\00000MCM\0 codes\2019Dsum\q3_mtkl.m
clear
clc
load('q3')
global data;
global ok;
n = 1000000; %生成的随机数组数
x = randi([0, 1], n, 1);
for i = 1:39
x = [x, randi([0, 1], n, 1)];
end
fmin = +inf;
final_ans = [];
jian = 0;
for i = 1:n
input = x(i, :);
% input = zeros(1, 40);
tmp_f = q3_fun(input);
[tmp_c, tmp_ceq] = q3_yueshu(input);
if tmp_f < fmin && tmp_c(1) < 0 && tmp_c(2) < 0
fmin = tmp_f;
jian = tmp_c(1) + 1300;
final_ans = input;
end
end
fmin
jian
final_ans
思维导图 解决各种问题
思路(个人归纳)
- 类似枚举法 多次模拟
1 引例 布丰投针实验
3 三⻔问题
5 有约束的⾮线性规划问题
用于寻找初始值
6 书店买书问题 (0-1规划)
8 旅⾏商问题TSP
- 寻找递推关系 多次/极短间隔模拟
4 模拟排队问题
7 导弹追踪问题