When? In what order?

Scheduling involves deciding on the order and time for a series of actions.

Scheduling may seem like a simple problem at first, but whenever the decision includes the order to do things, the possibilities become factorial --  i.e., fantastically large.  For instance, scheduling the order in which to perform 10 tasks entails over 3 million possible combinations (10! Or 3,628,800).  Simply adding 3 more tasks increases the number of possible combinations to over 87 billion.  (This is discussed in The Optimization Edge: page 55).

Because of this fantastic number of combinations, in the absence of optimization, organizations tend to create simple rules for making decisions, such as “First In, First Assigned” (affectionately referred to by optimizers as “First Pig to the Trough”) or “Assign the Biggest First” or “Assign the Highest Profit First”, or other similar approaches.  In many organizations, savvy insiders know that the scheduling process essentially consists of copying the last schedule and simply editing in changes in supply and demand.

One of optimization’s great contributions to a business comes from its ability to evaluate and score billions of combinations in seconds – something no human, even aided with a “rules engine” can approach.

  • For the airline, optimized schedules are created for revenue tasks (transporting customers) as well as non-revenue tasks (repositioning planes and crew).  The resulting schedule can perform the “double hat trick” of dramatically reducing costs while improving customer service.  In a nutshell: putting together the right schedule not only reduces asset waste, but frees the assets to then be in the right place at the right time for customers.
  • For the high frequency hedge fund, schedules are created to govern which financial positions are acquired and unwound at what times and in what order to maximize return and to  comply with balance and liquidity constraints.
  • For the pharmaceutical company, blood samples are scheduled to test machines in a way that minimizes waiting for diagnostic results for the most critical cases, while maximizing overall lab throughput.