Understanding Generative Engine Optimization