Recently a coworker and I encountered a problem that required meeting two conflicting needs. I am sure everyone runs across something like this: “We need to lower costs and increase quality and reduce production time.” Or as the saying goes: “Good, fast, cheap: You can have two of these at most.” While we had several different options for solving the problem, none of them satisfied both needs sufficiently.
To further complicate the matter, my coworker and I had differing opinions on which need was more important. In essence, we had an optimization problem, but without a clearly defined objective. We knew we needed to satisfy both need 1 and need 2, but we didn’t know whether it was better to fully satisfy need 1 at the expense of need 2, fully satisfy need 2 at the expense of need 1, or instead partially satisfy both. I was still trying to figure out how to accurately describe our objective when my coworker decided the problem was solved. He told me “It is clear we each have our own solution and we need to figure out which one of us has the right answer.”
Timeout. How do we know what “right” even means if we don’t know what the objective is? Let’s formulate the problem as a linear program to see how important the choice of objective is. We have two needs and that we want to satisfy. We have limited resources, so we’ll assume that if we completely satisfy then we cannot satisfy at all and vice versa. Also, each need can be satisfied up to 100%. The return in satisfying completely is and the return in satisfying completely is . This gives us the following optimization problem:
Assume that the value of satisfying each need is the same (i.e. ). Solving the optimization problem tells us that satisfying and in any combination is optimal as long as . But what if we decide that satisfying is 3 times more important than satisfying ? Then solving the problem tells us that we should satisfy completely and ignore . And of course, if we decide that satisfying is 5 times more important than satisfying , then we should completely satisfy and ignore .
Now if my solution is to completely satisfy and my coworker’s solution is to completely satisfy , we are both right 67% of the time if one of the above 3 objectives are used. However, there will be times when one of us will be totally wrong. So in general it seems we both have good solutions, but there is always the risk that one of us will be wrong. This is a trivial example, of course, but it highlights the chance we take by choosing a solution before we fully understand the objective we are trying to meet. A “good” solution is not always the correct solution.
Knowing this, my response to my coworker was “While we have many potential solutions, we won’t know which one is right until we know what our goals are.” The objective is written first in the traditional structure of an optimization problem and it should be defined first when making decisions. Once we know what we want to achieve, we can determine how to get there.