【2023 华数杯全国大学生数学建模竞赛】 B题 不透明制品最优配色方案设计 详细建模方案解析及参考文献
1 题目
B 题 不透明制品最优配色方案设计
日常生活中五彩缤纷的不透明有色制品是由着色剂染色而成。因此,不透明制品的配色对其外观美观度和市场竞争力起着重要作用。然而,传统的人工配色存在一定的局限性,如主观性强、效率低下等。因此,研究如何通过计算机方法来实现不透明制品的配色具有重要意义。
光通过物体传播有吸收、反射和透射三种方式。对于不透明制品来说,大部分光线会被其表面吸收或反射。吸收和反射的光线在经过透明度等校正后按波长分解成不同的颜色成分,形成光谱图。该光谱图通常由 400–700nm 波段的各色光组成。为简化计算,最终配色后的颜色的反射率以 20nm 为间隔的光谱数据来表示。对于不透明材料而言,吸收系数 K/散射系数 S 的比值与反射率 R 之间存在一定关系,具体请参考文献【1】《计算机配色理论及算法的研究》中的 K-M光学模型。
基于光学模型得到的颜色参数,可应用于色差的计算。通常,使用色差(不超过 1)来作为配色效果好坏的标准。色差计算方法参考文献【2】《基于 CIELAB均匀颜色空间和聚类算法的混纺测色研究》中的 CIELAB 色彩空间的总色差计算方法。其中颜色参数 L*(明度)、a*(红绿色度)和 b*(黄蓝色度)计算中出现的三刺激值 XYZ 的计算方法如下:
$$X =k \int_{400}^{700} S(\lambda) x(\lambda)R(\lambda)d(\lambda)\\\ Y = k \int_{400}^{700} S(\lambda) y(\lambda)R(\lambda)d(\lambda)\\\ Z = k \int_{400}^{700} S(\lambda) z(\lambda)R(\lambda)d(\lambda)\\$$
其中, S(l) 为光谱能量分布,x(λ), y(λ), z(λ) 为观察者光谱三刺激值, S(λ)分别与x(λ), y(λ), z(λ) 相乘为固定值见附件 1。 R(λ)为光谱反射率,k值约为 0.1,d(λ)为测量物体反射率波长间隔,本题 d(λ) =20nm。
不透明制品配色问题,就是基于光学模型,设计不透明制品的配色模型。相较于人工配色,节省大量人力、物力和财力,对减少能耗具有重要意义。
针对某一不透明制品,已知红、黄、蓝 3 种着色剂在不同浓度不同波长的 K/S 值以及基底材料在不同波长下的 K/S 值,见附件 2。其中,浓度=着色剂克重/基材重量。每个着色剂的吸收系数 K/散射系数 S 的比值具有加和性,详见文献【1】《计算机配色理论及算法的研究》中的 K-M 单常数理论。现有 10 个目标样(二到三种着色剂混合制成)的 R 值,见附件 3。结果展示请保留 4 位小数。
请建立数学模型解决如下几个问题:
问题 1:请分别计算附件 2 中三种着色剂在不同波长下 K/S 与浓度的关系,并将关系式与拟合系数填写在表格中。
表 1 问题 1 相关结果数据
波长 | 红 | 黄 | 蓝 | |||
---|---|---|---|---|---|---|
函数关系式 | 拟合系数 | 函数关系式 | 拟合系数 | 函数关系式 | 拟合系数 | |
400nm | ||||||
420nm | ||||||
440nm | ||||||
…… | ||||||
700nm |
问题 2:请建立不透明制品配色的优化模型。在已知目标样的 R 值(附件 3)的前提下,基于光谱三刺激值加权表(附件 1)与着色剂 K/S 基础数据库(附件 2),运用优化模型配出与目标样的色差最为接近的 10 个不同配方,要求色差小于 1。
问题 3:在问题 2 的基础上,考虑成本控制和批量配色,改进配色模型。对 2kg 的基底材料进行配色,求出与目标样(附件 3)之间色差最为接近的 10 个不同配方,要求色差小于 1。色母粒单位克重价格见附件 4。
问题 4:在实际生产中,配色所需要的着色剂越少越好,基于此,在问题 3的基础上,寻找附件 3 中前 5 个样本的最优的配色方案,要求每个样本配出 5个不同的配方且色差小于 1。
提供的数据和资料:
附件 1(光谱三刺激值加权表)
附件 2(不同浓度不同波长的 K/S 值)
附件 3(10 个样品的 R 值)
附件 4(染料价格)
参考文献【1】 姜鹏飞. 计算机配色理论及算法的研究[D/OL]. 中原工学院,2016
参考文献【2】 王林吉. 基于 CIELAB 均匀颜色空间和聚类算法的混纺测色研究[D]. 浙江理工大学, 2011.
2 问题分析
2.1 问题一
这是一个线性回归问题。使用拟合模型来分析红、黄、蓝色着色剂在不同波长下K/S与浓度的关系。首先,在附件2的数据中看到红色下,浓度为0.05、0.1、0.5、1、2、3、4和5时,K/S值随浓度增加而增加。因此假设红色着色剂在不同浓度下的K/S值与浓度呈线性关系。则使用线性回归拟合模型来表示这种关系。使用简单的最小二乘法来拟合线性回归模型,找到最佳的系数a和b,使拟合曲线与实际数据的偏差最小化。
2.2 问题二
这是一个最优化问题,转化为非线性规划求解:
第一步:将表1中的光谱三刺激值加权表与表2中的基础数据库表合并,计算出材料的K/S值,并将结果保存为一个新的表4。
。。略
第三步建立优化模型:将配方作为优化变量,色差作为目标函数,建立一个最小化色差的优化模型。转化为非线性规划问题。
第四步确定约束:设置色差小于1的约束条件,确保选出的配方与目标样的色差小于1。
第五步求解优化问题:使用数学优化算法,如梯度下降法、遗传算法等,求解建立的优化问题,得到与目标样的色差最为接近的10个不同配方。
2.3 问题三
这是一个线性规划问题,在以上问题的基础上,将配色问题转化为一个线性规划问题,即在满足色差小于1的情况下,最小化配方的总成本。具体的建模过程如下:
第一步:将表1中的光谱三刺激值加权表与表2中的基础数据库表合并,计算出每种颜色的材料的K/S值,并将结果保存为一个新的表4。
第二步:计算每种颜色的配方总量:将2kg的基底材料按照每种颜色所需的比例,分配对应的配料量,得到每种颜色对应的配方总量。第三步建立优化模型:由于配方总量是连续变量,将每种颜色的配方总量作为优化变量,建立包含成本、约束条件的线性规划模型,使得在最小化成本的基础上,满足色差小于1的约束条件,如下:
其中 x、 y 、 z 分别表示红、黄、蓝色母粒的配方总量,单位为克。为了满足色差小于1的约束条件,需要添加约束条件:
。。略
其中 Ri、Gi、Bi 表示第 i 种配方与目标样的三原色, Rt、 Gt、 Bt 表示目标样的三原色。上述约束条件用于确保每种配方与目标样的色差小于1。其中变量大于0表示配方总量需要为正数。
第四步:求解优化问题:使用线性规划求解方法,如单纯形法或内点法等,求解建立的线性规划模型,得到与目标样的色差最为接近的10个不同配方,并计算每个配方的总成本。
2.4 问题四
这是一个混合整数线性规划问题。将问题建模成一个混合整数规划问题。对于每个样本,需要找到5个不同的配方,其中每个配方的色差都小于1,并且总的着色剂使用量最小。因此,将配方的数量作为整数变量,每个配方中各个颜色的使用量作为连续变量。
。。。略
最后,使用混合整数线性规划求解器(如CPLEX、Gurobi等)来求解该模型,并获取前5个样本的最优配方方案。
3 建模方案
3.1 问题一
简单的线性回归,y = ax+b。
3.2 问题二
设要优化的配方为向量$x=[c1,c2,…,cn]$,其中 ci 表示第 i种颜色的浓度(%), n 是颜色种类的数量。将光谱三刺激值加权表(表1)与基础数据库(表2)进行合并,得到材料的K/S值(表4)。对于材料的K/S值向量为$k_s = [k_{s1}, k_{s2}, \ldots, k_{sn}] $,其中 ksi 表示第 i种颜色的K/S值。对于目标样品的 R 值向量为 $rt=[rt1,rt2,…,rtn]$,其中rti 表示第 i 种颜色的目标样品的 R 值。使用 CIEDE2000 色差公式计算配方 x 与目标样品的色差,表示为 d(x)。将问题转化为非线性规划问题,即最小化色差d(x):
$$ \min_{x} \ d(x) $$
其中 x 的约束条件如下:
配方的浓度范围约束: cmin≤ci≤cmax,对于所有的 i。
色差约束:d(x)≤Threshold,其中 Threshold 是色差的最大值,即色差小于1。
配方种类的个数约束:为了获得不同配方,可以设置每种颜色的浓度不得相同。
3.3 问题三
首先将表1中的光谱三刺激值加权表与表2中的基础数据库表合并,计算出每种颜色的材料的K/S值,并将结果保存为一个新的表4。其次计算每种颜色的配方总量:将2kg的基底材料按照每种颜色所需的比例,分配对应的配料量,得到每种颜色对应的配方总量。然后第三步建立优化模型:由于配方总量是连续变量,将每种颜色的配方总量作为优化变量,建立包含成本、约束条件的线性规划模型,使得在最小化成本的基础上,满足色差小于1的约束条件。
假设需要配的颜色数为n,其中红色、黄色和蓝色对应的单位克重价格分别为C1、C2和C3元/kg。
假设变量:x1表示红色色母粒的用量(kg),x2表示黄色色母粒的用量(kg),x3表示蓝色色母粒的用量(kg),则对于每个配方i,我们有以下约束条件:
。。。略,请下载完整资料
求解以上的线性规划问题,就可以得到与目标样之间色差最为接近的10个不同配方。
3.4 问题四
目标函数:最小化总的着色剂使用量
$$min \sum_{s=1}^{5}\sum_{i=1}^{4}\sum_{j=1}^{3}C_{ij}s_{ij} $$
约束条件:
。。。略,请下载完整资料
其中,$x_{si} 表示样本s是否使用配方i(0或1),s_{ij} 表示配方i中颜色j的使用量,C_{ij}$表示颜色j的着色剂用量。
4 下载
知乎文章底部下载链接,包括完整资料的word文档和参考文献。
zhuanlan.zhihu.com/p/648089858