【2023 年第十三届 MathorCup 高校数学建模挑战赛】A 题 量子计算机在信用评分卡组合优化中的应用 详细建模过程解析及代码实现

这篇具有很好参考价值的文章主要介绍了【2023 年第十三届 MathorCup 高校数学建模挑战赛】A 题 量子计算机在信用评分卡组合优化中的应用 详细建模过程解析及代码实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

相关信息

(1)建模思路

【2023 年第十三届 MathorCup 高校数学建模挑战赛】A 题 量子计算机在信用评分卡组合优化中的应用 详细建模过程解析及代码实现

【2023 年第十三届 MathorCup 高校数学建模挑战赛】 B 题 城市轨道交通列车时刻表优化问题 详细建模方案及代码实现

【2023 年第十三届 MathorCup 高校数学建模挑战赛】C 题 电商物流网络包裹应急调运与结构优化问题 建模方案及代码实现

(2)完整论文

【2023 年第十三届 MathorCup 高校数学建模挑战赛】A 题 量子计算机在信用评分卡组合优化中的应用 42页论文及代码

【2023 年第十三届 MathorCup 高校数学建模挑战赛】 B 题 城市轨道交通列车时刻表优化问题 42页论文及代码

【2023 年第十三届 MathorCup 高校数学建模挑战赛】C 题 电商物流网络包裹应急调运与结构优化问题 赛后总结之31页论文及代码

【2023 年第十三届 MathorCup 高校数学建模挑战赛】D 题 航空安全风险分析和飞行技术评估问题 27页论文及代码

【2023 年第十三届 MathorCup 高校数学建模挑战赛】A 题 量子计算机在信用评分卡组合优化中的应用

【2023 年第十三届 MathorCup 高校数学建模挑战赛】A 题 量子计算机在信用评分卡组合优化中的应用 详细建模过程解析及代码实现
更新信息:2023-4-15 更新了代码

1 题目

在银行信用卡或相关的贷款等业务中,对客户授信之前,需要先通过 各种审核规则对客户的信用等级进行评定,通过评定后的客户才能获得信 用或贷款资格。规则审核过程实际是经过一重或者多重组合规则后对客户 进行打分,这些规则就被称为信用评分卡,每个信用评分卡又有多种阈值 设置(但且只有一个阈值生效),这就使得不同的信用评分卡在不同的阈值 下,对应不同的通过率和坏账率,一般通过率越高,坏账率也会越高,反 之,通过率越低,坏账率也越低。对银行来说,通过率越高,通过贷款资格审核的客户数量就越多,相 应的银行获得的利息收入就会越多,但高通过率一般对应着高坏账率,而 坏账意味着资金的损失风险,因此银行最终的收入可以定义为:最终收入 = 贷款利息收入 - 坏账损失

下表举例 3 个不同的信用评分卡,可以看到每种信用评分卡有 10 个阈值,每种阈值对应不同的坏账率和通过率:

【2023 年第十三届 MathorCup 高校数学建模挑战赛】A 题 量子计算机在信用评分卡组合优化中的应用 详细建模过程解析及代码实现

赛题说明 1:流程简化及示例

由于银行场景的复杂性,往往需要采用选择多个不同的信用评分卡进 行组合来实现最佳的风险控制策略。而实际中的信用评分卡组合是一个非 常复杂的过程,为便于建模,我们将该问题进行做如下简化(本简化只适 用本次比赛赛题,不能完全代表实际场景)。假设贷款资金为 1000000 元,银行贷款利息收入率为 8%,并以上面列举的三个信用评分卡作为选定的信用评分卡组合来测算银行最终收入。由于每一信用评分卡有且只可选择 1 个阈值,假设信用评分卡 1 的阈值设置为 8,则通过表格可知,对应通过率为 70%,坏账率为 4.00%,信用评分卡 2 的阈值设置为 6,则通过率为 50%,坏账率为 2.70%,信用评分卡3 的阈值设置为 7,则通过率为 62%,坏账率为 3.70%。例如如果我们选择三重信用卡组合策略,那么这三种信用评分卡组合 后的总通过率为所有信用评分卡通过率相乘,即:0.7×0.5×0.62 = 0.217。总坏账率为三种信用评分卡对应坏账率的平均值,即:1/3×(0.04+0.027+0.037) = 0.0367。基于以上条件可求得,本次贷款利息收入为:贷款资金×利息收入率×总通过率×(1-总坏账率),即:1000000×0.08×(0.7×0.5×0.62) ×(1-1/3×(0.04+0.027+0.037)) =16758.18(元)。由坏账带来的坏账损失为:贷款资金×总通过率×总坏账率,即:1000000×(0.7×0.5×0.62) ×(1/3×(0.04+0.027+0.037))=7522.666(元)。那么银行的最终收入为:贷款利息收入**-**坏账损失,即

16758.18-7522.666 = 9235.514 (元)

由此可见,选择不同的信用评分卡,不同的阈值组合,会给银行带来 不同的收入与损失,由此决定银行最终收入。因此,银行的目标是选择最 合理的信用评分卡组合以及其阈值,使得银行最终收入最多。

赛题说明2:QUB 模型简介

QUBO 模型是指二次无约束二值优化(Quadratic Unconstrained Binary Optimization)模型,它是一种用于解决组合优化问题的数学模型。在QUBO模型中,需要将问题转化为一个决策变量为二值变量,目标函数是一个二 次函数形式优化模型。

QUBO 模型可以运行在量子计算机硬件上,通过量子计算机进行毫秒级的加速求解。这种模型和加速方式在未来各行业中将得到广泛的实际应 用。因此现阶段研究基于 QUBO 模型的量子专用算法十分有应用价值。例如典型的图着色、旅行商问题、车辆路径优化问题等,都可以转化为 QUBO 模型并借助于量子计算机求解。

相关的 QUBO 的转化方法与例子可参考附件 2 中的参考文献。

赛题说明3:赛题数据

附件 1 中共包含 100 张信用评分卡,每张卡可设置 10 种阈值之一,并对应各自的通过率与坏账率共 200 列,其中 t_1 代表信用评分卡 1 的通过率共 10 项,h_1 代表信用评分卡 1 的坏账率共 10 项,依次类推 t_100 代表信用评分卡 100 的通过率,h_100 代表信用评分卡 100 的坏账率。根据上面的赛题说明及附件 1 中的数据,请你们团队通过建立数学模型完成如下问题 1 至问题 3。

问题 1:在 100 个信用评分卡中找出 1 张及其对应阈值,使最终收入

最多,请针对该问题进行建模,将该模型转为 QUBO 形式并求解。

问题 2:假设赛题说明 3 目前已经选定了数据集中给出的信用评分卡1、信用评分卡 2、信用评分卡 3 这三种规则,如何设置其对应的阈值,使最终收入最多,请针对该问题进行建模,将模型转为 QUBO 形式并求解。

问题 3:从所给附录中 100 个信用评分卡中任选取 3 种信用评分卡, 并设置合理的阈值,使得最终收入最多,请针对该问题进行建模,并将模 型转为 QUBO 形式并求解。

2 方案解析

2.1 问题一

这是一个组合优化问题,需要在100张信用评分卡中找到最优的一张卡和对应的阈值,使得最终收入最多。因为每张卡都有10个阈值选项,因此总共有1000个可能的选择。为了将该问题转化为QUBO模型,需要定义一组变量,表示选择第i张卡的第j个阈值时是否为1,其中i∈[1,100], j∈[1,10]。另外,需要定义一个目标函数来最大化最终收入。目标函数的形式为:
m a x i m i z e : ∑ i ∑ i r i j x i j maximize:\sum_i \sum_i r_{ij} x_{ij} maximizeiirijxij
其中 r i j r_{ij} rij是选择第i张卡的第j个阈值时的收入。 x i j x_{ij} xij表示选择第i张卡的第j个阈值时的变量。

为了使得选择的方案符合题意,需要加入约束条件。首先,每张卡只能选择一个阈值,因此需要添加如下约束:
∑ j x i j = 1 i = 1 , 2 , . . . , 100 \sum_j x_{ij} = 1 \quad i = 1,2,...,100 jxij=1i=1,2,...,100
其次,只能选择一个卡和对应的阈值,因此需要添加如下约束:
∑ i ∑ j x i j = 1 \sum_i \sum_j x_{ij} = 1 ijxij=1
最后,
。。。。略,请下载完整文档

2 问题二

对模型进行线性化,将二次项转化为一次项,然后将模型转化为 QUBO 形式。具体地,我们定义 x_{ij}表示信用评分卡 i中选择第 j个阈值,其中 i ∈ 1 , 2 , 3 , j ∈ 1 , 2 , … , 10 i \in {1, 2, 3}, j \in {1, 2, \dots, 10} i1,2,3,j1,2,,10 y i y_i yi 表示是否选择信用评分卡i,其中 i ∈ 1 , 2 , 3 i \in {1, 2, 3} i1,2,3 z j z_j zj 表示是否选择第 j个阈值,其中 j ∈ 1 , 2 , … , 10 j \in {1, 2, \dots, 10} j1,2,,10。同时,我们引入一个变量r表示总收入。

根据前面的分析,可以得到以下约束条件:

每个信用评分卡最多选择一个阈值,即

∑ j = 1 10 x i j ≤ 1 , i ∈ { 1 , 2 , 3 } ∑_{j=1}^{10} x_{ij} \leq 1, i \in \{1,2,3\} j=110xij1,i{1,2,3}

选择某个信用评分卡的同时必须选择该信用评分卡对应的一个阈值,即

x i j ≤ y i , i ∈ { 1 , 2 , 3 } , j ∈ { 1 , 2 , … , 10 } x_{ij} \leq y_i, i \in \{1,2,3\}, j \in \{1,2,\dots,10\} xijyi,i{1,2,3},j{1,2,,10}

总共只能选择三个信用评分卡,即

∑ i = 1 3 y i = 3 ∑_{i=1}^{3} y_i = 3 i=13yi=3
选择某个阈值的同时必须选择对应的信用评分卡,即

x 1 j + x 2 j + x 3 j − z j = 0 , j ∈ { 1 , 2 , … , 10 } x_{1j} + x_{2j} + x_{3j} - z_j = 0, j \in \{1,2,\dots,10\} x1j+x2j+x3jzj=0,j{1,2,,10}
根据信用评分卡的阈值和数据集中给出的通过率和坏账率,计算收入,即

r = 200 ∑ i = 1 3 ∑ j = 1 10 x i j ( t i − h i ) z j r = 200\sum_{i=1}^{3} \sum_{j=1}^{10} x_{ij} (t_i - h_i) z_j r=200i=13j=110xij(tihi)zj

其中第 4 个约束条件是一个等式约束,我们可以将其转化为两个不等式约束:

x 1 j + x 2 j + x 3 j ≤ 1 + z j , j ∈ { 1 , 2 , … , 10 } x 1 j + x 2 j + x 3 j ≥ 1 − 2 ( 1 − z j ) , j ∈ { 1 , 2 , … , 10 } x_{1j} + x_{2j} + x_{3j} \leq 1 + z_j, j \in \{1,2,\dots,10\} \\ x_{1j} + x_{2j} + x_{3j} \geq 1 - 2(1 - z_j), j \in \{1,2,\dots,10\} x1j+x2j+x3j1+zj,j{1,2,,10}x1j+x2j+x3j12(1zj),j{1,2,,10}
接下来,我们将每个约束条件转化为 QUBO 表达式。首先,我们考虑将约束条件中的不等式转化为等式。对于一个不等式 a ≤ b a \leq b ab,我们可以引入一个非负变量 s s s,并将其转化为等式 a + s = b a + s= b a+s=b,其中 s s s 表示两边差的绝对值。这样,我们就可以将所有约束条件转化为等式的形式,从而将模型转化为 QUBO 形式。

具体地,我们可以将目标函数表示为:
H = A r + ∑ i = 1 3 ∑ j = 1 10 B i x i j + ∑ j = 1 10 C j z j + ∑ i = 1 3 D i y i + ∑ i = 1 3 ∑ j = 1 10 ∑ k = 1 10 E i j k x i j x i k + ∑ i = 1 3 ∑ j = 1 9 ∑ k = j + 1 10 F i j k x i j x i k H = A r + ∑_{i=1}^3 ∑{j=1}^{10} B_i x_ij + ∑_{j=1}^{10} C_j z_j + ∑{i=1}^3 D_i y_i + ∑_{i=1}^3 ∑_{j=1}^{10} ∑ _{k=1}^{10} E_{ij}^k x_{ij} x_{ik} + ∑ _{i=1}^3 ∑ _{j=1}^9 ∑_{k=j+1}^{10} F_{ij}^k x_{ij} x_{ik} H=Ar+i=13j=110Bixij+j=110Cjzj+i=13Diyi+i=13j=110k=110Eijkxijxik+i=13j=19k=j+110Fijkxijxik
其中
。。。。略,请下载完整文档

2.3 问题三

首先,我们定义三个二元变量 x 1 , x 2 , x 3 x_1, x_2, x_3 x1,x2,x3,表示我们是否选择了每个评分卡。

其次,我们需要定义一个阈值 T T T,表示最小的信用评分得分,只有评分高于此阈值的评分卡才会被选择。

最后,我们需要定义一个目标函数,表示我们希望最大化的收入。在这个问题中,我们可以将收入定义为三个选择的信用评分卡的得分之和。

因此,我们的目标是将以下函数最大化:
f ( x 1 , x 2 , x 3 ) = s 1 x 1 + s 2 x 2 + s 3 f(x1,x2,x3)=s1x1+s2x2+s3 f(x1,x2,x3)=s1x1+s2x2+s3
其中 s 1 , s 2 , s 3 s_1, s_2, s_3 s1,s2,s3 分别表示我们选择的三个信用评分卡的得分。

接下来,我们需要定义约束条件。首先,我们需要确保只选择了三个信用评分卡:
x 1 + x 2 + x 3 = 3 ∗ x ∗ 1 + ∗ x ∗ 2 + ∗ x ∗ 3 = 3 x1+x2+x3=3*x*1+*x*2+*x*3=3 x1+x2+x3=3x1+x2+x3=3
其次,我们需要确保选择的评分卡的得分都高于阈值 T T T
s 1 x 1 ≥ T , s 2 x 2 ≥ T , s 3 x 3 ≥ T ∗ s ∗ 1 ∗ x ∗ 1 ≥ ∗ T ∗ , ∗ s ∗ 2 ∗ x ∗ 2 ≥ ∗ T ∗ , ∗ s ∗ 3 ∗ x ∗ 3 ≥ ∗ T ∗ s1x1≥T,s2x2≥T,s3x3≥T*s*1*x*1≥*T*,*s*2*x*2≥*T*,*s*3*x*3≥*T* s1x1T,s2x2T,s3x3Ts1x1T,s2x2T,s3x3T

最后,我们需要确保变量 x 1 , x 2 , x 3 x_1, x_2, x_3 x1,x2,x3 都是二元变量:
x 12 = x 1 , x 22 = x 2 , x 32 = x 3 ∗ x ∗ 12 = ∗ x ∗ 1 , ∗ x ∗ 22 = ∗ x ∗ 2 , ∗ x ∗ 32 = ∗ x ∗ 3 x12=x1,x22=x2,x32=x3*x*12=*x*1,*x*22=*x*2,*x*32=*x*3 x12=x1,x22=x2,x32=x3x12=x1,x22=x2,x32=x3
将目标函数和约束条件转换为 QUBO 形式:
。。。。略,请下载完整文档

3 代码实现

data = readmatrix('附件1:data_100.csv');
rates = data(:,1:100);
loss_rates = data(:,101:200);

R = rates .* loss_rates;

Q = zeros(100,100);
for i = 1:100
    for j = i:100
        for k = 1:10
            for l = 1:10
                Q(i,j) = Q(i,j) + R(k,l)*rates(k,i)*rates(l,j);
            end
        end
        Q(j,i) = Q(i,j);
    end
end

C1 = zeros(100,100);
for i = 1:100
    for j = 1:100
        for k = 1:10
            C1(i,j) = C1(i,j) + rates(k,i)*rates(k,j);
        end
        C1(i,j) = C1(i,j)*(sum(rates(:,i))-1)^2;
    end
end

C2 = (sum(sum(rates))-1)^2;

QUBO = Q - C1 - lambda*C2;
%qubo_solver 通常用于解决二次无约束二元优化问题(QUBO)或二次无约束整数规划问题(QUIP)
solution = qubo_solver(qubo_matrix, 'qbsolv', 'timeout', 30, 'num_reads', 100);

。。。略,请下载完整代码

4 下载

查看知乎文章最底部的,或者私信我

zhuanlan.zhihu.com/p/621628668文章来源地址https://www.toymoban.com/news/detail-457091.html

到了这里,关于【2023 年第十三届 MathorCup 高校数学建模挑战赛】A 题 量子计算机在信用评分卡组合优化中的应用 详细建模过程解析及代码实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 2023第十三届MathorCup高校数学建模挑战赛C题解析

    C 题 电商物流网络包裹应急调运与结构优化问题 电商物流网络由物流场地(接货仓、分拣中心、营业部等)和物流场地之间的运输线路组成,如图 1 所示。受节假日和“双十一”、“618”等促销活动的影响,电商用户的下单量会发生显著波动,而疫情、地震等突发事件导致物

    2023年04月22日
    浏览(64)
  • 2023 年第三届长三角高校数学建模竞赛赛题浅析

    为了更好地让大家本次长三角比赛选题,我将对本次比赛的题目进行简要浅析。数模模型通常分为优化、预测、评价三类,而本次数学题目就正好对应着A、B、C分别为优化、预测、评价。整体难度不大,主要难点在于A题的优化以及B、C的数据收集。稍后,我将为大家收集一些

    2024年02月05日
    浏览(40)
  • 2023年第四届MathorCup高校数学建模挑战赛——大数据竞赛B题解题思路

    比赛时长为期7天的妈杯大数据挑战赛如期开赛,为了帮助对B题有更深的理解,这里为大家带来B题的初步解题思路。 赛道B:电商零售商家需求预测及库存优化问题 由于妈杯竞赛分为初赛复赛,因此,对于B题大家仅仅看到了预测相关的问题,没有优化相关的问题。包括题干中

    2024年02月06日
    浏览(45)
  • 2023 年第三届长三角高校数学建模 C 题 考研难度知多少

    2023 年第三届长三角高校数学建模竞赛题目 (请先阅读 “ 长三角高校数学建模竞赛论文格式规范 ” ) C 题 考研难度知多少 据相关媒体报道, 2023 年考研可以称得上是 “ 最难 ” 的一年,全国研究生报 考人数突破新高达到 474 万人、部分考研学生感染新冠带病赴考、保研名

    2024年02月05日
    浏览(43)
  • 2023年第三届长三角高校数学建模竞赛】A 题 快递包裹装箱优化问题 详细数学建模过程

    【2023年第三届长三角高校数学建模竞赛】A 题 快递包裹装箱优化问题 20页完整论文及代码 2022 年,中国一年的包裹已经超过 1000 亿件,占据了全球快递事务量的一半以上。近几年,中国每年新增包裹数量相当于美国整个国家一年的包裹数量, 十年前中国还是物流成本最昂贵

    2024年02月06日
    浏览(60)
  • 【2023 年第三届长三角高校数学建模竞赛】C 题 考研难度知多少 考研情况相关数据下载

    C 题 考研难度知多少 据相关媒体报道,2023 年考研可以称得上是“最难”的一年,全国研究生报考人数突破新高达到 474 万人、部分考研学生感染新冠带病赴考、保研名额增多 挤压考研录取名额等因素都导致了 2023 年考研上岸难度加大。不少同学参加完 2023 年考研直呼:今年

    2024年02月06日
    浏览(60)
  • 【2023年第三届长三角高校数学建模竞赛】A 题 快递包裹装箱优化问题 20页完整论文及代码

    【2023年第三届长三角高校数学建模竞赛】A 题 快递包裹装箱优化问题 详细数学建模过程 2022 年,中国一年的包裹已经超过 1000 亿件,占据了全球快递事务量的一半以上。近几年,中国每年新增包裹数量相当于美国整个国家一年的包裹数量, 十年前中国还是物流成本最昂贵的

    2024年02月08日
    浏览(45)
  • 2023 年第十三届“MathorCup” C 题 包裹应急调运问题(解题思路)

    题目背景 电商物流网络由物流场地(接货仓、分拣中心、营业部等)和物流场地之间的运输线路组成。如果物流场地由于紧急情况而暂时或永久关闭,则由其处理的包裹将紧急转移至其他物流场地。这些因素将影响每条线路运输的包裹数量和每个物流场地处理的包裹数量。如

    2024年02月06日
    浏览(57)
  • 【2023 年第三届长三角高校数学建模竞赛】B 题 长三角新能源汽车发展与双碳关系研究 18页论文、数据和代码

    《节能与新能源汽车技术路线图 2.0》提出至 2035 年,新能源汽车市场占比超过 50%,燃料电池汽车保有量达到 100 万辆,节能汽车全面实现混合动力化, 汽车产业实现电动化转型的明确目标。这与国务院办公厅印发的《新能源汽车产业发展规划(2021—2035 年)》的目标是一致的。

    2024年02月17日
    浏览(44)
  • 第三届2022MathorCup高校数学建模挑战赛大数据论文加代码(附详解)

       摘要         本题主要是一个研究预测模型,以中国移动通信集团北京公司为背景,让客户根据 自身在网络覆盖与信号强度方面的体验和语音通话过程中的整体体验来进行语音通话 整体满意度的打分,统计出客户语音业务体验中的影响因素,从而提升客户语音业务满 意

    2024年02月03日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包