An Inverse Electromagnetic Design algorithm is presented that can efficiently solve for optimal shapes of electromagnetic devices, such as antennas, surface textures and gratings. The algorithm was implemented in software along with techniques to represent non-parametric or freeform shapes, which allow the optimization to explore non-intuitive solutions. This Inverse Design Software was then us...