1.02k likes | 1.33k Views
Overview. Department of Computer Science. 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu (e-mail) http://www.cs.utah.edu/. Faculty Overview. State Funded Faculty FTE. Faculty Overview. Current 3 Visitors
E N D
Overview Department of Computer Science 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu (e-mail) http://www.cs.utah.edu/
Faculty Overview State Funded Faculty FTE
Faculty Overview Current • 3 Visitors • 5 Research • 2 Teaching • 19 Regular
Undergraduate Student Overview • ~300 Computer Engineering & CS Students • ~90 students admitted each year • 40 High School Students in Summer Program • CE Graduates • CS Graduates # of Graduates (year of commencement)
Graduate Student Overview • ~100 Graduate Students • split evenly MS / PhD • MS Graduates • PhD Graduates # of Graduates (year of commencement)
Research Volume • Sources: DARPA, NSF, NIH, HP, etc. • NSF Science and Technology Center in Computer Graphics & Visualization • Brown, Cal Tech, Cornell, UNC - Chapel Hill • $ Millions
PE Robotics & Computer Vision Computational Science & Engineering Systems & Languages NLP & Information Retrieval Major Research Areas Calvin: "I like to verb words." Hobbes: "What?" VLSI & Async CAGD &CAM Architecture
Department Flavor • Theory to Practice • Team Projects • Large-scale Projects • Tech Transfer Alumni Alan Ashton, Jim Blinn, Ed Catmull Jim Clark, Frank Crow, Henry Fuchs Henri Gouraud, Jim Kajiya, Alan Kay Bui Tuong-Phong, John Warnock Faculty in Industry Dave Evans, Ivan Sutherland Martin Griss, Tony Hearn Chuck Seitz, Martin Newell Interval Research Corp
Scientific Computing and Imaging Research Group Chris Johnson (CS, Math, Physics, BE) Chuck Hansen (CS) Sponsored by NSF (PFF, NYI, ARI), NIH, DOE, Whitaker Foundation, Siemens, Medtronic, State of Utah The SCI research group has ongoing research projects in many areas of scientific computing: geometric modeling, numerical analysis, parallel computing, and scientific visualization. They are involved in both designing efficient and accurate tools for scientific computing, and in utilizing these tools for scientific applications.
Visualization of the Electrical Activity of the Heart • Uses non-invasive imaging techniques • Computes and visualizes voltages and current flow • Large-scale calculations and research into effective visualization • Working on optimization of internal defibrillators
Inverse EEG Simulations • Current techniques model brain and head as concentric spheres • Localization of electrical sources within the brain • Surgical treatment of epilepsy • Utilizes patient’s MRI scan to build accurate computer model
Computational Steering • Problem: cycle time for the scientific computing process is very long • Solution: “closing the loop” in the computation/visualization process • Controlling long running programs during execution • Feedback of intermediate results Geometric models Computing Visual- ization
Thomas C. Henderson John M. Hollerbach William B. Thompson Sponsored by ARPA and NSF Vision/Robotics Research Group Research on problems in computer vision, sensing for manufacturing, androbotics
Current Projects • Reverse Engineering of Mechanical Parts • Create full-function CAD models for physical parts using position sensing • Important for maintaining legacy hardware when spare part inventories are exhausted
Virtual Prototyping of AssembliesElaine Cohen, John Hollerbach, William Thompson • Providing a haptic interface to a CAD system for designing mechanical assemblies • Lets the designer “reach in” to interact with the parts before any physical prototypes have been fabricated
Dextrous Manipulation • Calibration and control of high degree-of-freedom autonomous and tele-operated manipulators • Haptic interfaces
Other Topics • Sensor Modeling • Better analysis of sensors used in robotics systems • Tools for building virtual sensors into simulation environments • Visual Motion • Analysis of visual motion to determine environmental structure and detect moving objects • Virtual Environments • Novel approaches to immersing users into simulated worlds • Mobile Robotics • Sonar, IR-based, or Vision-based Navigation • Object Recognition for Mobile Robots
The Hamlet Project Joseph L. Zachary With support from NSF, Dept. of Energy, & Motorola, Inc.
What We Do • Deliver Web-based course material • Unix, Fortran, C, Scientific Programming • Several hundred students per quarter • 5000 students since 1991 • Develop server and browser enhancements • Scripting HTML • Hamlet • Innovate online instructional techniques
Relied on shared file system Served multiple classes Lessons written in extremely limited hypertext Tracked student progress Automated demonstrations TA call queue Administrative utilities Relies on the Web Serves multiple classes Customized lessons written in SHTML Server-side SHTML scripts track student progress Demonstrations via Hamlet external viewer TA call queue via server-side scripts Administrative utilities via server-side scripts 1991 - 1995 Progress 1991: The Tutor 1995: Netscape
Technology is Enabling Interactivity • Java opens great scope for browser-side innovation • Maple and Mathematica exist as C libraries • MBONE communications can supply “tele-TA” • Always remember: the author is more important than the authoring system
Jay Lepreau John Carter Gary Lindstrom The Flux Project • Goal: high confidence systems • Information security • Resource management: memory, cpu, network bandwidth, ... • High assurance, i.e. software correctness • Approach • Operating Systems research: local and distributed • Compilers, languages, and formal methods • Offshoot: OSKit - reusable low-level software components • Widely used, including commercial; network appliances, Java/PC • Potential Broad Impact • Secure Java-based Web browsers • Distributed collaboration • Flexible & real-time instruments and embedded systems • Anything needing high security: medical info, E-commerce, … • Anything needing correct software: avionics, medical devices, …
JavaWilson Hsieh • Problem: Java does not allow for fine-grained resource management • How do you revoke resources (such as memory)? • How do you write programs where resources can be revoked? • Benefits: more control over untrusted software • Research: Language and runtime changes, OS support for resource management
Component Software ProjectRobert Kesslerwith N. Dykman, C. Mueller-Planitz, M. Salem, L. Williams • Currently sponsored by HP • Current domain: distributed measurement systems Problem: Building robust, distributed enterprise-scale measurement applications has high value, but is intrinsically difficult Goal: Create environment where distributed measurement applications are significantly faster to build and evolve Strategy: Customizable, component-based development frameworks and supporting tools.
CWave Visual distributed program development and simulation framework • Components - nested, hierarchical names, zooming, properties, ... • Ports - input or output ports, dynamically addable, properties, default values • Wires - point-to-point and bus • Execution engine - static dataflow • Drag and drop - to and from palette, start scripts, ... • Visual faceplates - provide problem-specific look • Threads - multiple threads, visualization • ActiveX, COM - interfaces to environment, components, external servers • ActiveXScripting - VBScript, JavaScript, PERL • Extensible - Loadable DLLs for types, components
Vision: ‘Sea’ of Active Objects Large computation and server hosts Larger computation and controller hosts Smaller Vantera nodes
HPTotal Wed 6 June 97 June 97 Daily Energy Used Hourly Peak Power H Details History New Site Shed Load Negotiate KILOWATTHOURS KILOWATTHOURS KILOWATTHOURS KILOWATTHOURS KILOWATTHOURS 240v 3w 240v 3w 240v 3w 240v 3w 240v 3w 2S 2S 2S 2S 2S 30 30 30 30 30 CL CL CL CL CL IH IH IH IH IH IA IA IA IA IA DEMO: Energy Management Utilities: A key application domain Deregulated utilities issue real-time, fine-grained bills, rate tables, overload alerts. Companies must monitor and controlenergy usage and costs more precisely. Power, rates, bills, alerts kWh, $k Site managers monitor rate tables, contracts and energy usage, issue load balancing and load shedding directives. Power, rates, alerts kWh kWh Palo Alto Site Utah Site kW, kWh kW, kWh kWh kWH SmartNodes and transducers on power panelsand major devices monitor and control usage
Power Power Power Power Power HP LABS LSD SubPanel Process line 5 Sub panel 2 Main Panel Motor 3 Measurement Hierarchy Agent and Analysis Components Agentandmeter palette HP H Building 1 Building 3 Building 4 Power
CS Û Human Genome ProjectMotivation Gary Lindstrom • The Human Genome Project • An international effort to sequence the entire genome • Identifying 3 billion nucleotides and 100,000 genes • The aggregate amount of data is not huge • Entire sequence is approximately 750 Mb • However, the underlying concepts are complex • Objects with intricate attributes • Complicated n-ary relationships between objects • Stretches limit of the relational model
More Motivation • An appropriate data model is elusive • Must support current and unknown future queries • Many levels of abstraction must be handled • Much information deals with transient lab technologies • Understanding of existing data is constantly evolving • Resulting problem: an ever changing schema • Indeed, the right data model is a scientific quest itself • Plumbing all the relationships is ultimate goal of the HGP • Data is messy • Incomplete, inconsistent, erroneous, misinterpreted, …
Utah Genome Center Approach • Identify the fundamental concepts of the domain • Use them to define the concepts (types) of interest • Instances include: gene, probe, pedigree etc. • Generalized Objects, Relations, and Processes (Gorp) • Provide meta-data support • By designing the database using fundamentals, broad flexibility can be obtained • Added payoff: reflective computing • Type information accessible to application programs • Enables fully general (polymorphic) support code
Computer Science Challenges • Disciplined integrity maintenance • What does integrity mean in this model? • How can / should it be enforced? • Concurrency control • What should be consistency and sharing policies? • Data integration • Data movement from / to community databases • Performance • Many joins are required for most queries at present • Adopting modern DBMS technology • Especially object-oriented DBMS’s
Elaine Cohen, Samuel Drake Richard Riesenfeld, Peter Shirley Sponsored by the NSF, DARPA Predictive Modeling A continuing project with research directed at computer graphics, geometric and physically based modeling, and improving the overall design process from initial, conceptual design to final process planning and manufacturing
Goals • Create models that predict reality in an objective way • From art-to-part
Consequences of Reaching Goals (Design-Manufacture) • Slash product cycle time with electronic prototyping • Integrating entire process leads to improved end product quality • Make small lot production more economically feasible • Create environments that support distributed (world-wide) design, analysis, and manufacturing collaborations
Research Issues • Representations • Time Critical Geometric Computation • Interaction • Virtual Environments • Design • Systems • Software Engineering • Manufacturing
Projects • NSF Science and Technology Center for Computer Graphics and Scientific Visualization • Multiphase Integrated eNgineering Design (MIND) • Virtual Prototyping of Assemblies
Consortium: • University of Utah • Brown University • California Institute of Technology • Cornell University • University of North Carolina • Utah Faculty • Rich Riesenfeld, Co-Director • Elaine Cohen, Co-PI • Peter Shirley, Sam Drake, Charles Hansen, Chris Johnson
Research Shared Across Sites • User interfaces (C&R) • Telecollaboration(C&R) • (Collaborative) Virtual Environments(C&R) • Rapid Distributed Design and Fabrication (C,D,&R) • Statistical Approaches to Rendering(S) • Wavelets in Medical Modeling (J) • 24 hour televideo communication • 5-way advanced graphics course taught year long
MIND & STC:Predictive Modeling for Shape • For geometric models including assemblies and mechanisms, how do you: • Decompose into subassemblies • Represent • Specify • Manipulate • Visualize • Capture Intent
MIND: Predictive Modeling for Engineering • All of those for Shape + • Manufacture • Process planning • Target: traditional manufacturing processes (milling, turning, CMM, EDM), and innovative (SFF) • Material • Heterogeneous materials • Embedded objects
Example: Madefast • Goal: Create a missile seeker assembly (physical hardware, optics, circuitry) using nationwide resources • Extensive use of WWW
Towards Dependable Computing through Formal Methodsthe Utah Verifier group Ganesh Gopalakrishnan (11th yr on fac.) Ratan Nalumasu (PhD, last yr - hopefully :-) Ravi Hosabettu (PhD, 2nd yr.) Rajnish Ghughal (MS, 1st yr.) Michael Jones (PhD, 1st yr.) Abdel Mokkedem (Visiting Asst. Prof.) Paliath Narendran (Visiting Associate Prof.) Towards Dependable Computing
The Problem • Digital systems are getting very complex! • involve complex processors, software, … • used in critical applications (cars, aerospace, banking, medical equipment, smart cards, …) • Design practices are falling behind! • designers work based on imprecise specs. • debugging tools increasingly miss critical errors • greed dilutes quality standards • “Errors” occur in different forms • “show-stoppers” (FDIV, FIST, AMD K-6, PowerPC) • lost productivity due to poorly designed standards (PCI bus, VHDL/Verilog…) Must digital design be hinged on “trial and error”? Towards Dependable Computing
Why current approaches don’t work well • Humans “no longer in the loop” (Philosophers .vs. embedded “spaghetti code”) • A new “ballgame” (complexity / time-to-market ) • Quest for performance introduces situations that call for new semantics (with very low re-use) • “net-effect” of operations hard to state • e.g., concurrent microcode routines that update 22 registers in one step • “Race” between reads and writes • e.g., the use of abstract Memory models to define the hardware / software boundary Towards Dependable Computing
Formal Methods • Nothing more than “rigorous common-sense”! • Provide a definition for what it means to • “test a system” (test a well-specified model) • “a test” (a mathematical property) • “synthesis” (model refinement) • Enables tools to be built around above notions • modeling languages • testing tools (aka “formal verification tools”) • synthesis tools • A little rigor can go a long way! Towards Dependable Computing
Formal Verification de-mystified... - Things break when you least expect (Murphy’s law) - Bugs tend to hide in “corners” of the execution space - How to highlight the corners? Towards Dependable Computing