不透明制品配色优化模型:基于遗传算法的配方搜索
不透明制品配色优化模型:基于遗传算法的配方搜索
光通过物体传播有吸收、反射和透射三种方式。对于不透明制品来说,大部分光线会被其表面吸收或反射。吸收和反射的光线在经过透明度等校正后按波长分解成不同的颜色成分,形成光谱图。该光谱图通常由 400--700nm 波段的各色光组成。为简化计算,最终配色后的颜色的反射率以 20nm 为间隔的光谱数据来表示。对于不透明材料而言,吸收系数 K/散射系数 S 的比值与反射率 R 之间存在一定关系,具体请参考文献【1】《计算机配色理论及算法的研究》中的 K-M光学模型。基于光学模型得到的颜色参数,可应用于色差的计算。通常,使用色差(不超过 1)来作为配色效果好坏的标准。色差计算方法参考文献【2】《基于 CIELAB均匀颜色空间和聚类算法的混纺测色研究》中的 CIELAB 色彩空间的总色差计算方法。
问题
请建立不透明制品配色的优化模型。在已知目标样的 R 值(附件 3)的前提下,基于光谱三刺激值加权表(附件 1)与着色剂 K/S 基础数据库(附件2),运用优化模型配出与目标样的色差最为接近的 10 个不同配方,要求色差小于 1。
遗传算法
因为不透明制品配色问题涉及到多个参数的优化,且需要考虑色差的约束条件,因此我们选用通过元启发式算法中的遗传算法进行模型求解。遗传算法相对于其他优化算法来说,具有独特的优势。遗传算法利用种群的特点,从问题的部分可行解开始搜索,减低陷入局部最优概率和时间成本;通过适应度函数评估个体,减少了搜索规则的限制,适用范围较广;遗传算法是概率性事件,可以自我学习适应、寻优效果较好。
算法框架设计
- 染色体编码: 我们采用实数编码,将配方中每个着色剂的比例作为染色体的编码。
- 初始种群: 我们采用常规的随机生成方法,生成初始种群,每个染色体代表一种配方。
- 适应度函数确立: 根据给定的目标样的反射率R值,以及光谱三刺激值加权表和着色剂K/S基础数据库,计算每个染色体对应配方的色差值。
- 个体评价: 根据种群中染色体信息,计算每个染色体对应配方的色差值,得到每个染色体的适应度值。适应度值越小说明配方与目标样的色差越小。
- 选择因子: 根据适应度函数值从父代中挑选合适个体生存。我们在本文中选择精英机制选择因子,对于一个种群按个体适应值大小排序,选择前1/4个体作为精英进入下一代。
- 交叉因子: 我们采用单点交叉的方式进行交叉操作。即从种群中选择两个染色体,随机设置交叉点进行互换得到新的染色体。
- 变异因子: 我们采用单点变异的方式进行变异操作。即从种群中选择染色体,以一定的变异概率对染色体进行变异操作。
- 迭代终止: 本模型采用考虑最大迭代次数和时间成本作为终止条件,优先考虑迭代次数。
- 输出结果: 输出色差最小的前10个不同配方。
遗传算法超参数设置
| 超参数变量 | 超参数说明 | 取值范围 | 步长 | 选定参数 | |---|---|---|---|---| | S | 种群数量 | 5~30 | 5 | 10 | | G | 迭代次数 | 10~50 | 10 | 30 | | P_{c} | 个体交叉概率 | 0.3~0.8 & 0.1 & 0.6 | | P_{m} | 个体变异概率& 0.01~0.15& 0.045 & 0.1 |
通过参数组合实验,最终得到遗传算法超参数取值如表所示,种群数量为10,迭代次数为30次,个体交叉概率为0.6,个体变异概率为0.1,此时得到的配方色差最小。
参考文献
[1] 计算机配色理论及算法的研究 [2] 基于 CIELAB均匀颜色空间和聚类算法的混纺测色研究
原文地址: https://www.cveoy.top/t/topic/qfG0 著作权归作者所有。请勿转载和采集!