ZEMAX Users' Knowledge Base - http://www.zemax.com/kb
What Is the Orthogonal Descent Optimizer?
http://www.zemax.com/kb/articles/182/1/What-Is-the-Orthogonal-Descent-Optimizer/Page1.html
By Mark Nicholson
Published on 7 May 2007
 
The Orthogonal Descent optimizer is a new algorithm specifically designed for the optimization of pure non-sequential systems. This article describes what the Orthogonal Descent optimizer is, how to use it, and gives some examples of its use.

Introduction
Optimization is the process by which a design is improved by changing the values of a set of parameters (called variables) such that the value of a merit function is reduced, or ideally, driven to zero.

Damped Least Squares (DLS) uses numerically computed derivatives to determine a direction in solution space which produces a design with a lower merit function. This gradient method has been developed specifically for optical system design and is recommended for all imaging and classical optical optimization problems.

In the optimization on pure non-sequential systems however, DLS is less successful. Because detection is performed on pixelated detectors, the merit function is inherently discontinuous and this can cause the gradient method to fail.

ZEMAX has an optimizer specifically for cases where gradient methods are ineffective. It is very useful in optimization problems like illumination maximization, brightness enhancement, and uniformity optimization.

Why Is Non-Sequential Optimization Difficult?
In the article How to Improve the Brightness of an LED Using a Free-Form Mirror, an example is presented of optimizing a complex mirror so that the angular distribution of an LED's output is shifted into a more desirable profile. Here is a scan of the merit function of the starting design as a function of just one variable:

The starting design

It can be seen that for long regions of merit function space, there is no change in the merit function at all, and when change does come it is sudden and discontinuous. This makes optimization by gradient search techniques difficult. In the referenced article, we had to use Global Search, and also turn on optimization variables in a stepwise fashion, in order to get optimization to make meaningful progress.

Orthogonal Descent (OD) optimization uses an orthonormalization of the variables and discrete sampling of solution space to reduce the merit function. The OD algorithm does not compute numerical derivatives of the merit function. For systems with inherently noisy merit functions, such as non-sequential systems, OD will usually outperform  DLS optimization.

An Example
Here is a starting point similar to that of the How to Improve the Brightness of an LED Using a Free-Form Mirror article, except we will optimize all 22 parameters of the polynomial surface at the same time, and we will not take the step-wise approach taken in the earlier article. This file can be downloaded from the link on the last page of this article.

The starting point looks like so:

The starting design

As expected, damped least squares makes no progress when trying to optimize:

Damped Least Squares cannot optimize this design

and global optimization techniques have to be used. The Orthogonal Descent optimizer however makes rapid progress:

Orthogonal Descent

This is a fantastic result, both in terms of merit function reduction and in speed. The performance will continue to be improve if the final design is Hammered, using either DLS or OD optimizers for the local portion of the optimization.

Alternatively, you may use Global Search, and use the OD optimizer for the local portion of the Global Search (Global Search uses a genetic technique for rapid searches over parameter space, and then calls a local optimizer once in the 'capture basin' of a promising design). This also gives excellent results:

Global Search and Orthogonal Descent



Considerations for Use
The Orthogonal Descent optimizer is a new technique for the optimization of non-sequential systems. Please bear the following in mind when using it:

1. The OD optimizer is a local optimizer, like the DLS. This means that the starting point will affect the final result.

2. You may choose between the OD and DLS local optimizers when using the Hammer or Global Search global optimizers.

3. For imaging system design, and anywhere the merit function is smooth and continuous, expect the DLS optimizer to outperform the OD. The OD optimizer is particularly suited to the kind of noisy, discontinuous merit functions found in non-sequential problems, like illumination.

4. The DLS optimizer is multi-threaded (that is, it uses multiple CPUs when available) at the variable level. As DLS uses gradients, ZEMAX can compute the derivative of each variable independly, on different CPUs.

The OD optimizer requires each variable to br evaluated sequentially, and so does not multi-thread at the variable level. Instead, as it is used with non-sequential problems, the NSTR operand (which traces rays) is multi-threaded.

5. The DLS optimizer benefits from many years of development, whereas the OD optimizer has been developed only since February 2007. As a result, expect to see further improvements in how well it works. We welcome your feedback on this, as indeed on any aspect of using ZEMAX!