基于多目标蜂群优化算法的计算机辅助配色
2018-03-19杨连贺
赵 黎,杨连贺,黄 新
(1.天津工业大学 纺织学院,天津 300387; 2.天津师范大学 计算机与信息工程学院,天津 300387)
0 引言
近年来,众多学者开始对包含多种色彩搭配的产品色彩意象评价方法进行研究。目前对产品色彩设计的研究主要分为3个方向[1-3]:①采用色彩调和理论进行产品色彩设计;②运用知识工程理论进行产品色彩设计;③利用智能算法进行满足消费者意象需求的自动化产品色彩设计。
与传统的产品色彩设计方法相比,国内外学者已经探索了很多计算机辅助的智能产品色彩设计方法。一些学者使用灰度理论、神经网络等理论方法建立色彩方案的评价模型,然后运用遗传算法(Genetic Algorithm, GA)对最优产品色彩方案进行搜索[4],再以学步车、水壶等产品为设计实例建立相关设计系统。还有一些学者通过调查问卷法获取手机色彩意向评估数据[5],利用神经网络技术学习评估经验[6],并根据GA建立产品基因模型,构造了产品色彩智能化评价与设计系统[7]。文献[8-12]均将智能方法应用于服装色彩设计,然而影响服装色彩设计的因素较多,包括消费者对产品色彩意象表达不明确、消费者意象需求的多样性、消费者的文化和地域差异性等[13]。目前的智能算法,如蚁群、蜂群、粒子群等算法存在收敛速度过快、易陷入局部最优等问题,对解决多维优化问题能力有限[14-17],虽然现在已有一些多目标优化方法[18],但还没有将其有效地应用于服装产品色彩设计中。
本文提出分层多蜂群优化算法,该算法适于求解复杂的高维优化问题,其创新性体现在以下两个方面:①采用分而治之的降维策略,将待解问题的维度分解为若干低维度问题后,分别用一个子种群求解,降低了问题的难度也提高了算法搜索的成功率;②为了保证多蜂群共同进化,采用交叉操作和精英选择策略实现种群之间的信息交流,防止子种群中的个体过早陷入局部最优,保证了种群的多样性。相对于经典的智能优化算法及其衍生的协同版本,该改进算法的搜索精度较高、收敛速度快、鲁棒性好。将该算法应用于服装产品色彩设计多目标评价模型,通过实例证明使用该算法可以获得诸多评价结果较好的色彩设计组合,从而验证了该算法对服装色彩设计的实用性。
1 多目标层次蜂群优化算法
1.1 连续型HABC算法描述
在生物统一进化框架的基础上,结合高维向量智能分解策略和种群间的增强学习方法,使用混合蜂群优化算法(Hybrid Artificial Bee Colony, HABC)逐层分解高维问题,最终分解为简单的子分量,由各层的个体负责进化,再逆向汇聚到顶层,其顶层个体的最优解代表了整个问题的最终解。
1.1.1 人工蜂群算法
人工蜂群(Artificial Bee Colony, ABC)算法[19-20]框架中,整个蜂群被分为雇佣蜂、跟随蜂和侦查蜂3种类型。
开始阶段,在搜索空间内随机产生一组雇佣蜂,即
(1)
雇佣蜂更新位置公式为
vij=xij+φij(xij-xkj)。
(2)
式中:k表示与i不同的雇佣蜂;j为任意维度;φ为分布于[-1,1]的一个随机数。
在跟随蜂阶段,占据优秀食物源的雇佣蜂有更大的概率被选择进行信息交换,计算公式为
(3)
式中fiti为第i个侦查蜂当前的适应度值。循环雇佣蜂、跟随蜂、侦查蜂阶段直至满足终止条件。
1.1.2 HABC算法总体过程
如图1所示,在3层结构中,最下层个体运行ABC算法搜索子分量的最优位置,将最优解传到上一层;多个种群组成中间层;群落层位于最顶层,群落中的个体表示一个完成解,全部个体最优解即为目标问题的最终解。
1.1.3 向量分解算法
向量分解算法的具体步骤如下:
步骤1将D维向量分组为K个子向量,子向量对应s维的子群,子群由多个体组成,第j个子群表示为Pj,j∈[1,…,K]。
步骤2由子群Pj的最优解的集合构成背景向量Gbest,
Gbest=(P1.g,P2.g,Pj.g,…,PK.g)。
(4)
步骤3对每个子群进行人工蜂群算法。
步骤4使用贪婪算法比较历史最优解与Gbest。
1.1.4 基于交叉操作的增强学习策略
在原始ABC算法中,蜂群个体间的信息交流被限制在一个狭窄的区域内,容易引起维度灾难。为了解决该问题,本文利用种群精英个体的食物源相关信息,将基于交叉操作的增强学习策略融入个体搜索过程中,具体步骤如下:
步骤1精英选择(Best Performance List, BPL)构建。当前子群搜索后,使用环形拓扑结构,从相邻子群中选择一组具有较好的个体构建BPL。
步骤2选择BPL的父代。采用锦标赛方式,从精英群中选择最优父代。
步骤3种群间进行交叉操作。借鉴传统GA的交叉方法[13],即
snew=rand(0,1)×parent1+
rand(0,1)×parent2。
(5)
式中:Snew为新产生的子代;parent1和parent2为从BPL中选择的父代。
步骤4使用贪婪算法留下最优个体来进行自我优化。
1.1.5 HABC算法步骤描述
HABC算法具体步骤如下:
步骤1根据式(5)初始化各层群体。将整个群体按层随机分成N个群落(Pi),每个群落包括K个种群(Pij),每个种群拥有M个个体蜜蜂。
步骤2根据式(4)构建全局背景向量Gbest,该向量由各个种群Pij代表的s维子分量汇聚而成。
步骤3参考1.1.1节保存个体历史最优解,完成进行底层个体进化过程;参考1.1.3节进行中间种群进化,更新种群个体。
步骤4汇集各种群的局部子向量最优解,保存历史最优完全解,进行种群进化。
步骤5判断是否满足终止条件,是则终止,否则重复步骤2~步骤4。
1.2 多目标人工蜂群算法设计
对一个问题求解多个目标,因为多个目标之间存在相互矛盾或者冲突的关系,所以权衡目标并尽可能多地优化这些目标,得到多种解集,即Pareto解集。模拟蜂群搜索食物源,在分层HABC算法框架的基础上,使用如下多种优化方法求解多目标问题。
1.2.1 存储基于外部档案的非支配解
步骤1初始化向量空间,比较种群中所有个体的解,在外部档案中存入非支配解,生成外部档案。
步骤2在个体进化过程中,使用式(5),利用外部档案中随机抽取出的一个解生成新位置,在多目标函数上将新位置与原来位置进行比较,形成新非支配解,并将其存入外部档案。
步骤3计算外部档案的拥挤距离,筛选最优解,剔去劣质解。按时对计算外部档案中个体的拥挤距离非支配解进行排序,保证非支配解的规模在给定范围内,并保持解具有良好的分布状态。
1.2.2 计算拥挤距离
外部档案中非支配解的分布状态或密度可以通过拥挤距离度来度量,计算步骤如下:
步骤1对外部档案中的非支配解逐次按照每个目标值进行排序。
步骤2第i个非支配解的拥挤距离是最邻近的2个体i+1和以i-1为顶点得到的矩形的边长。
步骤3累计每个目标上计算的拥挤距离,得到每个解的总拥挤距离。
1.2.3 多目标蜂群优化算法总体描述
利用HABC算法框架并结合上述多目标优化改进策略,得到多目标人工蜂群优化(Multi-Objective Hybrid Artificial Bee Colony, MOHABC)算法,该算法的主要实现过程是在HABC算法的基础上增加如下步骤:
(1)在各层群体初始化阶段,计算最下层个体的初始解的支配关系,并将筛选出的非支配解存入外部档案中。
(2)在第一层个体进化阶段,参照1.2.1节步骤2,将找出的非支配解放入外部档案。
(3)在群落层进化阶段,参照1.2.2节得到外部档案的拥挤距离,然后对解进行优胜略汰的筛选。
图2所示为MOHABC算法流程图。
2 多目标人工蜂群算法测试
2.1 精度测试
选择DTLZ系列三目标标准测试函数DTLZ2和DTLZ6,选择MOABC[21]、改进的非支配排序遗传算法(Non-dominated Sorting Genetic AlgorithmⅡ, NSGAⅡ)[22]与MOHABC[23]算法进行比较。算法中对参数进行如下设置:MOHABC中设置分裂因子、群落规模、外部档案分别为5,10,50,CR=0.1;MOABC中设置蜂群大小、外部档案分别为50,100;NSGA-Ⅱ中设置种群大小、交叉变异分布指数分别为50,20,交叉概率为0.9,变异概率为1/D,D是目标函数的维度。将适应度函数的调用次数作为每个算法的终止条件。
从表1中三目标函数测试结果看,对于DTLZ2,MOHABC能够获得较多的解集,MOHABC比NSGA-Ⅱ表现好。从图3的测试结果看,对于DTLZ6,MOHABC在Pareto区域的收敛性高出另外两个算法一个数量级。由图3b可见,MOHABC和MOABC具有相对较好的分布性,在4个子区域都获得了一些非支配解。这里NSGA-Ⅱ获得的解集不够理想,不能收敛到4个离散的Pareto区域,而且解的分布性很差,明显弱于MOHABC和MOABC算法。
表1 所有算法在DTLZ2,DTLZ6测试函数的性能比较
2.2 效率测试
图4所示为MOHABC,MOABC和NSGA-Ⅱ算法针对DTLZ2和DTLZ6问题的求解时间的比较结果,图中的时间为每种算法对每个问题运行10次的时间平均值。可以看出MOABC和NSGA-Ⅱ的运行时间类似,对不同问题的运行时间均有长短,其中MOHABC算法的运行时间最长,主要原因是分层多种群策略的引入增加了算法的复杂度,但运行时间并没有成量级变化,说明MOHABC算法的运行效率在可接受范围内。
3 基于HABC的服装智能色彩设计
针对消费者对色彩配色结果表述相对模糊,不易清晰描述的问题,以女性裙装为例进行计算机辅助配色。首先采用BP(back propagation)神经网络等黑箱式模拟手段建立消费者对目标的色彩设计评价模型,通过生物启发式计算技术对模型进行优化仿真,旨在提高服装色彩设计的效果,辅助设计师设计出有针对性的产品,降低产品投入市场的风险。
3.1 服装智能色彩设计
3.1.1 BP神经网络
标准BP神经网络的具体编程步骤如下:
(1)网络初始化。设置输入层有M个输入信号,任意一个输入信号用m表示;一个隐含层用I表示,任意一个神经元用i表示;输出层为J,任意一个输出信号用j表示;输入层到隐含层,及隐含层到输出层的连接权值分别为wmi,wij;将训练次数计算器t和样本计算器p均设置为0;设定网络训练需达到的误差精度。
(2)输入训练样本,计算隐含层和输出层单元的输出。
(3)计算神经元输出与期望输出之间的误差。
(4)计算各层误差信号。
(5)调整各层权值,修正对输出层和中间层的权值。
3.1.2 调查问卷设计
为获得消费者对特定款连衣裙的喜好效果,需要适当设计市场调查问卷。表2所示为本研究所采用的调查问卷[24]。
表2 特定款服装调查问卷
在调查问卷上,部分问题是针对消费者自身消费定位的划分(第1~4问),部分问题是针对消费理念的咨询(第5~7问),部分问题是针对消费者对该款服装设计设想的划分(第7~10问),部分问题是针对改款服装设计效果的评价(第11~13问)。
3.1.3 优化模型的建立
首先将调查问卷的问题进行量化,量化的结果数值在1~100之间。例如第四个问题,1选项量化为20,2选项量化为40,3选项量化为60,4选项量化为80。然后将前10个选项作为神经网络输入,11选项~13选项的分数作为BP神经网络的期望输出,另外裙装2个色彩的RGB值也作为BP神经网络的输入,如图5所示。
用训练好的BP神经网络作为替代消费者意愿的黑箱式模型(如图6),将优化算法作为黑箱模型的输入生成器,在启发式算法迭代搜索过程中,逐步获得优化结果组成的Pareto前沿,然后从Pareto前沿中人工选择具有代表性的色彩配色效果。
3.2 结果分析
BP神经网络经过100份消费者调查问卷训练后,采用MOHABC作为启发式计算优化方法迭代2 000次后,获得的服装色彩设计三目标优化问题的Pareto前沿,如图7所示。
从图中可以看出,这3种结果之间存在一定程度的协同,即所获得的评分可以同时向最优的方向进行。从图7的求解效果中支取9个结果作为最终效果展现,按照优化值从高到低的顺序依次为:浅棕与棕黄搭配、紫色系搭配、浅红色系搭配、蓝灰色系搭配、浅蓝色系搭配、浅绿色系搭配、灰色系搭配、褐色搭配、蓝绿色搭配。从这9组优化结果上看,大部分的服装配色是选用柔和的浅黄色、浅红色、浅棕色搭配的暖色调,并且从问卷上看,年轻的高学历高收入群体比较易于进行这种搭配;也有一部分服装配色结果色彩较为醒目艳丽,包括草绿色、绿色、深绿色等,年轻的中等收入群体较倾向于这种搭配;而少数优化结果为深灰色与褐色,一般较高学历的高收入群体进行这种搭配。
从结果上看,这款衣服更适合年龄稍小和喜欢温馨色彩的消费者,因此该款裙装从前期设计到后期产品销售都应该以这部分消费者为受众群体。
4 结束语
本文提出一种多目标优化智能算法,并将该算法用于服装色彩设计模型中,帮助设计师为模型提供多样性的设计方案并获得评价结果。
算法借鉴生态群落共生进化和复杂适应系统的最新研究成果,采用基于精英策略的交叉操作和维度智能分解方法,将复杂高维优化问题分解为相对简单的子问题,由并行的子群体进行协同进化。在测试函数上进行性能测试的结果表明,该算法能够解决收敛速度过快和局部最优问题,适合解决多目标优化问题。
基于调查问卷建立服装色彩设计的人工神经网络模型。模型的输入是调查问卷结果的数值量化,输出是色彩设计方案及色彩方案的总体评价或多尺度评价结果。实验证明,使用MOHABC算法对模型进行优化可以获得诸多评价结果较好的设计组合。因为调查问卷内容为模型训练样本,所以对调查问卷的数量和质量有较高要求,后期考虑积累某品牌销售的相关数据作为训练样本,以增加评价模型的可靠性。
[1] SUN Zhixue. Multiple image selection of product color schemes based on grey relational analysis[J]. Journal of Machine Design.2015,32(1):45-51(in Chinese).[孙志学.基于灰色关联分析的产品色彩方案多意象优选[J].机械设计,2015,32(1):45-51.]
[2] ZHANG Lin, ZHAO Jing. Mathematical method study on image evaluation of product color design[J]. Journal of Machine Design,2014,31(12):108-111(in Chinese).[张 琳,赵 静.产品色彩设计意象评价的数理方法研究[J].机械设计,2014,31(12):108-111.]
[3] SU Jianning, ZHANG Xinxin, JING Nan, et al. Research on entropy evaluation of product styling image under the cognitive difference[J].Journal of Machine Design,2016,33(3):105-108(in Chinese).[苏建宁,张新新,景 楠,等.认知差异下的产品造型意象熵评价研究[J].机械设计,2016,33(3):105-108.]
[4] ZHAO Hui. Study and application on color intelligent design based on image representation[D]. Jiangxi:Nanchang University,2013(in Chinese).[赵 晖.基于意象表征的智能色彩设计方法研究及其应用[D].江西:南昌大学,2013.]
[5] LIU Xiaojian, CAO Yujing. Technology for color design service on mobile terminal with big data support[J]. Package Engineering,2015,36(12):33-36(in Chinese).[刘肖健,曹愉静. 基于移动终端的色彩信息交互式即时提取技术[J].包装工程,2015,36(12):33-36.]
[6] HU Zhigang, LYU Na, QIAO Xianling, et al. Application of BP neural network in product color-matched design[J]. Package Engineering,2016,37(10):136-141(in Chinese).[胡志刚,吕 娜,乔现玲,等. BP神经网络在产品配色中的应用研究[J].包装工程,2016,37(10):136-141.]
[7] LIU Xiaojian, SUN Yan, WU Jianfeng, et al. Product’s gene regulatory network model and its aiding to design process[J]. Computer Integrated Manufacturing Systems,2013,19(7):1463-1471(in Chinese).[刘肖健,孙 艳,吴剑锋,等. 产品基因调控网络模型及对设计过程的辅助[J].计算机集成制造系统,2013,19(7):1463-1471.]
[8] GENG Zengmin, SHANG Shuyuan, SHAO Xinyan, et al. Hierarchical semantic-based Web intelligent fashion image retrieval method[J]. Computer Science,2016,43(S2):252-255(in Chinese).[耿增民,商书元,邵新艳,等. 基于层次语义的Web服装图像智能采集方法[J]. 计算机科学,2016,43(S2):252-255.]
[9] TENG Zhaoyuan. Color research of men’s apparel based on design factors[D]. Shanghai:Donghua University,2012:22-38(in Chinese).[滕兆媛.基于设计因素的男装色彩研究[D]. 上海:东华大学,2012:22-38.]
[10] ZHAO Yejun, XI Ronghua. Clothing color model with quantum search[J]. Journal of Textile Research,2012,33(4):136-141(in Chinese).[赵野军,奚荣华.服装色彩搭配量子搜索模型[J]. 纺织学报,2012,33(4):136-141.]
[11] ZHANG Ying. Clothing color matching system intelligent research[D]. Beijing:Beijing Institute of Fashion Technology,2010:55-78(in Chinese).[张 莹.服装色彩搭配系统智能化研究[D].北京:北京服装学院,2010:55-78.]
[12] LIU Xiaojian, CAO Yujing, ZHAO Luxi. Color networks of traditional cultural patterns and color design aiding technology[J]. Computer Integrated Manufacturing Systems,2016,22(4):809-907(in Chinese).[刘肖健,曹愉静,赵露晞.传统纹样的色彩网络模型及配色设计辅助技术[J].计算机集成制造系统,2016,22(4):809-907.]
[13] CHEN Minmin. Consultation system for garment colors based on the wearing effects[D]. Suzhou: Soochow University,2009:46-70(in Chinese).[沈敏敏. 基于穿着因素的服装色彩咨询系统研究[D]. 苏州:苏州大学,2009:46-70.]
[14] ZOE F, LIEDM, LUISG A. A model for colour naming and comparing based on conceptual neighborhood.Anapplication for comparing art compositions[J]. Knowledge-Based Systems,2015 ,81(C):1-21.
[15] PEREZ C A, NAVARRO C F, SCHULZ D A, et al. Pattern detection using a new haralick quaternion color extraction model and support vector machine classifier[C]//Proceedings of 2013 IEEE International Conference on Systems,Man,and Cybernetics. Washington,D.C.,USA:IEEE,2013:3301-3305.
[16] HAN Yuyan, GONG Dunwei, SUN Xiaoyan. A discrete artificial bee colony algorithm incorporating differential evolution for the flowshop scheduling problem with blocking[J]. Engineering Opitimization,2015,47(7):927-946.
[17] POLI R, KENNEDY J, BLACKWELL T. Particle swarm optimization[J]. Swarm Intelligence,2007,1(1):33-57.
[18] JU Xuewei, HE Lijun, ZHU Guangyu. Multi-objective optimization method based on discrete Fréchet distance[J].Computer Integrated Manufacturing Systems,2017,23(2):243-252(in Chinese).[居学尉,贺利军,朱光宇.基于离散Fréchet距离的多目标优化方法[J].计算机集成制造系统,2017,23(2):243-252.]
[19] OZTURK C,KARABOGA D. Hybrid artificial bee colony algorithm for neural network training[J]. Evolutionary Computation,2011,30(1):84-88.
[20] KARABOGA D,BASTURK B. On the performance of artificial bee colony(ABC)algorithm[J]. Applied Soft Computing,2008,8(1):687-697.
[21] QI Xiangbo, ZHU Yunlong, NAN Lin, et al. A learnable artificial bee colony algorithm for numerical function optimization[C]//Proceedings of the 20th International Conference on Industrial Engineering and Engineering Management.Berlin,Germany:Spring-Verlag,2013:349-360.
[22] DEB K,PRATAP A,AGARWAL S, et al. A fast and elitist multiobjective genetic algorithm:NSGA-Ⅱ[J]. IEEE Transactions on Evolutionary Computation,2002,6(2):182-197.
[23] MA Lianbo, HU Kunyuan, ZHU Yunlong, et al. Discrete and continuous optimization based on hierarchical artificial bee colony optimizer[J]. Journal of Applied Mathematics,2014,2014(1):1-19.
[24] SHAO Tingting. A study of professional pregnant woman’s wears design[M]. Beijing:Beijing Institute of Fashion Technology,2008(in Chinese).[邵婷婷.白领孕妇装设计定位研究[M].北京:北京服装学院,2008.]