IBM Release 1.93 manual Optimization, Merit Functions

Page 41

3.6. Optimization

There are powerful techniques for finding the minimum of smooth functions in a few function evaluations, an important consideration when the merit function requires minutes to hours for each iteration. There are robust techniques for finding the minimum of functions that are noisy, discontinuous, or otherwise badly behaved, which our simulation results tend to be. There are intelligent techniques that have a good prospect of finding a global minimum of a function whose geometry is poorly known, which ours usually are. Unfortunately for us, the intersection of those three groups is the null set.

Because 3-D electromagnetic simulations tend to be slow, noisy, and to produce merit function values full of multidimensional cliffs and canyons, we have to be realistic about what optimization can give us. Given reasonable computing resources and time to run, POEMS will take your initial guess and improve it automatically. It will explore the immediate neighbourhood, and if after a couple of restarts it converges back to the same place, you can be reasonably sure that there isn’t a significantly better design in the immediate vicinity. If you run out of time and have to stop it somewhere, the best point in the current simplex is always the best point evaluated so far.

The POEMS optimizer is more like an automatic design-of-experiments machine than an elegant numerical thoroughbred, but it is a reasonable choice for the problem at hand. Work is underway to find a better one, with emphasis on response-surface optimizers, where the merit function values go into a statistically-fitted parameterized surface, and the minimum of that surface is used as the next guess. Pruning the set of points used and choosing the right class of surfaces are the tricky parts.

The Nelder-Mead downhill simplex method does not always converge to the minimum, even of smooth functions. When this happens, the reason is that the simplex has closed up on itself in some dimension, so that its hypervolume becomes anomalously small and the search space becomes defective. For this reason, once it has converged, it’s usually a good idea to restart it using the best point and a few random values. The POEMS optimizer does this if requested. On average, Nelder-Mead seems to be the most efficient direct-search algorithm available for the problem at hand—its occasional failure to converge without restarting is more than balanced by its use of only 1 or 2 function evaluations per step (except for shrink steps).

3.6.1. Merit Functions

In order for this to do anything useful, you have to specify a merit function (or penalty function for pessimists) that depends on the simulation output. POEMS provides enough flexibility to optimize nearly anything technologically relevant, except that it has no direct support for nonlinear optics (which it may in the future). A few examples are useful.

a. Waveguide Loss Loss in a waveguide device can be calculated from the flux integrals in the input and output planes:

POSTPROCESS

...

37

Image 41
Contents IBM T. J. Watson Research Center Yorktown Heights, NY Page IBM T. J. Watson Research Center Yorktown Heights, NY HOW Poems Works Using PoemsMotivation Chapter IntroductionPhilosophy Optimization StructurePage Poems system organization Script Operation Program OrganizationFront-End Script poems.cmd Postprocessor Empost Fdtd Engine FIDO/TEMPESTCluster Control Visualization System VIS5DParallel Processing Global Group Command ReferencePoems Command-Line Options Lambda FreqFunction HostsMacdef Which means that the host’s predefined hostname is not usedPrint MacroSimulator RandomseedSET Title World GroupVerbose BoundaryBasicstep Material GroupXrange Yrange DefineParameters epsReal epsImag muReal muImag FAN Object GroupBlock Tiledplane GratingHollowbox Cylinder Curve3DCURVE Source Group Output Group Command GroupField Postprocess GroupCAD WebpageIntegral FarfieldFlux Modematch ListMOVIE3D MovieSlice DissipationGuess Optimize GroupVariables Penalty Merit LimitStore Range Schedule GroupParameters Symmetry Computational DomainObjects Materials Perfectly-Matched LayersPlane Waves Page Beam Sources Merit Functions OptimizationPhase uniformity across a plane 10 Optimized V antenna refractive Worked Example Optimizing a V AntennaPage Predefined Constants Worked Example Doped Silica Waveguide ModeWorked Example Glass Ridge Waveguide to Free Space Coupler Confine Reserved NamesArithmetic Operators Predefined Mathematical FunctionsABS Logical OperatorsAcos AcoshCeil ATAN2COS Elintk20. LN IntegralMAX MINROOT1D RandomRound SignFlattop Analytical Pupil FunctionsMaterial Parameter Functions Time step Tempest and General Fdtd InformationStartup and Steady State Page Appendix A. V-Antenna Optimization Run Poems Input DIPOLE2I.PAR END Material END Object END World Subdomain ALLEND Output END CommandEND Source END Optimize END Postprocess Amplex PhaseexPage Page Page END Tempest Input File DIPOLE2I.PAR.IN Written by Phil Hobbs Pages of pointsource statements omitted ALL Postprocessor orders DIPOLE2I.ORDERSDIPOLE2IEXI DIPOLE2IEXQDIPOLE2IEYQ DIPOLE2IEYIDIPOLE2IEZI DIPOLE2IEZQPOSTPROC.1.NAME MiddlefluxArray Amplex POSTPROC.1.PARMSTRINGArray DIPOLE2IPHASEEXPOSTPROC.2.PARMSTRING FF2POSTPROC.6.NAME DIPOLE2IPXArray Poyntingz DIPOLE2IPZPOSTPROC.10.PARMSTRING POSTPROC.9.PARMSTRINGPOSTPROC.11.NAME Slice IndexnPOSTPROC.13.COMPARISONDOMAIN Slice PoyntingzDIPOLE2IPZXY0.BMP POSTPROC.14.NAMEDIPOLE2IPXZX0.BMP POSTPROC.16.COMPARISONDOMAINPOSTPROC.17.NAME Slice AmplexDIPOLE2IPHASEEXZX0.BMP DIPOLE2IPHASEEXXY0.BMPPOSTPROC.20.COMPARISONDOMAIN DIPOLE2IDISSZX0.BMPDIPOLE2IEXQZX0.BMP POSTPROC.24.COMPARISONDOMAINRun Results DIPOLE2I.SIMPLEX Page Page Page Page Page Tempest patches Fdtd and TempestTempest limitations Advice common to all or most Fdtd programsSample X11 Configuration Window System ConfigurationWish list Running Vis5DRelease Notes Beta Release Limitations Page Page Matlab IndexEmdenormal Emunderflow Maxordersources 81 Maxpointsources