1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah...

98
1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) [email protected] (e-mail) http://www.cs.utah.edu/ Department of Computer Science

Transcript of 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah...

Page 1: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

1Department of Computer Science

Overview

3190 Merrill Engineering Building,Salt Lake City, Utah 84112

(801)-581-8224 (voice)(801)-581-5843 (fax)

[email protected] (e-mail) http://www.cs.utah.edu/

Departmentof

Computer Science

Page 2: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

2Department of Computer Science

Faculty Overview

0

5

10

15

20

25

86 87 88 89 90 91 92 93 94 95 96 97State Funded Faculty FTE

Page 3: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

3Department of Computer Science

Faculty Overview

Current 3 Visitors 5 Research 2 Teaching 19 Regular

0

5

10

15

20

25

3019

86

1987

1988

1989

1990

1991

1992

1993

1994

1995

1996

1997

Page 4: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

4Department of Computer Science

Undergraduate Student Overview

~300 Computer Engineering & CS Students– ~90 students admitted each year

40 High School Students in Summer Program

CE Graduates CS Graduates

0

20

40

60

80

100

1991 1992 1993 1994 1995 1996 1997

# of Graduates(year of commencement)

Page 5: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

5Department of Computer Science

Graduate Student Overview

~100 Graduate Students– split evenly MS / PhD

MS Graduates PhD Graduates

0

5

10

15

20

1991 1992 1993 1994 1995 1996 1997

# of Graduates(year of commencement)

Page 6: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

6Department of Computer Science

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

$0.0

$1.0

$2.0

$3.0

$4.0

$5.0

$6.0

$7.0

$8.0

91 92 93 94 95 96 97

Page 7: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

7Department of Computer Science

MajorResearch

Areas

ArchitectureCAGD &CAM

VLSI & Async

Robotics & Computer Vision

Systems & Languages

NLP & Information Retrieval

Calvin: "I like to verb words." Hobbes: "What?"

Computational Science & Engineering

PE

Page 8: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

8Department of Computer Science

Faculty in Industry

Dave Evans, Ivan Sutherland

Martin Griss, Tony Hearn

Chuck Seitz, Martin Newell

Department Flavor 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

Theory to PracticeTeam Projects

IntervalResearchCorp

Page 9: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

9Department of Computer Science

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 ofscientific computing: geometric modeling, numerical analysis, parallel

computing, and scientific visualization. They are involved in bothdesigning efficient and accurate tools for scientific computing, and in

utilizing these tools for scientific applications.

Page 10: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

10Department of Computer Science

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

Page 11: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

11Department of Computer Science

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

Page 12: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

12Department of Computer Science

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

Geometricmodels

ComputingVisual-ization

Page 13: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

13Department of Computer Science

Vision/Robotics Research GroupThomas C. Henderson

John M. Hollerbach

William B. Thompson

Sponsored by ARPA and NSF

Research on problems in computer vision, sensing for manufacturing, and robotics

Page 14: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

14Department of Computer Science

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

Page 15: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

15Department of Computer Science

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

Page 16: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

16Department of Computer Science

Dextrous Manipulation Calibration and

control of high degree-of-freedom autonomous and tele-operated manipulators

Haptic interfaces

Page 17: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

17Department of Computer Science

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

Page 18: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Department of Computer Science

The Hamlet Project

Joseph L. Zachary

With support from NSF,

Dept. of Energy,

& Motorola, Inc.

Page 19: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Department of Computer Science

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

Page 20: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Department of Computer Science

1991 - 1995 Progress

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: The Tutor 1995: Netscape

Page 21: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Department of Computer Science

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

Page 22: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Department of Computer Science

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, …

Jay LepreauJohn CarterGary Lindstrom

Page 23: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

23Department of Computer Science

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

Page 24: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

24Department of Computer Science

Component Software ProjectRobert Kesslerwith N. Dykman, C. Mueller-Planitz, M. Salem, L. Williams

Currently sponsored by HP– Current domain: distributed measurement

systems

Problem:Problem: Building robust, distributed enterprise-scale measurement applications has high value, but is intrinsically difficult

Goal:Goal: Create environment where distributed measurement applications are significantly

faster to build and evolve

Strategy:Strategy: Customizable, component-based developmentframeworks and supporting tools.

Page 25: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

25Department of Computer Science

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

Page 26: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Department of Computer Science

CWAVE Features

Page 27: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

27Department of Computer Science

Vision: ‘Sea’ of Active Objects

Smaller Vantera nodes

Larger computation and controller hosts

Large computation and server hosts

Page 28: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

28Department of Computer Science

DEMO: Energy Management

0

5

10

15

20

25

30

35

40

45

1 2 3 4 5 6 7

Actual

Plan

0

5

10

15

20

25

Actual

Plan

DetailsHistoryNew SiteShed Load

Wed 6 June 97 June 97HPTotal

Hourly Peak PowerDaily Energy Used

Negotiate

Deregulated utilities issue real-time, fine-grained bills, rate tables, overload alerts. Companies must monitor and controlenergy usage and costs more precisely.

HSite managers monitor rate tables, contracts and energy usage, issue load balancing and load shedding directives.

SmartNodes and transducers on power panelsand major devices monitor and control usage

Utah Site

Palo Alto Site

CL 240v 3w IH2S IA30

KILOWATTHOURS

CL 240v 3w IH2S IA30

KILOWATTHOURS

CL 240v 3w IH2S IA30

KILOWATTHOURS

CL 240v 3w IH2S IA30

KILOWATTHOURS

kWHkW

, kW

h

kWh

kWh

kWh, $k

Power, rates, bills, alerts

CL 240v 3w IH2S IA30

KILOWATTHOURS

kW, kWh

kWh

Power, rates, alerts

Utilities: A key application domain

Page 29: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

29Department of Computer Science

HP

LSD HP LABS

Building 1Building 3Building 4

Measurement Hierarchy

AgentAgentandand

meter meter palettepalette

Power

PowerPower

Power

Power

Power

H

Sub panel 2

Main PanelMotor 3

Process line 5

SubPanel

Agent and Analysis Components

Page 30: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

30Department of Computer Science

CWave - Agent Scripts

Page 31: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

31Department of Computer Science

CWave - Metering

Page 32: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Department of Computer Science

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

Page 33: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Department of Computer Science

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, …

Page 34: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Department of Computer Science

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

Page 35: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Department of Computer Science

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

Page 36: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

36Department of Computer Science

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

Elaine Cohen, Samuel Drake

Richard Riesenfeld, Peter Shirley

Sponsored by the NSF, DARPA

Page 37: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

37Department of Computer Science

Goals

Create models that predict reality in an objective way

From art-to-part

Desired “behavior”(spec)

Modelcreation/editing

Interpretation

Realobject

Model

SyntheticTesting

PhysicalTesting

Page 38: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

38Department of Computer Science

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

Page 39: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

39Department of Computer Science

Research Issues

Representations Time Critical Geometric Computation Interaction Virtual Environments Design Systems Software Engineering Manufacturing

Page 40: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

40Department of Computer Science

Projects

NSF Science and Technology Center for Computer Graphics and Scientific Visualization

Multiphase Integrated eNgineering Design (MIND)

Virtual Prototyping of Assemblies

Page 41: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

41Department of Computer Science

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

Page 42: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

42Department of Computer Science

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

Page 43: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

43Department of Computer Science

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

Page 44: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

44Department of Computer Science

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

Page 45: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

45Department of Computer Science

Example: Madefast

Goal: Create a missile seeker assembly (physical hardware, optics, circuitry) using nationwide resources

Extensive use of WWW

Page 46: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

46Department of Computer Science

Towards Dependable Computing through Formal Methods

the 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.)

Page 47: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

47Department of Computer Science

Must digital design be hinged on “trial and error”?

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…)

Page 48: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

48Department of Computer Science

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

Page 49: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

49Department of Computer Science

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!

Page 50: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

50Department of Computer Science

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?

Page 51: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

51Department of Computer Science

the Model-Checking answer

- Scale-down symmetric data-states

- Model other data-states through non-determinism

- Retain key control states

- Analyze scaled-down system exhaustively

- Highlight corner cases using properties as filters

Page 52: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

52Department of Computer Science

process p{ do :: (x == 0) :: true :: ... od }process q{ do :: y==0 :: z==0 od }

... ...

c2 ! x+1

A Generic Example

<pq,0,0,0>

<p1q,1,0,0>

...

...

... ...

...

- Create State-graph

- Check for Safety and Liveness

properties on-the-fly

Page 53: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

53Department of Computer Science

the Theorem Proving answer

- Facilitate rigorous specs. and specification validation

- Facilitate building high-level models (“infinite-state”)

- Prove general properties via automated symbolic logic

- Corners revealed during “case analysis” during proof

Page 54: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

54Department of Computer Science

A Generic Example

thm to be proved

subgoals created by proof-rule(e.g. “induction” or “rewrite”)

g1 g2

A thm prover forces a systematic walk-through thru allcases, revealing “corner cases”

Page 55: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

55Department of Computer Science

Aims of our FM Research Develop FM tools to support design activities Demo in the context of realistic systems We use a Driving Design (Avalanche MP)

Where FM has been / will be used:

– Requirements capture and verification

– Modeling and verifying bus and DSM protocols

– Detailed design of the Widget

CPU MEM

WIDGET Myrinet

HP PA 8000

DSM &Msg passingcontroller

Page 56: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

56Department of Computer Science

Our Project: Utah Verifier

Page 57: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

57Department of Computer Science

Goals of UV

Develop tools tailored for each level of abstraction

Apply to real examples

We identify three such tools

– Design requirements-Base (DB)

• requirements capture & validation

• theorem-proving support

– Protocol Verifier (PV) to support protocol verification and synthesis

– Cycle-level Verifier (CV) to verify cycle-level properties, and HDL models embodying them

PV CV

DB

Page 58: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

58Department of Computer Science

A New Partial-Order Reduction Algorithm for Concurrent System Verification

Ratan Nalumasu

Ganesh Gopalakrishnan

CHDL’97

Result #1

Page 59: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

59Department of Computer Science

Basic Idea (highly simplified)

P: c!1 ; c!2 ; c!3||Q: c?x ; c?y ; c?z

P

Q

Avoid exploring all possible interleavings!

Page 60: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

60Department of Computer Science

Results

States Time (s)Mig (spin) 113,628 13.6

Mig (PV) 9,185 1.7

Inv (spin) > 620,446 DNF

Inv (PV) 135,404 21.2Missed bugFound bug

0

5,000

10,000

15,000

20,000

SC2 SC3 SC4 Pftp Snpy

SPIN

PV

Statesdnf x10

Page 61: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

61Department of Computer Science

Protocol Refinement

Ratan Nalumasu

Ganesh Gopalakrishnan

(Submitted to FORTE’97)

Page 62: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

62Department of Computer Science

Motivations

Coherence Protocols written “in the usual way”

are difficult to understand and debug

– Ad-hoc handling of resources

– No guarantees (explicit or implied) of behavioral properties (e.g. scalability)

“Unexpected” message reception

– Handled by transient states and nacks that are

introduced in a very ad-hoc manner

Page 63: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

63Department of Computer Science

Problems due to “unexpected msgs”

Req Ack

Another Req? ? ?Usually don’t know what to say…...saying nothing causes deadlock!

Page 64: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

64Department of Computer Science

Solution: Refine protocol written at a much higher level

Uses synchronous communication

– No need for transient states Debug high-level spec thoroughly

– e.g.: formal analysis of progress properties Apply proven transformations

– Efficient low-level protocols are obtained

– Resources allocated during transformation

Page 65: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

65Department of Computer Science

Overview of Synthesis Method

I ECacheCtrlr

F EDir Ctrlr

I E

F E

Req (N)ack

Page 66: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

66Department of Computer Science

Advantages

HL Specs are vastly more efficient to verify

Results in “hand-quality” protocols

Transient states added as necessary

No infinite-buffering assumption

Page 67: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

67Department of Computer Science

Ease of Debugging

Protocol N states / time(low level)

states / time(high level)

Mig 2 23,164 / 2.8 54 / 0.14 235 / 0.48 965 / 0.5

Inv 2 193,389 / 19.23 546 / 0.64 18,686 / 18.4

Page 68: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

68Department of Computer Science

Work in progress

Exploration of Multi-way Decision Graphs (RaviH)

Construction of Formal Model for the Runway Bus

(Rajnish and Ravi)

Protocol Synthesis tool (Ratan)

Use of Protocol Synthesis ideas for Async Ckt

Synthesis (Hans)

Modeling the Avalanche “Widget” (all of us)

Page 69: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

69Department of Computer Science

On Teaching FM

Five students; one with prior exposure to SPIN and Promela; all were “systems types”

Modeled large portions of Fluke Kernel

– partly trans. into Promela using reasoning

– partly hand-translated mechanically

Modeled thread cancellation (5000 lines C)

Discovered two bugs in thread cancellation

Useful “copper model” for future work

Paper in Hot-OS’97

Page 70: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

70Department of Computer Science

Conclusions

The Utah Verifier group is developing an integrated set of Formal Verification tools

They will be demonstrated on realistic in-house designs (e.g. the Avalanche, Fluke, …)

Expected Results:

– rigorous design methods

– rigorous verification methods

– Better

• Thinking aids, Communication tools, and Documentation tools for project-wide use

Page 71: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

71Department of Computer Science

What’s Wrong with Status quo?

The inability to design correctly (rather than the inability to “fabricate” in VLSI) will stifle advances

– companies unsure how to debug high-end systems

– unsure when to stop testing and ship the product

– “blind simulation” (rooms full of workstations and emulators) - a popular measure - is very wasteful, and provides little confidence of good coverage

– standards designed with little regards to established wisdom waste expert designer time!

Real advances must come from deeper understanding and correctness by construction

Page 72: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

Towards Dependable Computing

72Department of Computer Science

Approaches to Formal Verification

All approaches are based on some branch of mathematical logic:

– Boolean Logic

– First-order Logic

– Temporal Logics

– Higher-order Logics

Good decision procedures (with tool-support) are available for large fragments of all these

Two “extreme approaches” are usually pointed out:

– model-checking

– theorem-proving

Page 73: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

73Department of Computer Science

The Utah Verifier ProjectGanesh Gopalakrishnan (Darpa ITO)

Tools for developing hardware and reactive software, for example:

– bus-based hardware systems

– coherence protocols

– software to realize concurrent protocols Technical approach

– create models for hardware (in HDLs) or software (in concurrent programming notations)

– formal verification for correctness properties (deadlocks, correct response) are supported

– achieves design capture and design validation for early debugging, leading to improved product quality and reduced design time

Protocol Verifier (PV) and Cycle Verifier (CV) integrated with Design requirements Base & verifier for system-level properties

PV CV

DB

Page 74: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

74Department of Computer Science

Asynchronous Computer Architecture

Erik Brunvand, Ganesh Gopalakrishnan, Chris MyersSponsored by the NSF, State Center of Excellence

How asynchronous circuit techniques impact the design of a general purpose computer and the development of CAD tools for the design of asynchronous integrated circuits

Page 75: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

75Department of Computer Science

Asynchronous CAD Tools

ACK– A framework for the complete design from high-

level descriptions to integrated circuit layout

– Leveraging commercial synchronous CAD tools (Cadence, Cascade, Synopsys, and ViewLogic)

ATACS– High-speed asynchronous controller design

– Uses timing in asynchronous circuits to increase performance

Page 76: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

76Department of Computer Science

Fred - A self-timed, decoupled, pipelined computer architecture based on micropipelines

Completely self-timed, no clocks anywhere Organized as a set of independent concurrent

hardware processes Support for multiple functional units, out-of-

order instruction issue and completion Decoupled control flow (branch) and memory

operations Innovative “functionally precise” exception

model

Page 77: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

77Department of Computer Science

Fred Block Diagram: Solid lines are primary data paths, dashed lines are control

paths. All data and control paths may be pipelined.

DispatchUnit

RegisterFile

Scoreboard

Distributor

Branch Unit

Control Unit

Logic Unit

Arithmetic Unit

Memory Unit

Inst

ruct

ion

M

emo

ry

Inst

ruct

ion

s

Data Memory

Execute Unit

Results

Results

Results

Results

R1

Qu

eue

Ad

dre

ss

Wri

teD

ata

Rea

dD

ata

Set/Clear

ReadOperand Request Queue

Operand Queue

Do

ne

Qu

eue

Clear

Pre

fetc

h A

dd

ress

Bra

nch

Qu

eue

Exc

epti

on

Bra

nch

Qu

eue

Page 78: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

78Department of Computer Science

VLSI Research

Kent F. Smith

Cosponsored by ARPA, NSA, FBI

Page 79: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

79Department of Computer Science

Commercial VLSI Design Tools Used at U of U

Cadence - composite layout, DRC, ERC, LVS

Cascade - place & route, static timing, libraries for

many vendors

Synopsis - VHDL, Verilog

Viewlogic - schematic capture, gate level simulation

Hspice - analysis with transistors, capacitors

Page 80: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

80Department of Computer Science

U of U Developed VLSIDesign Tools and Chip Mfg.

PPL/ACME - Physical Schematic Capture

Complete system for small chips - 10,000 gates

Libraries, physical layout, unit delay simulation, CIF

output

MOSIS compatible - chip cost under $500

CMOS (2, 1.2 and 0.6 m), GaAs (mesfet and HBTs)

Page 81: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

81Department of Computer Science

Current VLSI Projectsat the U of U

ARPA #1 - Large (> 1M transistors) sub-

micron ASICs for multiprocessor control

ARPA #2 - High speed GaAs circuits - 10 GHz

clock rates with HBTs

NSA - ASIC CMOS chips

FBI - Active noise cancellation - filters, A/D

converters, digital signal processing, analog-

digital circuits

Page 82: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

82Department of Computer Science

Example of Analog/DigitalASIC Design

Pressure Transducer - One chip contains analog conditioning circuits and the digital circuits for control and bus communication

Diaphragm covering evacuated cavity is attached to the chip - pressure changes cause flexing of lid

Pressure changes result in changes in the capacitance between the diaphragm and the analog integrated sensor circuit

Capacitance changes are measured with analog/digital circuitry and transmitted via a digital bus.CMOS chip

4 mm

digital analog

Page 83: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

83Department of Computer Science

Avalanche

Scaleable Parallel ProcessorProject

Al Davis, Erik Brunvand, John Carter, & Mark Swanson

Sponsored by ARPA, Hewlett Packard,

Myricom, & SPAWAR

Page 84: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

84Department of Computer Science

Avalanche Mission:Scaleable Computing

Massively parallel processors still too expensive

Workstation clusters offer scaleable cost, but too slow

Widening gap between CPU and DRAM performance

0

50

100

150

200

250

300

350

400

450

500

1987 1989 1991 1993 1995

Pe

rfo

rman

ce

CPU

DRAM

Workstation Clusters

$10,000 $200,000 $3,000,000

Page 85: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

85Department of Computer Science

Avalanche CommunicationMinimize Latency!

Communication Software:– Multiple programming models - Message Passing and DSM.

– Optimize the protocol path (minimize data copying).

– Sender-Based Protocols allow near link bandwidth and latency.

– Adaptive DSM protocols - invalidate, migratory, and update.

Communication Hardware:– Leverage commercial workstation - CPU, Bus, Memory, etc.

– Integrate communication fabric with memory hierarchy.

– Coherent second level cache to reduce miss latency.

– Adaptive DSM models - CC-NUMA and S-COMA.

Page 86: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

86Department of Computer Science

Avalanche OverviewPlug our “Widget” into COTS HW.

ProcessingElement

Avalanche“Widget”

AvalancheTopology

PEPESharedBuffer

(SRAM)

NetworkInterface

CacheController

BookkeepingCache

DirectoryController

Prot. Proc.Engine

BusInterfaceProcProc

DRAMDRAM

I/OI/O

WidgetWidget

Proc

CacheCache

Sys

tem

Bu

s

Page 87: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

87Department of Computer Science

Adaptive Memory Systems

John Carter, Al Davis, John Carter, Al Davis,

Erik Brunvand, Mark Erik Brunvand, Mark SwansonSwanson

Computer Systems Laboratory

Page 88: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

88Department of Computer Science

Technology Motivation The Memory Gap Continues to Widen

– 60%/Year Processor Performance Improvement

– 7%/Year DRAM Performance Improvement

Processor and DRAM business momentum high– forcing a change to achieve better performance is unlikely

Internal CPU parallelism is escalating– 4 issue processors now - 8 issue already announced

Yet the bottleneck is in the memory system– Sadly Von Neumann’s 1945 prediction remains true

– CPU performance improvements are only partially seen by the applications

• Caches are beginning to fail badly

• Memory bus contention is a key source of stalls

• A new approach is essential

Page 89: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

89Department of Computer Science

Evidence = Sites/Perl Study (1996) Alpha 8400 (21164 CPU), 300 MHz, 4-issue Running

– Microsoft SQLserver Database

– Windows-NT Operating System Performance

– 12% of peak memory bandwidth achieved

– CPI = 2.0 rather than 0.25!

• AN 8X SLOW DOWN! (pointer chasing prefetching not possible) Implication

– Commercial database codes account for 95% of industry revenue

– High performance database processing is a critical DoD need

– BOTTOM LINE: CACHES FAIL ON DATABASE CODES

– The problem is the memory system

• optimized for linear dense usage - NOT TRUE FOR DATABASES

(Demand = 300 MHz x 16B = 4.8 GB/Sec)

Page 90: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

90Department of Computer Science

The Adaptive Memory Concept

Densely remappedsparse data

Data w/good reuseremapped

to use mostof cache

...

Dense data withpoor locality

Sparse data withpoor locality

Dense data withgood localityConventional memory

systems: High conflictrate, poor bus utilization

Unused data

Conflicts!

Adaptive memory system :Remapping Low conflictrate, good bus utilization

Page 91: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

91Department of Computer Science

Sys

tem

Mem

ory

Bu

s

Cache

AMCAMCASICASIC

AMCAMCASICASIC

Proc

DR

AM

Bu

s

DRAM

(64

Dat

a B

its)

(64

Dat

a B

its)

Adaptive Memory Controller CPU, Cache, and DRAM structures do not need to change!!

Page 92: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

92Department of Computer Science

Natural Language Processing and Information Retrieval

Ellen Riloff and Lee Hollaar

Sponsored by the NSF

Current Projects include:

Information Extraction, Automated Dictionary Construction for Information Extraction, and Text Categorization

Page 93: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

93Department of Computer Science

Information Extraction

Information extraction involves extracting predefined types of information from text.

Example: extracting companies, products, and locations associated with joint ventures.

Japan Storage Battery Co. announced it has teamed up with a leading French battery maker, Saft S.A,, to set up a joint venture in Japan to market small batteries.

Mitsui and Co., a major Japanese trading house, said Tuesday it will form a joint venture in Canada next March to produce ethylene glycol (EG) with a subsidiary of Union Carbide Corp. of the United States.

Page 94: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

94Department of Computer Science

Automated Dictionary Construction for Information Extraction

The AutoSlog dictionary construction system generates patterns for information extraction automatically.

Japan Storage Battery Co. announced it has teamed up with a leading French battery maker, Saft S.A., to set up a joint venture in Japan to market small batteries.

<x> has teamed up <x> is a partner companyhas teamed up with <y> <y> is a partner companyventure in <z> <z> is location of ventureto market <p> <p> is product of venture

Page 95: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

95Department of Computer Science

Automated Dictionary Construction Using AutoSlog

source texts answer keysToyota, Nissan

EXTRACTION PATTERNS:

<x> teamed up teamed up with <y>

AutoSlog

"Toyota teamed up with Nissan ..."

Sentence Analyzer

S: Toyota VP: teamed up PP: with Nissan ...

Page 96: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

96Department of Computer Science

Text CategorizationText categorization involves assigning category labels

to texts. Applications include text filtering and text routing.

Natural language processing can make important linguistic distinctions that keywords alone cannot.

Expression % in relevant textsventure between <x> 100%venture with <x> 96%joint + venture (keywords) 89%joint + ventures (keywords) 67%

to manufacture <x> 87%<x> was manufactured 53%

<x> will construct 100%was constructed by <x> 64%

Page 97: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

97Department of Computer Science

The Relevancy Signatures Algorithm for Text Categorization

TRAINING

relevancy signatures

Sentence Analyzer

preclassified texts

CATEGORIZATION

relevancy signaturessignatures

category

Sentence Analyzer

new text

Page 98: 1 Department of Computer Science Overview 3190 Merrill Engineering Building, Salt Lake City, Utah 84112 (801)-581-8224 (voice) (801)-581-5843 (fax) info@cs.utah.edu.

98Department of Computer Science

Summary

Information extraction techniques are useful for many real-world applications and are more tractable than in-depth understanding methods

Using our automated dictionary construction system, AutoSlog, information extraction systems can be built quickly for new applications

Information extraction can be used to achieve high-precision text categorization

Natural language processing can distinguish between similar linguistic expressions that may behave very differently in a given application