The 1950s were a flourishing period for Management Science that saw many practical successfully attacked through the application of inelegant but effective heuristics. In the 1960s, attention turned to optimization, leading to the development of algorithms that employed more sophisticated mathematical constructs. While these algorithms were a significant research achievement, they failed to provide for reliable solutions to many problems. The 1970s seem to have been a period of soul searching in which computational complexity results were discovered, providing evidence that those who failed to develop effective optimization algorithms should not be discouraged, since the problems were probably intractable anyway. As a consequence, some of the intellectual energy that had been devoted to optimization began to be directed to the study of heuristics, but from an enriched perspective that emphasized theoretical performance analysis, both worth case and probabilistic.