伴隨新能源、無人駕駛、AI技術(shù)的發(fā)展,汽車行業(yè)的智能化水平也情隨事遷。作為AI領域“皇冠上的明珠”,決策智能是怎樣推動汽車行業(yè)數(shù)字化轉(zhuǎn)型的?決策智能在實際落地中有哪些痛點和解決方案?本文將結(jié)合個人十年的數(shù)據(jù)分析經(jīng)驗,從實戰(zhàn)角度介紹運籌優(yōu)化在汽車行業(yè)的實踐探索和經(jīng)驗總結(jié),希望為大家的工作帶來幫助和啟發(fā),此次分享會圍繞下面四點展開:
汽車產(chǎn)業(yè)鏈簡介
運籌優(yōu)化賦能汽車行業(yè)
運籌優(yōu)化項目實施難點
實踐探索和經(jīng)驗總結(jié)
01汽車產(chǎn)業(yè)鏈簡介
汽車產(chǎn)業(yè)鏈可以分為核心四塊,一塊是貫穿整個產(chǎn)業(yè)鏈的,從零部件的采購到汽車的制造、銷售、售后服務的整個汽車產(chǎn)業(yè)鏈中的研發(fā)和技術(shù)。另外一塊是零部件的采購,通常一個汽車企業(yè)會有許多汽車零部件企業(yè)的支持,這塊很重要。第三塊是整車廠,對于整車廠來說,通常零件是由供應商來支持的,核心部件,像發(fā)動機、變速箱,都是由自己來生產(chǎn)的。第四大塊是銷售和服務,傳統(tǒng)的銷售模式有一個經(jīng)銷商,然后經(jīng)銷商分銷給各個客戶,現(xiàn)在還有一種直銷的模式。銷售之后會有售后和保險服務,囊括售后保養(yǎng)、保險、二手車等一系列的售后服務。
汽車產(chǎn)業(yè)鏈是很長的,故而也會有各種各樣的AI技術(shù)可以發(fā)揮作用。譬如汽車零件可以構(gòu)建一些知識圖譜,在生產(chǎn)制造和質(zhì)量方面有預測維護、缺陷檢測,以及汽車在銷售過程中有票據(jù)識別,還有汽車裝飾件識別等都有AI發(fā)揮技術(shù)的地方。從數(shù)據(jù)統(tǒng)計分析、機器學習,到自然語言處理、知識圖譜、智能交互、計算機視覺等AI領域的各個技術(shù),在汽車產(chǎn)業(yè)鏈上都能夠找到很多的應用場景。伴隨許多造車企業(yè)加入到汽車行業(yè)中,以及新能源、無人駕駛技術(shù)的推進,汽車行業(yè)的智能化水平也會愈來愈高。
02運籌優(yōu)化賦能汽車行業(yè)
運籌優(yōu)化是尋找滿足約束條件下,能夠使得某一個或幾個目標達到最優(yōu)化的最優(yōu)決策。運籌優(yōu)化分為兩個重要的步驟,建模和求解。第一步建模是將實際的問題變成一個數(shù)學優(yōu)化模型,模型包羅一些關(guān)鍵的要素,囊括決策變量、目標和約束條件等。下一步就是求解,求解觸及到許多優(yōu)化算法,其中一些是求精確解,一些是求非精確解,會觸及到不同的優(yōu)化算法。運籌學的傳統(tǒng)應用很多,譬如路徑優(yōu)化、選址優(yōu)化、供應鏈優(yōu)化、網(wǎng)絡布局等。
下面介紹一下運籌優(yōu)化在汽車供應鏈的應用。在終端需求采集方面,譬如新能源積分政策影響到汽車長期規(guī)劃,怎樣去規(guī)劃汽車才能滿足國家政策要求。在研發(fā)設計方面,譬如研發(fā)設計中的生產(chǎn)排程、庫存管理、訂單管理中車輛分配策略以及物流運輸中的運輸計劃、調(diào)度等。按照實際應用的決策等級和決策范圍來分可以把汽車領域的應用場景分為三個層級:
第一個層級是戰(zhàn)略層級的優(yōu)化,譬如汽車產(chǎn)能的規(guī)劃、零件加工工藝的規(guī)劃、庫存長期規(guī)劃、倉儲長期規(guī)劃。戰(zhàn)略層級的優(yōu)化對于時間性和穩(wěn)定性的要求會比較低,對結(jié)果的最優(yōu)化有較高要求。
第二個層級是計劃層面的優(yōu)化,像生產(chǎn)計劃、分銷計劃、物流計劃、物料計劃等,這些對于最優(yōu)解,時效性和穩(wěn)定性都有一定的要求,通常是每周亦或是每月做一些計劃。
第三個層面是一個執(zhí)行層面優(yōu)化,比如車間的調(diào)度、揀貨路徑、物料供應等,這些會觸及到正常生產(chǎn),優(yōu)化結(jié)果立刻會影響到業(yè)務,對于優(yōu)化系統(tǒng)的時效性和穩(wěn)定性的要求很高。
總之,從各個層級來說,戰(zhàn)略層級偏向于是做一個最優(yōu)優(yōu)化;計劃層級在最優(yōu)性、時效性和穩(wěn)定性方面都有一定的要求;在執(zhí)行層對最優(yōu)性要求相對較弱,對于時效性和穩(wěn)定性要求較高。
下面分享三個運籌優(yōu)化的例子。
機加工藝方案優(yōu)化,設計一款發(fā)動機的機加工方案時,傳統(tǒng)機加工藝需要有幾十名資深的工程師,經(jīng)過幾個月的手工編排,才能把一款發(fā)動機的編排工作完成,工作量巨大,編排的結(jié)果只能找到一個可行解,沒有辦法找到一個最優(yōu)解??梢詫⑦@個機加工問題進行數(shù)學建模,求得一個最優(yōu)解,在實際應用中可以降低80%的編排工作。這屬于中長期規(guī)劃,目標主要是成本最優(yōu),這種目標要求一個精確解。規(guī)模比較大,把數(shù)學模型建好之后,會用求解器來幫助求解。
第二個例子是生產(chǎn)計劃的優(yōu)化,譬如零件生產(chǎn)、試驗車生產(chǎn)、整車生產(chǎn),都是需要做生產(chǎn)計劃的,汽車領域的生產(chǎn)線都需要生產(chǎn)計劃,通常生產(chǎn)計劃目標是生產(chǎn)的均衡性,譬如顏色的均衡、配置的均衡、日均衡、月均衡等。同時這種生產(chǎn)計劃的優(yōu)化對于性能也有要求,因為工廠特別多,每個工廠可能都會有計劃員去做生產(chǎn)計劃的編排,他們對于時間的響應也有一定要求,這種通常需要使用基于整數(shù)規(guī)劃模型的解決方案。
第三個例子是庫存優(yōu)化。倉庫庫存、經(jīng)銷商庫存、整車庫存、零件庫存的成本都是很大的,通常是要在滿足一定的服務水平下,使得庫存盡可能地低。以前的傳統(tǒng)模式就是用庫存優(yōu)化模型,綜合預測銷量、需求均值、滿足率目標、缺貨成本等構(gòu)建庫存優(yōu)化模型,最終輸出安全庫存、目標庫存水平、訂單計劃、再訂貨點。現(xiàn)在通常會在傳統(tǒng)方式的基礎上,再結(jié)合機器學習算法去做庫存優(yōu)化。
03運籌優(yōu)化項目實施難點
運籌優(yōu)化項目實施的難點按從概念的驗證到這個項目實施的過程來看,主要有這幾點:
業(yè)務邏輯比較復雜:業(yè)務邏輯復雜方面就是不同業(yè)務中有許多專有名詞,業(yè)務需求方和建模工程師之間溝通很困難,建模工程師必須了解每一個細節(jié)才能成功建模,這就導致業(yè)務需求理解比較復雜。
建模困難:一方面是考慮到業(yè)務目標和約束不可量化,定性的描述會比較多,譬如要求加工時間最短,生產(chǎn)計劃盡可能均衡的這種需求,盡可能是一種不可量化的約束。另一方面,實際中許多問題都是非線性的,建模實現(xiàn)很難。
求解時無解:求解模型會出現(xiàn)無解的情況,有可能是數(shù)據(jù)問題,亦或是模型的問題,另外求解器的性能可能也會有一些問題,這些都需要很大精力去排查。
解決方案的接受度受用戶習慣的影響:運籌優(yōu)化面臨比較大的問題就是求解出的方案結(jié)果和用戶的習慣不一致,用戶會有許多自己的想法,不接受優(yōu)化方案。
項目反復迭代,成本提高:就是用戶需求沒有說全,這種情況常常出現(xiàn),等項目完成了,突然會有提出一個要求,建模工程師有時候業(yè)務背景不強的話就會遺漏用戶認為是常識而沒有溝通到的需求。另外運籌優(yōu)化的定制化程度很高,新出來的場景和約束會招致模型反復迭代。
04實踐探索和經(jīng)驗總結(jié)
下面從項目的不同階段做一個總結(jié)。
1. POC(Proof of Concept)階段
POC階段是項目實施之前做的概念驗證。
通常項目可能沒有概念的驗證,只是演示ui界面,提需求就可以了。
分析型項目中算法的結(jié)果是項目成功的關(guān)鍵因素,譬如圖像識別項目,圖像識別的準確度比較重要,能不能達到這個準確度,對于項目的成敗很關(guān)鍵。預測項目的預測準確度也是項目成功的關(guān)鍵要素。在POC階段需要驗證出標準是否合理。
對于運籌優(yōu)化項目,除了具備分析型項目的要素之外,還需要對潛項階段的功能進行驗證,譬如驗證分析型項目的準確度,用戶要求80%,現(xiàn)在已經(jīng)達到78%,那可能再優(yōu)化一下,就能達到了。不過考慮到需求變化對方案的影響,運籌優(yōu)化項目在POC階段的驗證也只能做參考。譬如要求成本最低的最優(yōu)方案,如今提出來的要求,用這種方案是可以的,可是在項目實施的過程當中,假如提出了更多的要求,更多的約束之后,不一定能夠保證poc階段的驗證效果。這是運籌優(yōu)化項目比較突出的難點和風險點。
> 2. define階段
通常項目定義現(xiàn)在的流程、將來的流程、報表需求、業(yè)務角色、性能要求。
分析性項目定義業(yè)務痛點、輸入、輸出、準出標準。譬如輸入是照片,輸出是識別出的字段,準確度。
運籌優(yōu)化項目定義業(yè)務的目標、利潤最大、效率最高、產(chǎn)能約束、順序約束等。建模師更要對每一個約束清楚,才能建好模型,談需求時投入的時間會比其他類型的分析型項目多。
3. 構(gòu)建階段
通常項目按照需求直接開發(fā)就可以,分析人員和開發(fā)人員需求可以完全分開,只要把需求說清楚。
分析型項目會出現(xiàn)一些數(shù)據(jù)問題,譬如數(shù)據(jù)不支持define階段的分析需求,這種很常見。
運籌優(yōu)化項目,會遇到更多的問題,譬如約束沖突招致沒有解,需要和用戶重新定義約束是什么,亦或原來理解的約束和用戶說的約束不一樣,要反向做邏輯檢查。還需要有一套完整的數(shù)據(jù),去驗證模型,要準備一套滿足所有約束的一個可行解。
4. 測試階段
通常項目有按功能點測試、正向測試、反向測試、壓力測試、用戶測試等。
分析型項目除了要測通常項目需要的測試之外,還要運用真實數(shù)據(jù)對算法的結(jié)果是不是能夠達到標準做測試。
運籌優(yōu)化項目測了發(fā)現(xiàn)之前的約束已經(jīng)滿足,結(jié)果也能求解,不過用戶突然發(fā)現(xiàn)有些約束忘了提出來,這時候可能要重新加上這些約束,需要再次進入開發(fā)迭代階段,故而在運籌優(yōu)化項目測試階段需要留充足的測試時間。
05精彩問答
Q:在進行生產(chǎn)計劃時的插單計劃是怎樣實現(xiàn)的呢?
A:插單計劃是在生產(chǎn)計劃的過程中,突然又來了新的計劃。生產(chǎn)計劃通常都是按周來的,假如一周之內(nèi)已經(jīng)過了一個計劃點,就不會考慮去插單了。不過像固定的長期需求,譬如“某些周的顏色生產(chǎn)量需要提前鎖定”是可以放到模型當中的,可以做為約束放在模型中。不過假如這個周度已經(jīng)按計劃生產(chǎn)出來了,生產(chǎn)計劃已經(jīng)生效,只是臨時性的插單,就沒有必要再放到模型中了,可能需要靠手工去調(diào)整了。
Q:如今運籌應用在車企的情況是怎樣的?當通常算法得到的結(jié)果跟業(yè)務員人員經(jīng)驗相違背,還能否推進算法得到的結(jié)果?推進后的實際效果。通常怎樣?
A:這里有兩個問題,第一個是運籌應用在汽車行業(yè)現(xiàn)在的應用情況是怎么樣的?第二個是模型的結(jié)果和用戶的經(jīng)驗假如有沖突,是怎么去做的經(jīng)驗。
首先說一下第一個問題,我個人認為運籌優(yōu)化在汽車行業(yè)的應用場景是全行業(yè)中囊括各種電商行業(yè)里面最復雜的。其他行業(yè)有的各種場景在汽車行業(yè)里面都有,落地情況每個廠家不一樣,假如是建廠時間比較長,數(shù)據(jù)積累比較豐富,基礎系統(tǒng)化比較成熟的企業(yè)的運籌優(yōu)化落地會更容易,但也可能存在設備老舊的問題,譬如一些車間的設備比較老舊,抽取的數(shù)據(jù)沒有及時的反饋,做實時性的調(diào)度就會有一定的難度。
第二個問題,假如優(yōu)化結(jié)果和用戶有沖突,建模師和用戶都是需要妥協(xié)的。因為建模也是有一些局限性的,需要把一些復雜的業(yè)務場景去做一些簡化,才能做成一個數(shù)學模型,才能落地的。假如業(yè)務用戶很堅持按照他的習慣去做,可能做出來的就和他的習慣是一樣,得不到什么優(yōu)化。另外就是建模師也要從業(yè)務的角度去理解一下,用戶確實需要這種操作,要盡量多想一些辦法去幫助他們。故而基于以上,成功的運籌優(yōu)化項目需要需求方和實施方一起協(xié)調(diào),多方圍繞共同的目標一起配合才能夠做一個比較成功的項目。
Q:汽車行業(yè)的庫存管理,補貨環(huán)節(jié)的魯棒優(yōu)化應用的情況是怎樣的?
A:汽車行業(yè)的庫存優(yōu)化不同的情況有不同的處理,譬如成熟件、新件、需求量少的零件等。假如是成熟件,基本上是按照時間序列預測的需求,根據(jù)需求的分布方差,按照庫存理論,去做目標庫存水平、安全庫存就可以。
需求量少的零件通常一個月亦或是半年經(jīng)銷商才會消耗掉一個,通常庫存就是一個,基本上不用什么理論了,用掉一個就補一個。實際中并不是直接把所有的理論都用上去,會有更靈活的方式,需要結(jié)合業(yè)務的限制、寶貴的實際操作經(jīng)驗等多方面去處理這種問題。