2023年华为杯数学建模竞赛C题论文和代码
大规模创新类竞赛评审方案研究
现在创新类竞赛很多,其中规模较大的竞赛,一般采用两阶段或三阶段评审。创新类竞赛的特点是没有标准答案,需要评审专家根据命题人提出的评审框架独立评审。所以,对同一份作品,不同评委的评分可能存在较大差异。事实上,当竞赛规模大,评委的人数众多时,极差大的问题更为突出。因此,探讨大规模创新类竞赛评审方案的公正性、公平性和科学性具有深远意义。本文通过建立最优交叉分发方案数学模型,设计并改进新的标准分计算模型,以及建立极差模型等,整合形成一套完整的最佳评审方案,以确保大规模创新类竞赛的评审方案的合理与公平。
针对问题一,本文首先明确最优交叉分发方案的“最优”指的是“满足不同专家所评作品的交集尽可能均衡的前提下,还应使作品交集尽可能大”,并以此为导向量化本题的显性要求和隐性要求,构建该模型的目标函数和约束条件。接着整合目标函数和约束条件,建立确定最优交叉分发方案的多目标非线性规划模型,随后使用MATLAB 运行模拟退火算法求解此多目标非线性规划问题。然后基于求解结果反推最优交叉分发方案的作品分发方案和交集矩阵,进而得到方案实施细节和作品交集情况。最后对比枚举搜索算法和模拟退火算法,验证本文采用的模拟退火算法更适用于本题这类大规模创新竞赛的模型求解。
针对问题二,本文首先根据题目要求“设计新的标准分计算模型并对其进行修正”,分析出破题点在于解决“专家学术水平分布相同”这个假设不存在的问题,并按此思路设计新的评审方案,其中包括基于 BP 神经网络改进的标准分评审方案。接着统计各评审方案的得分情况及分布特征,进行优劣性分析,得出 BP 神经网络改进的标准分评审方案为最优方案。然后对比 BP 神经网络改进的标准分评审与初始标准分评审的原理差异,设计出成绩样本标准差统一的新的标准分计算模型。最后将附件数据1中可信度较高的一等奖评审数据代入新的标准分计算模型,使用 Python求解,不断迭代优化模型的修正系数,最终得到最佳的标准分计算模型。
针对问题三,本文首先通过数据2.1和2.2的数据可视化结果讨论两阶段的成绩与极差的整体变化,并运用特征值提取挖掘出评审数据中极差和成绩之间的相关性。然后从评分的复杂性、稳定性和精确性三个方面构建评审方案的评价指标体系,并基于前文获取的分布特征数据来量化评价指标,从而对两阶段和一阶段评审方案进行优劣性分析。接着引入结合模糊综合判定的归属函数,用于界定“非高且非低”的作品区域,基于此构建初始极差模型,参考二阶段的极差修改情况确定极差调整规律并不断修正。最后确定最优极差模型,由此模型设计处理中间分段作品“大极差”的办法,并参考两阶段的最终排序进行模型验证,验证结果显示最优极差模型处理效果良好。
针对问题四,本文首先分析前三问所得出的数学模型,第一问建立最优交叉分发方案数学模型,解决成绩之间可比性弱的问题; 第二问设计并改进新的标准分计算模型,解决由于专家水平不同造成的给分标准不统一的问题; 第三问建立极差模型,解决处于中间分段作品的大极差问题。随后整合以上内容,形成一套完整的评审模型,给出具体的模型求解算法,并且使用 Python模拟一组类似数据进行求解并验证,验证结果显示此模型的评审效果良好。最后本文对整合的评审模型运用蒙特卡洛理论进行参数和精度评价,并结合模型实际和查阅资料针对性提出改进意见。
关键词:多目标非线性规划模型:模拟退火算法; BP神经网络; 特征值提取; 模糊综合判定:归属函数:蒙特卡洛理论
模型建立
由问题分析可知,本题的数学模型为一个多目标非线性规划模型,其约束条件包括作品评审次数约束和专家评审工作量约束,其目标函数为不同专家评审的作品交集在保证均衡的前提下应尽可能大。接下来将量化约束,并构建目标函数,最终建立多目标非线性规划模型以解决评审作品的最优“交叉分发”方案。
4.2.1构建模型约束条件
(1) 作品评审次数约束
根据题意可知,每份作品由5位专家评审,即求解最优交叉分发方案的数学模型中存在参赛作品的评审次数约束。
假设某竞赛共收到m支参赛队伍的作品,并邀请n位评审专家进行评审打分,则可构建一个“0-1”判断矩阵 Xmaxn表示作品的评审状态及专家的任务量情况:
Xm×n=x11x12⋯x1nx21x22x2nxn1xn2⋯xmn,i=12n (1)
其中 xᵢⱼ0或1,矩阵X的各行代表第i个作品是否被第j个专家评审,即作品的评审状态; 矩阵X的各列代表第j个专家是否评审了第i个作品,即评委的任务量情况。因为矩阵X 中的各行代表作品的评审状态,所以只需要矩阵X的各行之和等于 5 即可构建作品的评审次数约束。
可令矩阵X的各行表示为A₂,则. Ai=xi1xi2xin, 可知参赛作品的评审次数约束表示为:
Ai=∑j=1j=nxij,i=12m (2)
专家评审工作量约束
根据题意并结合实际情况可推测,每位专家评审作品的工作量应尽量相等,即该数学模型中应存在专家评审工作量约束。
由(1) 可知,矩阵 Xmaxn表示作品的评审状态及专家的任务量情况,可令矩阵X的各列表示为B₁,则 Bi=x1jx2j⋯xmj, 可知每个专家的评审工作量表示为:
Bi=∑i=1i=mxij,j=12n (5)
此约束要求每位专家评审的工作量应尽量相等,可转换为每个专家的评审工作量尽可能等于总工作量的平均值。假设总工作量为U,工作量的均值为U,则专家评审工作量约束可表示为:
∑j=1j=n|Bi-U|≤T (6)
其中 U=y¯n=5mn, T表示每个专家的评审工作量与平均工作量之间的差值,T应尽可能
13
关注数模加油站,助力竞赛赢满贯
小。
4.2.3构建模型目标函数
根据题意可知:为了增加不同评审专家所给成绩之间的可比性,不同专家评审的作品集合之间应有一些交集,但有的交集大了,则必然有交集小了,则可比性变弱。由此可理解为最优交叉分发方案的数学模型中,目标函数是:不同专家评审的作品交集在保证均衡的前提下应尽可能大些。
假设每位专家的评审作品编号集合为 Cj,其具体含义可表示为:
Cj=12⋯m⋅Bj>0 (7)
又令g₁ⱼ表示C₁与C₁交集元素的数量,则不同专家评审作品之间的交集大小用矩阵可表示为:
G=g11g12⋯y1ng21922⋯92n⋯⋯⋯⋯⋯gn1gn2⋯gnn (8)
得出不同专家评审作品之间的交集尽可能均衡用函数可表示为
4.3运用模拟退火算法求解模型
上一小节建立的模型,是一个多目标的非线性规划模型。要想求解这个模型,我们首先得将这个多目标规划转换为单目标规划以减少运算的复杂度。我们可以通过设置一个权衡参数k,由于Z是所有交集的和是一个非常大的数,而S反映的是专家评审作品之间的交集的均衡度,是一个方差值。因此为了平衡两个目标函数的影响,在求解时假设k=0.005,并且原目标函数是求Z的最大值,求S的最小值。因此我们就可以简化出一个混合目标函数:MinH = -k*Z +(1-k)*S, 下面的求解也将以此为基础开始。
为了求解这个模型,我们针对本问题的特征结合模拟退火算法设计了一个算法1。
算法1:求解多目标非线性规划模型
Input:m: 参赛队的作品,n: 专家人数,b:专家平均工作量, c:每题需要评审的个数, N:迭代次数,St:初始温度,Et:最终温度,Cr:冷却率,k:权衡参数
Output: Hmin: 最小混合目标函数值, Abest: 最优矩阵 A , Ebest: 最优交集矩阵E,交
集大小: Z, 均衡度: S
Step1: 初始化矩阵A, 大小为(m,n)
Step2:定义目标函数 (计算交集E和混合目标函数h)
1 function[E,h,S,Z] = computeH(A,m,n, iteration,E)
2 for co l 从1 到 n
3 a← 创建一个列向量,包含从1 到 m 的整数
4 d← 取出 A 的第 col 列
5 v←a.* d, 逐元素相乘, 并存储于g
6 结束循环
7 forl从 1 到 n
8 for j 从 1 到 n
9 E(l,j)←0, 如果 l= j; 否则, E(l,j)←g{l} 和g{j} 的交集
10 结束内层循环
11 结束外层循环
12 u₁← 每个评审人员的总交集大小,ū₁←总交集大小的平均值
13 S-1n⋆∑u1-u1α2;Z-z∑Ekl
14 h ← -k *z + (1 - k) * S
15
关注数模加油站,助力竞赛赢满贯
Step3:主循环迭代求解
1 for iteration in range (1, N +1):
2 for row = 1:m
3 生成随机排列的整数数组p,包含从1到n的所有整数,并且不重复。
4 从 p 中选择前c个整数,存储在数组1 中。
5 将 A 的第 row 行中的第Ⅰ列设置为1,其余列设置为 0。
6 E,h←function[E,h,S,Z] %计算目标函数并将E,h,A,S,Z存储
7 结束内层循环
8 结束外层循环
9 Hmin, Abest, Ebest, S, Z
利用算法,我们设置模拟退火的参数为:迭代次数N =5000,初始温度 Sₜ=1.0,最终温度 Eₜ=0.01,
冷却率 Cᵣ=0.99。
代入本问题的参数,总题数m = 3000,评审专家人数n=125,每个专家平均评审题数 b=W=120,
每一题需要评审次数c = 5,为了平衡Z和S 对h的影响我们选择权衡参数k = 0.5作为输入。
利用 MATLAB 求解模型。 Hₘᵢₙ=-29371.39,其对应的矩阵 A=Abest,
大小为(3000,125) , 交集矩阵 E=Ebest,
大小为(125,125) , S =1257.22, Z =60000。
4.4最优交叉分发方案
4.4.1最优方案实施细则
由于最优交叉分发方案由一个大小为(3000,125)的矩阵. Abest表示,每一行表示一个参赛队的作品,每一列表示的是一个专家的评审情况。若某个专家评审了这个作品,则矩阵 Abest对应的值为1,没有评审则值为0。因此矩阵Abest能完整地表示出整个最优交叉分发方案。但由于矩阵过大,难以完全展示出整个的分发方案,我们选取了100支队伍的交叉分发方案如图2所示。
由图可知,每一行表示一个参赛队伍,而每一列表示一个评审专家。因为我们只选了3000个队伍中的100支队伍做展示,所以图2有100行,对应选择的每一只队伍。而每一支队伍对应的行里,只有5个黄色的色块,表示每份作品由5位专家评审,并且根据对应的列数可以得知是哪些专家对该作品进行了打分。图4-1有125列表示所有的125位评审专家对这100支队伍的评审情况。例如,第1列有3个黄色的色块说明专家1在这100支队伍里评价了3支队伍的作品,并且根据对应的行数可以知道具体评价的队伍。通过完整的大小为(3000x125)的 Abest矩阵可以找到,在最优分发方案下所有参赛队伍对应的打分专家。也就是说,这个矩阵中存储着最优分发方案的实施细节。
4.4.2最优方案交集情况
我们的算法除了得到最佳的评审方案 Abest,还可以得到按照最佳方案打分时,各个专家评审作品的交集情况。矩阵 Ebest,这是一个(125,125)大小的矩阵每一行和每一列都表示评审专家。这个矩阵的每一个值e₁j就表示横纵坐标两位专家之间的作品交集数。例如,位于这个矩阵 (5,9) 的值e₅₉,表示的就是第 5个评审专家和第9 个评审专家作品的交集数。因为横纵坐标都是同样的专家,显然 Ebest是一个对称矩阵,矩阵的对角线表示就是专家自身的作品交集,在我们的模型当1=j时, eₗⱼ=0,所以矩阵的对称轴值都为0。通过图3可以直观的看到在采用最优交叉分发方案时各个专家间的交集情况。
关注数模加油站,助力竞赛赢满贯
由图3可知,这个矩阵的每一个值 μj就表示横纵坐标两位专家之间的作品交集数。例 e₁ⱼ如,位于这个矩阵(5,9)的值 e₅₉,
表示的就是第5个评审专家和第9个评审专家作品的交集数。因为横纵坐标都是同样的专家,显然 Ebest
是一个对称矩阵,矩阵的对角线表示就是专家自身的作品交集,因为在我们的模型当 l=i
时, e₁ⱼ=0,
所以矩阵的对称轴值都为0。通过图4-2可以直观的看到在采用最优交叉分发方案时各个专家间的交集情况。
4.4.3最优分发方案评估
最优交叉分发方案最后的结果中,混合目标函数值h值取最小时,对应的两个目标函数值S和Z分别为1257.22和60000,这两个值分别也是所有迭代的S和Z值中最小的和最大的。并且我们的算法结合了模拟退火算法的方法,对比枚举搜索的方法,模型的求解速度得到了显著提升。这样的结果表明,我们建立的模型和提出的算法可以在每个专家工作量接近,但又不完全一致的情况下,保证高效求解出这一问题的最合理、最公平的评审方案。
4.5 本章小结
在本章中,为了确定最佳的交叉分发方案,我们通过深入问题分析构建了一个多目标非线性规划模型。为了应对模型的复杂性,我们开发了一种高效的算法(算法 1) ,通过该算法,我们成功地找到了最佳的交叉分发方案。这一方案不仅能够最大程度地满足各项需求,还能够详细展示最佳分发方案的执行细节,以及各位专家在评审作品时的交互情况。这使得最终的结果能够充分反映出最佳分发方案的有效性和实施情况。
由上述表17、18数据,继续运用 Origin画出数据2.1和2.2两阶段成绩整体变化和两阶段极差整体变化联系图,结果如图12所示:
由图12可知,先分析数据2.1的情况:数据2.1一阶段数据中极差随着成绩变化呈现“W”形的趋势,此趋势符合大规模创新类竞赛的极差特点。即极差比较大的作品一般处于高分段或低分段,低分段属于淘汰范围,低分段极差大的原因是有专家对违规作品或有重大失误的作品给了很低的分数,或评审专家都认同该作品质量不高,只是其中某位(些)专家更不认同该作品。而高分段作品还要参加权威性较高的第二阶段评审,因此成绩也会出现较大极差。至于中间部分的作品,可能是专家对于较为普通的作品看法不一致造成的,因此也存在一些歧义。第二阶段数据的低分段属于淘汰范围,不会进入第二阶段,因此第二阶段极差变化在低分段出现了空白,但仍符合得分越高极差越大的变化趋势。
再看数据2.2的情况:数据2.2中的一阶段数据,同样符合大规模创新类竞赛特点,但值得注意的是,其二阶段的极差特征点少于数据2.1,且高于对应一阶段的差值,造成该现象的原因可能是因为数据 2.2中的数据量远超数据 2.1,因此在第二阶段更加符合极差越大,得分越高的变化趋势,且一阶段中间分段歧义造成的极差波动变弱。
6.2.4基于评价指标体系的评审方案优劣分析
(1) 评价指标体系构建
为全面评价两阶段与一阶段评审方案的优缺点,本文采用构建一个合理、公平且全面的指标体系以评价两个评审方案。根据题目要求及查阅相关文献资料,本文拟选定方案的计算复杂度、评分稳定性和评分精确性作为一级指标,选用计算流程次数、计算评分次数、评分方差和极差、极差的方差和极差、评分均值、极差与评分的相关性为二级指标。整体评价指标体系用X- mind作图如下:
指标说明:
①计算流程次数表示评审方案共有几个评分环节,一阶段就1个环节,二阶段有3个环节,分别是第一阶段、第二阶段和复议环节;
②计算评分次数表示一项作评需要被评几次分,一阶段共有 5位专家,二阶段共有8位专家:
③评分方差、极差和均值即为6.2.1中成绩的方差、极差和均值数据;
④极差方差和极差即为6.2.2中极差的方差和极差数据;
⑤极差和成绩的相关性代表一阶段和二阶段的极差是否与得分具有一定关系,是为1,否为0。
(2) 基于评价指标体系的优缺点分析
基于上述评价指标体系,结合6.2.1、6.2.2、6.2.3中的分布特征数据及相关性分析,量化各二级指标并进行优缺点分析如表 19所示:
表 19两阶段与一阶段优缺点分析表
一级指标 | 二级指标 | 一阶段指标值 | 两阶段指标值 | 优劣性 |
计算复杂度 | 计算流程数 | 1 | 3 | 一阶段优 |
计算评分次数 | 5 | 8 | 一阶段优 | |
评分稳定性 | 评分方差 | 74.85 | 29.63 | 二阶段优 |
评分极差 | 56.73 | 48.11 | 二阶段优 | |
极差方差 | 31.29 | 38.36 | 一阶段优 | |
极差的极差 | 45.14 | 35.74 | 二阶段优 | |
评分精确度 | 评分均值 | 50.00 | 52.86 | 二阶段优 |
极差与评分相关性 | 1 | 1 | 二者一样优 |
由表19可知,在计算复杂度方面一阶段评审具有明显的优势,其不论是计算流程还是评分次数均比二阶段少,所以一阶段的计算复杂度很低,运行较简单。评分稳定性方面二阶段评审具有明显优势,其评分方差、极差和极差的极差均要低于一阶段数值,说明二阶段评分的波动性要小于一阶段,即二阶段评审模式下的评分较为稳定。评分精确度方面二阶段评审具有较小优势,二者的极差均能有效反映得分情况,但第二阶段更加符合极差越大,得分越高的变化趋势。