拓撲優化中SIMP方法與水平集方法有何優缺點,水平集法變換到高維,不是更復雜了


作者:周平章
鏈接:https://www.zhihu.com/question/52008623/answer/187927508
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。

不知道這個問題提出來有多久了,我是拓撲優化方向的PhD,下面是我自己的一點感受,未必准確。

-------------------------------------------------------

首先說結論:從現在的情形來看,水平集法以及其余所有方法都不能在短時間內超越變密度法。

  1. 變密度法源於均一化方法,相對於均一化方法,變密度法所需要的設計變量數目大大減少了。目前通常所說的變密度法均是指基於單元(或者節點)偽密度方法的拓撲優化方法。
  2. 這種方法思路清晰,程序設計流程簡單,也比較容易與現有商業有限元軟件進行集成。因此現有的所有商業軟件中的拓撲優化功能都是基於變密度方法來實現的。
  3. 變密度法相對於其余所有方法的最大優勢是:適用於任意形狀的設計域。對於復雜幾何形狀的設計域的天然普適性是目前所有其他拓撲優化方法所不具備的。這一點可能在學術界做research的時候感受還不明顯(因為做research的時候大家都會用非常規則化的可行設計域,不是一塊平板就是一個立方體),但一旦到了工業界這個問題就會非常重要。
  4. 很多水平集相關的論文均所稱贊的,水平集方法相對於變密度法的優勢是,水平集方法能夠獲得顯式(explicit)、清晰(crisp)的拓撲邊界。而這種稱贊的后面一般都跟着鄙視一下變密度法所得結果所具有的模糊邊界。對這個問題,我從兩個角度談我的看法。(1)拓撲優化方法本身在產品設計的周期中多用於概念設計階段,也就是產品設計的初期。因此,工程師在使用拓撲優化方法的時候可能並不需要知道這根梁的直徑到底是10.1mm還是10.5mm。在這個產品的大致形狀確定之后,還有一系列的工作要做,在強度校核等過程中,產品的尺寸是會精確地確定下來的。也就是說,即使你用水平集方法得到了顯式清晰的邊界,這個邊界也絕不會直接被當做最終產品的尺寸。(2)在2010年以后到現在這七年里,變密度法又得到了一些發展,現在用變密度法的時候大多會配合使用一些投影(projection)技術,這樣,通過變密度法得到的設計結果也可以得到很清晰的拓撲構型。
  5. 從計算量的角度,水平集和變密度法的計算量都不小,從設計變量的個數上來說,二者沒什么差別,都取決於網格的規模:或者等於節點數目,或者等於網格數目。但水平集法所需要求解的是擴散方程,而變密度法所需要求解的是一個優化問題,一般均認為水平集法所求解的數學問題要比變密度法更難一些。值得注意的是,近年來不斷有學者從各個角度嘗試降低拓撲優化中的設計變量數目,思路很多,比如大連理工的郭旭老師所提出的MMC方法等等。我自己在這方面也有一些思考,這一塊確實還是大有可為的。
  6. 我曾經跟圈內很多人聊過關於變密度法和水平集方法的對比問題,我記得周明老師是這么說的,變密度法和水平集方法,這兩者的共同點要遠遠多於它們的不同點。近年來不斷有人提出類似的觀點,從這兩種方法的發展來看,它們均在不斷地借鑒對方的一些優點。所以,如果將來這兩種方法在更高層次的數學模型中得到了完全統一,我也不會表示很驚奇。
 
 
作者:菲茲
鏈接:https://www.zhihu.com/question/52008623/answer/156931579
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。

SIMP 法:

優點: 結構設計變量(單元密度)和優化問題直接掛鈎對應,即拓撲結構explicitly dependent on設計變量。優化算法收斂好,靈敏度簡單易算。可以直接進行基於有限元的離散設計靈敏度計算。適用於結合更復雜的非線性結構拓撲,比如幾何非線性和材料非線性問題。

缺點:優化出來的拓撲結構邊界不夠清晰,特別是當過濾半徑比較大的時候。 這些灰度區域沒有物理意義,設計如果無后處理無法直接用於制造。

Level-set 法:

優點:用一個高緯度的水平集implicitly表達拓撲結構的邊界,從而解決了SIMP法的灰度區域問題。拓撲結果邊界清晰,無灰度區域,設計可以直接用於制造。

缺點:由於設計變量間接與優化問題掛鈎,中間涉及一些被水平集切割的有限單元的近似,從而影響優化精度。水平集方程需要用PDE方程來更新,中間還需要重置水平集方程來保證PDE的持續更新,從而大大降低優化收斂速度或者甚至無法收斂。PDE需要連續形狀靈敏度來更新,相比SIMP的離散設計靈敏度更難。線彈性體的連續形狀靈敏度已經發展很成熟,但是非線性結構連續形狀靈敏度非常難求,需要很高的數學基礎。


PS: 水平集是高維的,但是實現起來並不復雜。在原來有限元網格基礎上再增加一個水平集網格就好了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM