Model-based Computing: Scheduling

There are two main projects around scheduling: model-based scheduling, and model-based design optimization.


Model-based Scheduling

One application of model-based computing that we have studied extensively is the construction of real-time schedulers for modular, networked reprographic machines. Conceptually, reprographic machines may be thought of as multi-pass assembly line machines, where parts (e.g., sheets, images) are moved along the assembly line (e.g., paper path, photo-receptor belt) and put together until a desired output is produced.

At the heart of the control software for such a system is the scheduler. The scheduler receives a continuous stream of document descriptions, for which it has to plan and sequence the actions that will produce the documents. Typically, it is desired to complete the job as quickly as possible. Scheduling has to happen under tight real-time constraints, and scheduling and execution typically happen in parallel.

With our approach, engineers use a domain-specific modeling language to build models of the physics (structure and behavior) of the machine. With suitable reasoning tools, these models are transformed into the information required by the embedded, generic scheduling algorithms we developed for this domain.

Much of this work is proprietary and is being protected by patents. For publications available for now, see in the publications list.

People: Markus Fromherz, Vijay Saraswat, Danny Bobrow, and others. Contact Markus Fromherz for more information.


Model-based Design Optimization

We have extended the work on model-based scheduling by using it as a sub-component of design optimization. The primary goal of the design task is to propose a concrete device that delivers a desired functionality. With reprographic machines, it is also desired to find a design delivers optimal productivity for given range of documents at the lowest cost. A simpler version of this task is so-called productivity analysis, where a design is given and we are interested simply in the potential productivity.

Productivity of reprographic machines depends not only on the hardware, but also on the (control) software. Therefore, it is important to consider the real scheduling algorithms and realistic run-time scenarios. Therefore, our approach is to complement the models used for scheduling with models of design constraints and cost. A particular algorithm than generates and evaluates designs with respect to productivity and cost.

For publications, see in the publications list.

People: Markus Fromherz and Ravi Kapadia. Contact Markus Fromherz for more information.


Back to the model-based computing home page.

Last updated on October 23, 1995.