張 燕, 余隋懷, 陳登凱, 劉社明
(西北工業(yè)大學機電學院工業(yè)設(shè)計研究所,陜西 西安 710072)
產(chǎn)品的色彩設(shè)計過程是一個評價與調(diào)整不斷循環(huán)交替進行的過程,而對色彩設(shè)計方案進行人工賦色和修改也是一個繁鎖低效的工作。因此,從優(yōu)秀的色彩設(shè)計實例庫中提取出有用的色彩配置方案,并應(yīng)用于新的色彩設(shè)計中,將對縮短色彩設(shè)計周期和提高成功率大有幫助。但是,如何從龐大的色彩設(shè)計實例庫中提取有用的色彩方案,并經(jīng)過重組、創(chuàng)新運用到新的設(shè)計中是一個問題。
基于此,論文提出了一種將人工智能中的遺傳算法和蟻群算法相結(jié)合來實現(xiàn)產(chǎn)品配色的方法。首先,利用遺傳算法對已有色彩設(shè)計方案庫中的色彩方案進行編碼、適應(yīng)度計算、再進行選擇、交叉及變異,產(chǎn)生若干組色彩方案,最后,利用蟻群算法在若干組色彩方案中求解到最佳色彩方案。此方法可以有效地減少搜索空間,大大提高產(chǎn)品色彩設(shè)計效率及質(zhì)量,得到比較滿意的效果。
遺傳算法具有快速全局搜索能力,但是對于系統(tǒng)中的反饋信息卻沒有利用,往往導致大量無為的冗余迭代,求精確解效率較低。蟻群算法是通過信息素的累積和更新而收斂于最優(yōu)路徑,具有分布、并行、全局收斂能力,但搜索初期信息素匱乏、導致搜索初期信息素積累時間較長,求解速度慢[2]。因此,克服兩種算法各自的缺陷,形成優(yōu)勢互補,首先利用遺傳算法的隨機搜索、快速、全局收斂性產(chǎn)生有關(guān)問題的初始解,并將其轉(zhuǎn)化為蟻群算法的初始信息素分布,然后利用蟻群算法的并行性、正反饋機制以及求解效率高等特征尋求最優(yōu)解。這樣結(jié)合后的算法既發(fā)揮了遺傳算法與蟻群算法在尋優(yōu)搜索中各自的優(yōu)勢,又克服了遺傳算法在搜索到一定階段時最優(yōu)解搜索效率低以及蟻群算法初始信息素匱乏的不足,是時間效率和求解效率都比較好的啟發(fā)式算法[1]。將此方法應(yīng)用到產(chǎn)品配色當中的方法和步驟,如圖1所示。
圖1 遺傳蟻群算法結(jié)合應(yīng)用于產(chǎn)品配色中的基本思想
根據(jù)遺傳蟻群算法的相關(guān)技術(shù)及特點,構(gòu)建遺傳蟻群算法的產(chǎn)品配色過程模型,如圖2所示。
圖2 遺傳蟻群算法的產(chǎn)品配色過程模型
色彩配置方案包括確定色彩數(shù)、色彩值及每種色彩在設(shè)計方案中的比重大小。
產(chǎn)品配色設(shè)計所參考的源圖像多為16~32位色,而產(chǎn)品配色方案的用色數(shù)則要少得多,一般不會超過4 種。對源方案色彩的提取一般采取兩種方式:一種是合并,應(yīng)用模糊處理技術(shù)將相近的色彩進行合并;另一種是取舍,保留對視覺效果影響顯著的大比重色彩而忽略小比重的雜色[3]。
1)色彩設(shè)計方案編碼
對色彩方案庫中所提取的源方案色彩,按色彩比重的大小排序,采用RGB值來進行編碼:
colorcode=[色區(qū)1色值,色區(qū)2色值,……,色區(qū)N色值]。
2)適應(yīng)度計算
根據(jù)約束條件采用人機交互選擇的方式來進行適應(yīng)度的計算。
3)初始化群體
矩陣A表示一個色彩方案群,其中的每一種字母所代表的染色體就是一個預(yù)選色彩設(shè)計方案。例如:a1就指a色彩方案的色區(qū)1色值,an就指a色彩方案的色區(qū)N色值。而a色彩方案就是由a1、a2、a3到an這幾個色區(qū)所組成。
4)遺傳操作
(1)選擇方案
選擇是從種群中選擇生命力強的染色體,產(chǎn)生新種群的過程。選擇的依據(jù)是每個染色體的適應(yīng)度大小,適應(yīng)度越大,被選中的概率就越大,其子孫在下一次產(chǎn)生的個數(shù)就越多。選擇操作的主要目的是為了避免基因缺失、提高全局收斂性和計算效率[4]。
(2)方案交叉
以重組的方式進行交叉操作,本文采用排列組合的方式進行重組。例如,a1b2c3…mn等。
交叉在遺傳算法中起著核心作用,它決定了遺傳算法的全局搜索能力[4]。
(3)方案變異
變異是進化設(shè)計算法產(chǎn)生創(chuàng)造力的主要來源。對于產(chǎn)品配色來說主要以創(chuàng)新的方式來實施變異操作。創(chuàng)新是一種幅度較大的隨機變異,主要用于概念設(shè)計,為了保留創(chuàng)新的內(nèi)容不被淘汰掉,可以人為地調(diào)低適應(yīng)度閾值,或用交互操作來控制創(chuàng)新方案的選取[5]。
5)在算法中,遺傳算法結(jié)束條件實際上就是判斷遺傳算法與蟻群算法的融合時機。首先在遺傳算法中設(shè)置最小遺傳迭代次數(shù)Genemin和最大遺傳迭代次數(shù)Genemax。然后在遺傳算法迭代過程中統(tǒng)計子代群體的進化率,并設(shè)置子代群體最小進化率Genemin-improv-ratio。在設(shè)定的迭代次數(shù)范圍內(nèi),如果連續(xù)Genedie代,子代群體的進化率都小于Genemin-improv-ratio,說明此時遺傳算法優(yōu)化速度已經(jīng)很低,可以終止遺傳算法過程,進入蟻群算法[1]。
1)初始時刻,各條路徑上的信息素量相等,設(shè)tij(0)=c(c為常數(shù)),把m只螞蟻按一定規(guī)則分布在各個預(yù)選色彩設(shè)計方案上。在t時刻m只螞蟻各自選擇t+1時刻要去尋找的色彩設(shè)計方案,直到t+n時刻m只螞蟻各自完成一個循環(huán),再根據(jù)路徑的長度在其經(jīng)過的地方留下一定數(shù)量的信息素。原則是越短路徑留下越多的信息素,同時,各預(yù)選設(shè)計方案上的信息素也蒸發(fā)掉一部分,信息素更新結(jié)束后,開始下一輪的迭代。
在t時刻螞蟻k在色彩設(shè)計方案庫i選擇色彩設(shè)計方案j的轉(zhuǎn)移概率(t)為:
其中,ηij表示由色彩方案i轉(zhuǎn)移到j(luò)的啟發(fā)程度,τij表示色彩方案(i,j)上的信息素軌跡強度,α、β是參數(shù),表示兩者的重要程度。表示螞蟻k下一步允許選擇的色彩設(shè)計方案。tabuk用來記錄螞蟻k到目前為止尋找過的色彩設(shè)計方案,集合tabuk隨著進化過程作動態(tài)調(diào)整。
經(jīng)過n時刻,螞蟻完成一次循環(huán),各路徑上的信息素的量根據(jù)下式調(diào)整:
2)蟻群優(yōu)化算法模型實現(xiàn)。
蟻群算法的模型實現(xiàn)過程可以用偽代碼表示如下[6]:
(1)初始化過程
設(shè)t: =0;{t時間計數(shù)器}
Nc: =0;{Nc循環(huán)次數(shù)計數(shù)器}
τij(t): =C;{每條路徑(i,j)設(shè)一個軌跡強度的初始值}
將m只螞蟻隨機的置于遺傳算法得到了若干個優(yōu)化色彩設(shè)計方案(n)上;設(shè)置S: =1。
{s為禁忌表索引,將各螞蟻的初始方案置于當前禁忌表中}
(2)重復直到禁忌表滿為止{這一步要重復(n-1)次}
設(shè)置S:S+1
將螞蟻k移到j(luò)
將剛剛選擇的色彩設(shè)計方案j加到tabuk中;
對于每一個路徑(i,j),根據(jù)公式(2)計算
(3)記錄到目前為止的最短路徑ifNc 則 清空所有的禁忌表 置S: =1 tabuk(s)=i{一次循環(huán)后螞蟻又重新回到初始位置} 設(shè)t: =t+1 對每一條路徑(i,j),設(shè)置 返回到步驟(2) Else 輸出最短路徑(即最優(yōu)解)。 結(jié)合某大型企業(yè)“油罐車整車色彩”的設(shè)計項目,驗證遺傳蟻群算法在產(chǎn)品配色方面的有效性。設(shè)計部門的設(shè)計師將在“油罐車整車色彩方案庫”中進行方案的初步檢索,運用遺傳蟻群算法的產(chǎn)品配色設(shè)計方法進行優(yōu)化疊代,最終獲得最優(yōu)解。 進入“油罐車整車色彩方案庫”,提取色彩方案庫中源方案色彩,如圖3所示。 圖3 提取色彩方案庫中源方案色彩 對提取出的色彩方案,按照色彩視覺比重排序進行RGB編碼,如圖4所示。 圖4 對提取出的色彩方案進行RGB值編碼 人機交互計算適應(yīng)度函數(shù),然后將適應(yīng)度函數(shù)相對較大的色彩方案的RGB值編碼組成色彩方案種群。 對色彩方案種群進行遺傳操作(選擇、交叉、變異),得出若干優(yōu)化解,如圖5所示。 圖5 對色彩方案種群進行遺傳操作生成若干優(yōu)化解 對遺傳操作生成的若干解進行蟻群優(yōu)化,得出最優(yōu)解。根據(jù)文獻[7]中作者所做的一系列仿真實驗結(jié)果:基于蟻群算法中最優(yōu)的算法參數(shù)組合:m(螞蟻數(shù))(n為問題的規(guī)模,即若干解的數(shù)量),α=1~5,β=1~5,ρ(信息素殘留系數(shù))=0.7,Q=100。本文在蟻群操作中規(guī)定:m=5,α=2,β=3,ρ=0.7,Q=100,經(jīng)過20次迭代,最后得到色彩設(shè)計方案的最優(yōu)解,如圖6所示。 圖6 應(yīng)用蟻群算法得出的優(yōu)化解 模糊綜合評價是對受多種因素影響的事物做出全面評價的一種十分有效的多因素決策方法,其特點是評價結(jié)果不是絕對地肯定或否定,而是以一個模糊集合來表示[8]。為尋求合理量化評價因素及有效合成評價結(jié)果,同時,結(jié)合油罐車整車色彩設(shè)計的特點,本文選擇模糊評價方法對油罐車整車色彩設(shè)計最優(yōu)方案進行評價。 結(jié)合油罐車整車色彩設(shè)計方案,針對油罐車整車色彩設(shè)計質(zhì)量的評價指標為:U={u1,u2,…,un}(n=6),評語集為V={(很好v1),(較好v2),(一般v3),(較差v4),(很差v5)}。結(jié)合該色彩設(shè)計的特點,采用專家打分法確定該油罐車整車色彩設(shè)計各評價指標的評價權(quán)重W={0.1,0.3,0.2,0.1,0.1,0.2},構(gòu)建油罐車整車色彩設(shè)計方案評價打分表,如表1所示。 表1 油罐車整車色彩設(shè)計方案評價指標及打分表 對油罐車整車色彩設(shè)計方案打分的評價團隊由該企業(yè)隨機抽取的技術(shù)人員、營銷人員和用戶共20人構(gòu)成,對蟻群算法得出的優(yōu)化解采用表1進行打分。打分統(tǒng)計結(jié)果如表2所示。 表2 油罐車整車色彩設(shè)計方案評價打分表 根據(jù)表2可得油罐車整車色彩設(shè)計優(yōu)化解的模糊評判矩陣D: 則可得綜合評判模型B為: 對油罐車整車色彩設(shè)計方案優(yōu)化解的評價結(jié)果是:52.5%的人認為很好,33.5%的人認為較好,8.5%的人認為一般,4.5%的人認為較差,1%的人認為很差。由此可知,基于遺傳蟻群算法的產(chǎn)品配色方法是切實可行的,能夠滿足用戶的配色需求。 論文提出了一種將人工智能中的遺傳算法和蟻群算法相結(jié)合來實現(xiàn)產(chǎn)品配色的方法。通過實例驗證了基于遺傳蟻群算法的產(chǎn)品配色方法的可行性,克服了遺傳算法和蟻群算法各自的缺陷,大大提高了色彩設(shè)計效率,達到了時間性能和優(yōu)化性能的雙贏。但由于工業(yè)設(shè)計產(chǎn)品色彩問題的復雜性,特別是涉及到隱性方面的很多問題,尚待進一步研究。 [1]趙義武, 牛慶銀, 王憲成. 遺傳算法與蟻群算法的融合研究[J]. 科學技術(shù)與工程, 2010, 10(16):4017-4020. [2]李士勇, 陳永強, 李 研, 等. 蟻群算法及其應(yīng)用[M]. 哈爾濱: 哈爾濱工業(yè)大學出版社, 2004. [3]劉肖健, 李桂琴, 孫守遷. 基于交互式遺傳算法的產(chǎn)品配色設(shè)計[J]. 機械工程學報, 2009, 45(10):222-227. [4]馬 永, 賈俊芳. 遺傳算法研究綜述[J]. 山西大同大學學報(自然科學版), 2007, 23(3): 11-13. [5]劉肖健, 李桂琴, 景韶宇, 等. 基于遺傳算法的產(chǎn)品人機CAD研究[J]. 計算機工程與應(yīng)用, 2003, 33:35-37, 105. [6]賈旭輝. 基于蟻群算法的證券投資組合研究[D]. 北京: 北京交通大學, 2009. [7]詹士昌, 徐 婕, 吳 俊. 蟻群算法中有關(guān)算法參數(shù)的最優(yōu)選擇[J]. 科技通報, 2003, 19(5): 381-386. [8]耿 麗, 楊延璞, 杜 微. 基于Fuzzy理論的油罐車設(shè)計評價研究[J]. 科學技術(shù)與工程, 2011, 11(27):6767-6771.4 實例驗證
4.1 基于遺傳蟻群算法的油罐車整車色彩模型求解
4.2 油罐車整車色彩設(shè)計方案的模糊評價
5 結(jié) 論