SUPPLE is an application and device-independent system, currently under development at University of Washington, that automatically generates user interfaces for a wide variety of display devices. SUPPLE uses decision-theoretic optimization to render an interface from an abstract functional specification and an interchangeable device model. SUPPLE can use information from the user model to automatically adapt user interfaces to different tasks and work styles while also providing extensive customization mechanisms that allow for modifications to the appearance, organization and navigational structure of the user interface.