As promised in this previous post, Optimization With Multiple Objectives, here is a quick look at a pareto-optimum solution for 2 objective functions when there are 2 decision variables instead of just 1. As in my previous example I model MAR ratio and Sharpe ratio as my objective functions, only this time they are functions of two variables x and y instead of just x. Let’s take a look at them.
Two Objective Functions
Each of the 2 functions is made up of a parabola in the x direction added to a different one in the y direction. Wikipedia tells me this is an elliptic paraboloid. Here they are:
Objective Functions Superimposed
Their relationship is clearer when you look down on to the x-y plane from above with the MAR and Sharpe values plotted as contours. You can see that the Sharpe ratio surface is stretched in the y-direction, and has a maximum of 1 at (40, 50). The MAR is stretched in the x-direction with a maximum value of 1.5 at (60, 40).
Once again, to give the flavor of a genetic search approach to the problem of finding the pareto optimum set I create a set of 1000 random (x,y) co-ordinates with 35 <= x, y <= 65 and calculate the values for the Sharpe and MAR ratios. In the real world this would be done by back-testing.
Pareto Optimum Frontier
The next chart shows the result of plotting the paired values of Sharpe and MAR against one another for each random (x, y) pair. This chart is labeled “Objective Space”. The points in red are the “dominant” points. They are the points for which no other pair of values with BOTH a higher value for Sharpe AND for MAR can be found. Compare this to the Objective Space plot in the prior post – this time the points are filling in an area of the plane rather than forming a line in the plane. This is because there are 2 decision variables – points on a single contour of, say, MAR may take many values of Sharpe and vice versa.
Pareto Frontier Superimposed on Objective Functions
Finally, I plot the random (x, y) points as blue dots on the contour graph to show how they were scattered across the entire search space. I plot the points that were dominant as red asterisks. Notice how they trace out a path between the two peaks of the Sharpe and MAR surfaces. If we allowed our genetic search to progress, the points would move closer and closer to the red line I added.
As a final note, I just used Google Chrome for the first time to write and edit this post. It was certainly smoother than using IE. However, when I view the post the fonts and general layout look poor. What to do?
EDIT: I don’t want my references to skiing or hiking to be misconstrued as implying in our present example that the two objective functions are co-measurable like the altitude of a physical surface such as a mountainside. That was not my intent: The whole point of multi-objective optimization is that the objective functions are NOT co-measurable; if they were we would just add them together and take the maximum! One unit of Sharpe does not have the same utility as one unit of MAR. In the math-world, we are NOT walking down one surface from the peak and then up the other. The solutions along the pareto frontier are PAIRS of Sharpe and MAR given by a set of parameters x and y; we are traveling on BOTH surfaces at once! My analogy to two adjacent peaks was clumsy or, worse, misleading – apologies.