: It is used to solve complex, "expensive" multi-objective optimization problems where evaluating a single solution (like running a simulation) takes a long time. How it works :