日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【转】二维异形件排版算法介绍(二)

發(fā)布時間:2023/12/10 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【转】二维异形件排版算法介绍(二) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
轉(zhuǎn)自:https://bbs.huaweicloud.com/blogs/196289 【摘要】 二維不規(guī)則異形件主要有兩種策略:分別是基于可行解的排樣策略和基于重疊移除的排樣策略。所謂基于可行解的排樣策略,是指在排樣過程中零件之間始終是不重疊的,而基于重疊移除的排樣策略,是指在排樣過程中允許零件之間發(fā)生重疊,在搜索過程中采用一定策略減少零件重疊的程度,直至最終得到可行解為止。

1???????二維異形件排樣算法

上一篇博客提到二維異形件排樣算法涉及到高速幾何算法、排樣策略和優(yōu)化算法,并且系統(tǒng)綜述了臨界多邊形(NFP)的求解算法,感興趣的童鞋可以查看博文:https://bbs.huaweicloud.com/blogs/175385

2???????二維異形件排樣策略

二維不規(guī)則異形件主要有兩種策略:分別是基于可行解的排樣策略和基于重疊移除的排樣策略。所謂基于可行解的排樣策略,是指在排樣過程中零件之間始終是不重疊的,而基于重疊移除的排樣策略,是指在排樣過程中允許零件之間發(fā)生重疊,在搜索過程中采用一定策略減少零件重疊的程度,直至最終得到可行解為止。下面分別詳細(xì)介紹。

2.1???基于可行解策略

基于可行解的排樣策略的好處是排樣方案總是可行的。設(shè)計該類算法需要考慮兩個主要因素:零件的可行放置位置和零件擺放的評估方法。最經(jīng)典的策略是“左底法”,即將零件擺放在所有可行點中最靠左的位置,若出現(xiàn)多個最左點,則選擇最底下的位置。

如何確定零件的可行放置位置呢?上文我們知道,NFP可以表征兩個簡單多邊形“相切”的情況,因此,當(dāng)固定一個簡單多邊形時,第二個簡單多邊形可以選擇其相對第一個簡單多邊形的NFP上的點作為可行放置點。當(dāng)然,這樣的點有無窮多個,因此,一般只選擇NFP的頂點(也可能再加上線段中點)作為可行放置點。

你可能會有這樣的疑問,當(dāng)只有兩個簡單多邊形時當(dāng)然可以這樣擺放,但是如果已經(jīng)擺放了若干個簡單多邊形,再擺放下一個簡單多邊形時,該如何保證其不與所有的多邊形都不重疊呢?這的確是一個非常好的問題,也正是開發(fā)異形件切割排版算法遇到的第一個難題。解決方案主要有兩個,一是將已經(jīng)排版的簡單多邊形合并成一個大多邊形,然后再進(jìn)行排版,如圖1所示,二是考慮所有NFP的頂點以及NFP每條線段的交點,然后再判斷這些點是否在某個NFP的內(nèi)部,如果該點不在任何一個NFP內(nèi)部,則該點為可行點,否則不是可行點。第一個方案的問題是,零件之間的空隙將無法再放其他的簡單多邊形,造成原料浪費,第二個方案的問題計算成本大。

圖1.?基于可行解的排樣選點策略(圖片來源:參考文獻(xiàn)[1])

零件排放位置該如何評估呢?常見的方法如表1和圖2所示:

表1.?異形零件擺放位置評估方法

圖2.?零件擺放位置評估常見方法(圖片來源:參考文獻(xiàn)[2])

上述基于可行解策略得到的排樣方案效果一般不會太好,還需要智能優(yōu)化算法改善結(jié)果。常見的智能優(yōu)化算法有遺傳算法、模擬退火算法、價值修正、束搜索等方法,下面詳細(xì)介紹一下束搜索方法。

圖3.?束搜索方法示意圖(圖片來源:參考文獻(xiàn)[3)

束搜索(Beam Search)是一種啟發(fā)式圖搜索方法,在每一步深度擴展的時候,剪掉一些質(zhì)量比較差的節(jié)點,留下一些質(zhì)量較高的節(jié)點。這樣就減少了空間消耗,并提升了時間效率。具體而言,如圖3(a)所示,束搜索使用廣度優(yōu)先策略創(chuàng)建搜索樹,在樹的每一層,按照局部啟發(fā)式評價方法對節(jié)點進(jìn)行排序,留下預(yù)先指定個數(shù)(filter width)的節(jié)點,而后再對這些節(jié)點進(jìn)行全局啟發(fā)式評價,再次留下預(yù)先指定個數(shù)(beam width)節(jié)點。僅這些節(jié)點在下一層次繼續(xù)擴展,其余節(jié)點就被剪掉了。圖3(b)展示了filter width=3,beam width=2時的搜索過程。束搜索評價函數(shù)采用順序搜索評價函數(shù)加和模式,選擇表1中Incentive列中的L1和R1,Balanced列中的O2,令評價函數(shù)等于L1+R1-O2。

束搜索還需要考慮零件的排序,常見的零件排序方法有如下幾種:(1)面積;(2)長度;(3)寬度;(4)周長;(5)凸包面積;(6)包絡(luò)矩形面積等等。一般采用零件面積進(jìn)行排序。

2.2???基于重疊移除的排樣策略

所謂重疊移除算法,如圖4示,是指在初始可行解的基礎(chǔ)上,減少原料長度,并通過交換、平移等鄰域搜索技術(shù)改變當(dāng)前的排版方案,在改變時允許裁片之間發(fā)生重疊,然后采用分離技術(shù)消除重疊,得到改進(jìn)可行解。上述過程不斷交替進(jìn)行,直到達(dá)到算法終止條件為止。

圖4.?重疊移除方法示意圖(圖片來源:參考文獻(xiàn)[4])

首先,使用啟發(fā)式方法得到一個可行解,假設(shè)原料長度為L。若得到了可行解,則縮小原料長度,若沒有得到可行解,則適當(dāng)增加原料長度。之后,擾動當(dāng)前解,實施上述優(yōu)化程序。該過程迭代進(jìn)行,直到達(dá)到算法終止條件。最終選擇原料長度最小的可行解作為算法的輸出。

重疊移除排版算法的詳細(xì)介紹將在后續(xù)博客中更新,歡迎大家關(guān)注。

參考文獻(xiàn)

[1] Oliveira J F, Gomes A M, Ferreira J S. TOPOS–A new constructive algorithm for nesting problems[J]. OR-Spektrum, 2000, 22(2): 263-284.

[2] Bennell J A, Song X. A beam search implementation for the irregular shape packing problem[J]. Journal of Heuristics, 2010, 16(2): 167-188.

[3] Bennell J A, Song X. A beam search implementation for the irregular shape packing problem[J]. Journal of Heuristics, 2010, 16(2): 167-188.

[4] Elkeran A. A new approach for sheet nesting problem using guided cuckoo search and pairwise clustering[J]. European Journal of Operational Research, 2013, 231(3): 757-769.

登錄后可下載附件,請登錄或者注冊

【版權(quán)聲明】本文為華為云社區(qū)用戶原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載,如需轉(zhuǎn)載請發(fā)送郵件至:huaweicloud.bbs@huawei.com;如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,歡迎發(fā)送郵件進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,本社區(qū)將立刻刪除涉嫌侵權(quán)內(nèi)容。

總結(jié)

以上是生活随笔為你收集整理的【转】二维异形件排版算法介绍(二)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。