本文提出
了一種優化非序列光學系統的方法。
推薦的方法是使用像素插值(Pixel Interpolation)、探測器數據合集(光照時刻數據)和正交下降優化器。
例如,優化一個自由曲面反射鏡,使 LED 的亮度從23 Cd 到大于250 Cd只需幾步。
(聯系我們獲取文章附件)
簡介
OpticStudio 的優化功能允許用戶通過將系統參數設為變量,在評價函數編輯器中定義性能標準來改進設計。這個過程會對設計產生巨大的影響,所以選擇合適的變量和標準非常重要。序列模式和非序列模式中可用的標準類型有所不同。本文為非序列系統的優化提供了一種建議方式。
例如,通過優化自由曲面反射鏡,最大限度地將 LED 的亮度從23 Cd 提高到大于250 Cd,只需幾分鐘。
阻尼最小二乘法與正交下降法對比
OpticStudio 中有兩種局部優化算法
:阻尼最小二乘法(DLS)和
正交下降法(OD)。DLS 運用數值微分計算,在一個較小的評價函數設計的解空間里確定優化方向。這種梯度方法是為光學系統設計專門開發的,被推薦用于所有成像和經典光學優化問題。然而,在純非序列系統優化中,由于采用像素探測器進行探測,DLS 的優化效果較差。并且評價函數本身是不連續的,這也可能導致梯度搜尋方法失敗。
下面是當評價函數只有一個變量時,對非序列系統的評價函數進行查看。

可以看出,很長一段區間內評價函數根本沒有變化,發生的變化是突然且不連續的。這使得通過梯度搜尋方法進行優化變得困難。
正交下降優化利用變量的正交化和解空間的離散采樣來降低評價函數值。OD 算法不計算評價函數的數值微分。對于評價函數存在原本噪聲的系統而言,例如非序列系統,OD 通常比 DLS 算法要好。它在照度最大化、亮度增強和均勻性優化等優化問題中非常有用。
像素插值和非相干強度數據(NSDD)
除了使用的特定算法外,OpticStudio 中還有幾個能夠顯著提升非序列系統優化效率的功能。
如上所述,由于探測器的像素特性,非序列的解空間往往是不連續的。如果一條給定光線中的能量只分配給一個像素,那么當系統更改導致光線在該像素內的任何位置移動時,就沒有數量上的差異。因此,當一條光線跨越邊界進入一個新的像素時就需要對不連續的評價函數求微分,優化非常困難。
這可以通過觀察入射到探測器上的一條光線來說明。下面的通用繪圖顯示了探測器上的輻照度質心如何隨著光線位置的變化而變化。

避免由像素探測器引起的量化效應的一種方法是使用像素插值。不是將100%的光線能量分配給單個被擊中的像素,而是根據光線在像素內的截距位置將一部分能量分配給相鄰像素。因此,當系統變化導致光線在像素上移動時,評價函數會發生明顯的變化。可以在探測器的
物體屬性(
Object Properties
)>
類型(Type
)中啟用像素插值。

如果我們在啟用了像素插值的探測器上掃描一條光線,會發現輻照度質心,以及大多數標準值的變化都會是連續的,并且可以很容易地使用 DLS。

可以利用優化操作數 NSDD 計算評價函數中所述的輻照度質心。NSDD 代表非序列非相干強度數據,是讀取非相干探測器數據最有效的操作數。NSDC 等效于相干計算。NSDD 操作數的語法如下:
NSDD Surf Det# Pix# Data #Ignored
Surf 定義非序列組的面序號(在純非序列模式中為1);
Det# 定義所需的探測器的編號(也可以用于清除一個或所有探測器數據);
Pix# 定義要返回的指定像素上的數值,Data 定義是否返回入射通量、輻照度或強度數據;
#Ignored 定義要忽略的邊緣像素數量。
這些參數允許優化許多標準值:最小光斑大小(最小均方根空間寬度)、最大能量(總光通量)、空間均勻性(所有像素的標準差)、準直度(最小均方根角寬度)等等。有關 NSDD 功能的詳細描述,請參見 OpticStudio 幫助文件部分:
優化選項卡(
The Optimize Tab
)(序列模式界面)>
自動優化組(
Automatic Optimization Group
)>
評價函數編輯器(Merit Function Editor
)(自動優化組)>
按類別優化操作數(
Optimization Operands by Category
)>
非序列光線追跡和探測器操作數(Non-Sequential Ray Tracing and Detector Operands
)。
系統設置
發光二極管 (LEDs) 是應用廣泛的重要光源。在汽車照明和顯示照明等領域,經常需要通過添加輔助光學元件來改變 LED 光源的發光強度,從而提高 LED 的亮度。
我們將從實際 LED 光源的測量數據開始。現在,我們所需要知道的是,徑向光源(Source Radial)被用來輸入測量到的功率,作為角度的函數。測量到的單色光源總輸出功率為27 lm,峰值波長為627 nm。光源采用 Sobol 采樣 ,用最少的光線獲得最佳信噪比。
在
系統資源管理器(
System Explorer
)下,我們將系統
單位(
Units
)設置如下:

LED 的光通量是以流明為單位來測量的,所以我們選擇該單位進行模擬。因此光照度單位為lm/m
2或 Lux。發光強度(“亮度”)是用 lm/sr(流明/立體角)或 Cd(坎德拉)來計量的。亮度用 lm/m
2/sr或Cd/m
2 來計量,有時也稱為 nit(尼特)。系統初始設置如下:

LED 光源將光線射向一面平面鏡,然后照亮探測器表面。這個文件可以從本文頂部的示例文件鏈接處下載。可以看到探測器上的空間分布和角度分布如下圖:

從圖中可以看出,由于 LED 發出的光線在反射鏡上有輕微的溢出,所以空間分布和角度分布略有不對稱。這是為了給設計增加一點復雜性而有意為之。
從發光強度圖中可以看出,41 Cd左右的峰值亮度發生在極角為27°左右時。近似垂直于探測器表面的光線只有23 Cd 的發光強度(將在下面討論如何得到這個數字)。這樣的輪廓對于車前燈照明系統或投影機照明系統來說并不好。一般情況下,我們希望低角度時的光亮度盡可能高,這樣光源就可以投射到遠處。
現在,我們將優化反射鏡的形狀,使軸上的亮度最高。為此,我們必須執行以下步驟:
1 定義一個可表達我們想要達到的目標的評價函數。
2 定義反射鏡表面將如何變化。
3 運行優化。
評價函數
根據設計是否能很好地滿足其指定的工作性能,使用評價函數來定義光學設計的“質量”。在這種情況下,我們想要在零度角下得到最大的光亮度(發光強度),這可以通過操作數 NSDD 和 NSTR 很容易地實現。在本設計中,探測器為物體 3,我們想要得到在0°下的發光強度。
探測器查看器 (
Detector Viewer
)如下所示。

這張圖顯示了光線從 x 和 y 軸的-90°到+90°入射到探測器上光線的角度范圍。沒有光線的角度超過35°,因為 LED 沒有超過這個角度發射。峰值強度出現在27°左右。我們感興趣的是接近0°的光功率。針對這樣的分布有兩個標準 :RMS 角寬度和質心發光強度。設置 RMS 角寬度是要獲得準直光線(即具有相同入射角的光線),質心目標是使入射角為零。下面的評價函數可看到這個角度下的發光強度。

第一個 NSDD 操作數讀取探測器物體0,該物體不存在;沒有物體0可以存在。這是此操作數的一個特殊用法: 在 OpticStudio 中用于清除所有探測器。另外,可以通過定義一個負數(例如:Det# = -3,只清除探測器3)來清除單一探測器。這在定義了多個探測器的系統中非常有用。
接下來,操作數 NSTR 告訴 OpticStudio 去完成光線追跡。第二和第三個操作數 NSDD 讀出探測器物體3,質心 x 和 y (Pix# = -6, -7),數據項2,即功率/單位立體角。注意,我們的目標是質心發光強度(角度),而不是質心照度(空間)。第四個操作數 NSDD 讀取所有像素數據的 RMS 角寬度。此外,最后一個操作數 NSDD 讀取了中心像素(5101)的強度,以便進行比較;注意,沒有分配權重,操作數就不會對評價函數有貢獻。這個值大約是23 Cd。
最后一個 NSDD 操作數與一個 OPGT 操作數相結合,以保持探測器上的最小光通量。我們把這個設為25,因為這是探測器上的初始光通量。如果這個操作數不存在,那么完全移除反射鏡就有可能使評價函數值為0!如果沒有能量落在探測器上,質心強度和 RMS 半徑為零,這就是我們的目標。這個“解”強調了定義良好的評價函數的重要性。在優化過程中,OpticStudio 將嘗試將評價函數變為零,而不管這在系統中的物理意義。
自由曲面反射鏡
自由曲面通常被描述為多個低階多項式,如樣條曲線或貝塞爾曲線。它們通常用來描述渦輪葉片、車身和船殼等形狀。
然而,在光學系統設計時,保留基本圓錐曲線部分的概念,并使該部分向自由曲面形式偏離,是非常有助于設計的。原因很快就會揭曉。我們將使用
擴展多項式面(
Extended Polynomial Surface
)物體,這個表面可由以下形式的方程描述:
第一項是光學設計中所鐘愛的標準圓錐非球面,用于設計球面、橢圓、拋物面、雙曲面、反射面等等。第二項表示從該表面出發的一系列越來越高階的多項式形變。多項式是 x 和 y 的冪級數,第一項是 x,然后是 y,接著是 x*x, x*y, y*y 等。有2個1階項,3 個2階項,4個3階項,以此類推。最高階為20,由此可創建最多230個多項式非球面系數。位置值 x 和 y 除以歸一化半徑得到的多項式系數是無量綱的。在本設計中,多項式的最大階數限制在20項以內,因此最大的自由曲面偏差為 x
0y
5和 x
5y
0。在實際設計中這既不是必要的也不是建議的,只是在設計過程中可供選擇而已。
現在,如果我們使用全局繪圖,可以在掃描反射鏡曲率半徑時顯示中心像素強度。


這張圖說明了優化非序列系統的困難,以及定義良好的評價函數的必要性。如果我們看一下整體的評價函數值與曲率半徑的關系,就能明白為什么質心和均方根半徑是更好的優化目標。


現在我們的評價函數正確地定義了設計標準,我們將使用局部和全局優化算法進行優化,對比 DLS 和 OD 的優化結果。
優化
OpticStudio 包含兩個“全局”優化例程,用于搜索更大的解空間區域。全局優化算法采用基因演算法優化、多起點計算和局部優化相結合的方法,能夠有效地搜索到低評價函數區域的多維參數空間。
錘形(Hammer)優化器也使用基因演算法和局部優化器,一旦全局搜索找到一個有希望的參數空間區域,就會對設計進行全面的優化。
評價函數的初始值為14.8,0°時的亮度為 23Cd。

我們先使用 DLS 使用局部搜索例程(Optimize > Optimize!),并將其與使用 OD 算法的優化結果進行比較。最終的錘形優化將在這兩種情況下執行。
我們的評價函數和起始系統已經定義好了,剩下的唯一步驟就是分配變量。我們有22個變量:曲率半徑、圓錐系數和20個多項式系數。分配這些參數變量狀態,并使用帶有自動循環數的DLS算法啟動局部優化器。
優化了一段時間后(約4.4分鐘),OpticStudio 找到了解。評價函數降到了大約6.69,中心像素亮度為238 Cd。此次優化說明使用像素插值和定義良好的評價函數,即使是DLS算法也可以在非序列解空間中有效地工作。
用一個新名稱保存結果文件以便進行比較,然后再次打開起始文件。這一次,分配所有22個變量并使用 OD 算法進行優化。根據前面對兩種局部優化算法的比較,我們可以期望這種優化能夠更快地進行,并得到更好的解。在這種情況下,此優化比 DLS 運行時間稍長(約6.5分鐘),但得到了更小的評價函數值(6.68)。
為了測試我們得到的是一個可信的最優解,而不是陷入一個較高的局部最小值,我們將運行錘形優化器來優化這兩個系統。下表整理的結果表明,DLS 優化得到了一定的改善,但中心像素亮度仍低于 OD 算法優化得到的像素亮度;進一步說明了這兩個局部優化例程的強大功能。在這些測試中使用的機器擁有英特爾四核CPU (2.90 GHz)和 16GB 運行內存:
| 算法 |
評價函數值 |
軸上亮度(Cd) |
優化時間 |
| DLS |
6.69 |
238 |
4.4 min |
| Hammer (DLS) |
6.68 |
24 |
30 min |
| OD |
6.68 |
254 |
6.5 min |
| Hammer (OD) |
6.68 |
254 |
30 min |
初始輻照度和輻射強度分布,以及使用 DLS 和 OD 算法優化的系統如下圖所示。
起始系統:

DLS 優化:

OD 優化:

結果表明,兩種優化方法得到的解相似。但值得注意的是,雖然 OD 算法的優化時間比 DLS 稍長,但所獲得的性能優于 DLS 優化和30分鐘錘形優化。事實上,優化一個包含22個變量和幾個不同照度目標的系統只需要幾分鐘!我們已經在短時間內從一個平面鏡得到一個完全優化的解決方案,之后將需要我們進行公差分析和生成系統的圖紙。對具有相同數量變量的序列系統均方根半徑進行優化需要同樣的時間。這個例子清楚地說明了 OD 算法在優化非序列系統時的效率。在本文頂部的示例文件鏈接中,您可以找到 OD 優化文件。
請記住,我們從未直接針對中心像素亮度進行優化,而是優化均方根半徑和質心位置。我們總是可以對這個標準施加有限的權重,但是均方根半徑很可能因此而增加。您會發現,如果您的目標是中心像素強度而不是照明二階矩,那么系統性能會明顯變差。
相關閱讀 - 序列模式優化
ZEMAX | 如何對中間面進行優化
如何設計一個單透鏡 第三部分:優化
ZEMAX | 如何使用光學制造全息圖修正像差
ZEMAX | 如何使用快速調整工具和滑塊
ZEMAX OpticStudio 中如何進行玻璃替換

掃碼邀您入群
如果您對產品感興趣,或需要技術支持,歡迎致電垂詢!
電話:027-87878386
郵箱:market@ueotek.com
武漢宇熠科技是
ZEMAX 中國區官方指定代理商
,提供 ZEMAX 光學設計軟件的培訓、銷售、技術支持、二次開發、解決方案及 ZEMAX 軟件相關全方位定制服務。有關 ZEMAX ,您可以點擊文末“閱讀原文”了解更多信息,或致電垂詢武漢宇熠工作人員:
銷售熱線:027-87878386
咨詢郵箱:sales@ueotek.com


??點擊閱讀原文咨詢產品或技術支持。