Written by: Paul Rubin

Primary Source: OR in an OB World, 02/24/2019

In yesterday’s post, I described a simple multiple-criterion decision problem (binary decisions, no constraints), and suggested a possible way to identify a portion of the Pareto frontier using what amounts to guesswork: randomly generate weights; use them to combine the multiple criteria into a single objective function; optimize that (trivial); repeat *ad nauseam*.

I ran an experiment, just to see whether the idea was a complete dud or not. Before getting into the results, I should manage expectations a bit. Specifically, while it’s theoretically possible in some cases that you might find all the Pareto efficient solutions (and is in fact guaranteed if there is only one), in general you should not bank on it. Here’s a trivial case that demonstrates that it may be impossible to find them all using my proposed technique. Suppose we have three yes-no decisions (\(N=3\), using the notation from yesterday’s post) and two criteria (\(M=2\)), one to be maximized and one to be minimized. Supposed further that, after changing the sign of the second criterion (so that we are maximizing both) and scaling, that all three decisions produce identical criterion values of \((1,-1)\). With \(N=3\), there are \(2^3=8\) candidate solutions. One (do nothing) produces the result \((0,0)\). Three (do just one thing) produce \((1,-1)\), three (do any two things) produce \((2,-2)\) and one (do all three things) produces \((3,-3)\). All of those are Pareto efficient! However, if we form a weighted combination using weights \((\alpha_1, \alpha_2) \gg 0\) for the criteria, then every decision has the same net impact \(\beta = \alpha_1 – \alpha_2\). If \(\beta > 0\), the only solution that optimizes the composite function is \(x=(1,1,1)\) with value \(3\beta\). If \(\beta<0\), the only solution that optimizes the composite function is \(x=(0,0,0)\) with value \(0\). The other six solutions, while Pareto efficient, cannot be found my way.

With that said, I ran a single test using \(N=10\) and \(M=5\), with randomly generated criterion values. One test like this is not conclusive for all sorts of reasons (including but not limited to the fact that I made the five criteria statistically independent of each other). You can see (and try to reproduce) my work in an R notebook hosted on my web site. The code is embedded in the notebook, and you can extract it easily. Fair warning: it’s pretty slow. In particular, I enumerated all the Pareto efficient solutions among the \(2^{10} = 1,024\) possible solutions, which took about five minutes on my PC. I then tried one million random weight combinations, which took about four and a half minutes.

**Correction**: After I rejiggered the code, generating a million random trials took only 5.8 seconds. The bulk of that 4.5 minutes was apparently spent keeping track of how often each solution appeared among the one million results … and even that dropped to a second or so after I tightened up the code.

To summarize the results, there were 623 Pareto efficient solutions out of the population of 1,024. The random guessing strategy only found 126 of them. It found the heck out of some of them: the maximum number of times the same solution was identified was 203,690! (I guess that one stuck out like a sore thumb.) Finding 126 out of 623 may not sound too good, but bear in mind the idea is to present a decision maker with a reasonable selection of Pareto efficient solutions. I’m not sure how many decision makers would want to see even 126 choices.

A key question is whether the solutions found by the random heuristic are representative of the Pareto frontier. Presented below are scatter plots of four pairs of criteria, showing all the Pareto efficient solutions color-coded according to whether or not they were identified by the heuristic. (You can see higher resolution versions by clicking on the link above to the notebook, which will open in your browser.) In all cases, the upper right corner would be ideal. Are the identified points a representative sample of all the Pareto efficient points? I’ll let you judge.

I’ll offer one final thought. The weight vectors are drawn uniformly over a unit hypercube of dimension \(M\), and the frequency with which each identified Pareto solution occurs within the sample should be proportional to the volume of the region within that hypercube containing weights favoring that solution. So high frequency solutions have those high frequencies because wider ranges of weights favor them. Perhaps that makes them solutions that are more likely to appeal to decision makers than their low frequency (or undiscovered) counterparts?

#### Paul Rubin

#### Latest posts by Paul Rubin (see all)

- Using Java Collections with CPLEX - July 22, 2019
- Evaluating Expressions in CPLEX - June 27, 2019
- R v. Python - June 17, 2019