吳紹華,李少波,侯稀垟,陳金坤
(1. 貴州大學 計算機科學與技術學院,貴州 貴陽 550025;2. 貴州大學 機械工程學院,貴州 貴陽 550025)
基于高維數據聚類的制造過程數據分析平臺
吳紹華1,李少波2,侯稀垟1,陳金坤1
(1. 貴州大學 計算機科學與技術學院,貴州 貴陽 550025;2. 貴州大學 機械工程學院,貴州 貴陽 550025)
隨著制造業領域工藝技術的不斷進步,大量感知設備如同人體器官一樣,被部署到制造過程中的各個重要節點,產生著海量制造過程數據。針對這些海量制造過程數據,制造業領域越來越需要科學、敏捷、高效的數據分析平臺,為制造過程數據的分析提供智力支持和決策支持。針對這種需求,文章采用高維數據聚類技術結合Spring、Mybatis等成熟的敏捷開發框架,開發了制造過程數據分析平臺。該設計不僅可以針對歷史數據進行分析,還可以實時監控生產線上的動態流程數據,提高數據分析和決策效率。
高維數據;聚類;Bootstrap;Spring;Mybatis
隨著制造過程的不斷復雜化、精確化,制造過程中生產的線管理和監控消耗了大量的人力和財力;而且對于生產線產生的海量實時高維數據只是進行了簡單的預處理和存儲,沒有進行有效的數據分析,并將分析結論應用于制造過程的決策,造成了數據浪費[1]。為提高和完善制造過程中的工藝流程、生產參數,以及對制造過程異常進行輔助決策,進一步提升產品質量,以滿足實際需求,開發了該平臺,實現制造過程信息化和規范化。平臺服務端采用Spring、Mybatis框架,方便代碼的開發、復用、移植、擴展和維護;平臺整體采用MVC設計思想[2],通過依賴注入降低Model、View和Controler之間的耦合度,使代碼高內聚低耦合,彼此保持相對獨立,減少模塊間依賴程度。在平臺安全性上,采用了攔截器技術,以此來保證平臺安全,其次采取了平臺權限策略,對于不同的用戶身份,給予不同的訪問權限,對制造過程涉密數據進行保護。
1.1 高維數據聚類
隨著制造業及相關學科的飛速發展,對于制造過程中產生的海量數據的觀察角度和分析深度亦在逐步擴大和加深。于是,針對生產過程這一對象,將生產過程中的各個要素數據抽象成高維數據。在有效存儲這些海量高維數據的同時,需要對這些數據進行有效的分析,然后利用分析結論來輔助決策和指導生產[3]。
在高維數據分析領域,一個很重要的分析手段就是高維數據聚類。高維數據聚類方法又大致可以分為基于降維的聚類、基于超圖的聚類、子空間聚類、聯合聚類[4]和基于樣本加權的集成聚類算法。因為在制造業生產過程中每類數據對制造過程影響的程度是不同的,而且存在噪聲點,所以本文采用的是基于樣本加權的集成聚類算法[5-6]。
對于海量高維數據聚類,數據往往包含相異度較高的屬性,直接使用歐式距離這一相似度量屬性不再具有很高的可行性,基于經典k-means算法不再能產生高質量的聚類結果。而加權的k-means聚類方法解決了傳統聚類樣本對聚類中心影響都是等價的這一缺點,充分考慮到用戶對每個對象或屬性看重程度不同,通過權重分配,對樣本一次性賦權值,在聚類算法計算過程中,將樣本分配到最合適的簇中,進而提高聚類結果的質量。
1.2 平臺框架
平臺采用B/S架構。在前端使用技術比較成熟的Bootstrap前端框架。首先,Bootstrap有非常完備的代碼規范,在其基礎之上創建項目,后期的代碼維護會十分簡單清晰;第二,基于Less、Mixin輔助完成簡單語義化的布局,這樣的CSS預處理技術大大增加了代碼可讀性;第三,Bootstrap提供了大量的、復用性強的前端組件和插件,大大提升了開發效率,豐富了平臺UI。在服務器端,采用Spring框架,使用Spring的IOC容器[7],對象的管理完全交給Spring,減少了組件之間的關聯性和耦合度,使開發人員更專注于主要的業務邏輯;Spring的AOP功能可以實現面向切面編程,在本平臺中,其主要用于登錄日志和異常日志的記錄和管理,增加了程序健壯性;Spring屬于輕量級服務器框架,對代碼的污染度和侵入性都很低,這種高度的代碼開放性,并不強制依賴于Spring,可以根據平臺需求,自由選擇需要的功能[8]。在數據持久層開發上,選擇了輕量級、穩定性高的Mybatis。Mybatis將SQL語句放在XML文件中,方便了SQL語句的管理,減少了SQL語句和程序代碼的耦合度[7];Mybatis支持動態SQL,大大簡化了動態查詢過程,降低了查詢代碼量;Mybatis提供標簽映射,支持對象與數據庫的ORM字段關系映射;Mybatis以接口方式被服務層代碼調用,使持久層代碼的開發也更加面向對象,大大地方便了程序的開發和整個軟件開發周期內的代碼維護。在數據庫選擇上,采用MySQL數據庫,它是支持多平臺、免費開源的數據庫,具有很好的安全性和并發性,十分適用于平臺開發。
2.1 平臺整體架構
該平臺選擇Eclipse作為開發IDE,選擇Bootstrap作為前端開發框架,結合jQuery等開發技術,采用Spring和Mybatis作為服務端開發框架,數據庫采用MySQL。在業務邏輯上分為表現層、業務邏輯層和數據持久化層。在業務邏輯層中采用加權的高維數據聚類技術[9],對制造過程高維數據進行分析,在表現層對數據進行可視化,展現給用戶。平臺的總體結構如圖1所示。

圖1 平臺總體結構圖
2.2 平臺設計原理
該平臺采用三層架構,自上而下分別是可視化表現層、業務邏輯層、數據持久化層。可視化表現層主要應用了Bootstrap、jQuery和Cascading Style Sheets,當瀏覽器向服務端發出請求,請求會交給前端控制器DispacherServlet處理,DispacherServlet控制器通過HandlerMapping找到相應的Controller組件處理請求,執行Controller組件相應的模塊,其中最主要的模塊之一就是高維數據聚類模塊,在此部分完成對制造過程高維數據的聚類操作,在執行完相應模塊的業務之后,模塊可以返回一個ModelAndView對象,該對象封裝了視圖名稱信息和處理結果數據集,控制器接收到ModelAndView以后,調用ViewResolver組件定位View并傳遞信息,生成需要返回的響應界面。
3.1 平臺核心工作流程設計
本節主要介紹平臺的核心模塊——制造過程數據聚類模塊的工作流程。首先啟動平臺,該模塊讀取數據庫已經存儲的高維數據和生產線產生的實時制造過程高維數據;對于這些數據,進行一次性分配權重,隨機生成k個類中心,每個類中心對應一個簇;分配每條數據樣本到其最近的加權類中心,生成新的加權類中心,然后不斷迭代這個過程,直到所有類中心穩定,或者達到平臺規定的迭代次數(避免陷入死循環),一次聚類過程到此完成[5]。具體流程圖見圖2。

圖2 制造過程數據聚類模塊流程圖
3.2 平臺所采用的聚類算法

其中wi為權重,xi為第i個樣本[9]。
本設計主要以高維數據聚類算法為核心,針對制造過程數據的高維稀疏性和不適定性[10],對高維數據采用了加權聚類的方式,彌補了傳統制造過程聚類方法聚類效果缺乏魯棒性和聚類效果不理想的缺點,一定程度上改善了聚類效果;該平臺集成了Bootstrap、Spring、Mybatis這幾種輕量級框架,采用了經典的MVC服務器設計思想,在平臺架構上,使模型層、視圖層、控制層這三者相對獨立[11],提高了平臺的內聚性,降低了平臺的耦合度,便于開發人員并行開發,提升了開發效率,提高了平臺可擴展性和可維護性。
[1] 包洋. 面向制造業的數據挖掘技術研究與應用[D].上海:東華大學,2006.
[2] 李剛.輕量級Java EE企業應用實戰[M].北京: 電子工業出版社,2011.
[3] 趙會珍. 面向制造過程的質量控制系統研究與應用[D].武漢:武漢理工大學,2009.
[4] 賀玲,蔡益朝,楊征.高維數據聚類方法綜述[J].計算機應用研究,2010,27(1):23-26.
[5] 任亞洲.高維數據上的聚類方法研究[D].廣州:華南理工大學,2013.
[6] 康永為.大數據環境下高維數據處理若干問題[D].桂林:廣西師范大學,2010.
[7] 張耀民.SSH框架在Web項目開發中的構建和應用實踐[J].微型機與應用,2013,32(15):18-21.
[8] 葛揚瑛. 基于JavaEE和工作流的項目申報系統的設計與實現[D].成都:電子科技大學,2013.
[9] 劉建偉.基于高維數據上集成聚類的個性化推薦算法研究[D].廣州:華南理工大學,2014.
[10] 呂輝.基于大數據和高維數據的聚類方法的研究與實現[D].昆明:云南大學,2015.
[11] 唐永瑞,張達敏.基于Ajax與MVC模式的信息系統的研究與設計[J].電子技術應用,2014,40(2):128-131.
Manufacturing process data analysis platform based on high dimensional data clustering
Wu Shaohua1,Li Shaobo2,Hou Xiyang1,Chen Jinkun1
(1. School of Computer Science and Technology, Guizhou University, Guiyang 550025, China;2. School of Mechanical Engineering, Guizhou University, Guiyang 550025, China)
With the continuous progress of manufacturing and industry technology, a large amount of sensing equipments like the human organs, are deployed to all nodes in the process of manufacturing, resulting in a huge manufacturing process data. Manufacturing industry needs more and more scientific, agile and efficient data analysis system, which provides intellectual support and decision support for the manufacturing process data analysis. According to the demand, the design uses high dimensional data clustering technique combined with the Spring, Mybatis and other mature framework for agile development, to develop manufacturing process data analysis platform. The design can not only analyze the historical data, but also can real-time monitor the dynamic process data of the production line, and improve the efficiency of data analysis and decision making.
high dimensional data; clustering; Bootstrap; Spring; Mybatis
TP311.13
A
10.19358/j.issn.1674- 7720.2017.01.026
吳紹華,李少波,侯稀垟,等. 基于高維數據聚類的制造過程數據分析平臺[J].微型機與應用,2017,36(1):86-88,92.
2016-09-12)
吳紹華(1989-),男,碩士,主要研究方向:數據挖掘、高維數據聚類。
李少波(1973-),男,博士,教授,主要研究方向:制造物聯和制造大數據、制造信息系統、計算智能。
侯稀垟(1991-),男,碩士,主要研究方向:數據挖掘。