Top Banner
Prof. Robert Keller, Director [email protected] 909-621-8483 Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California www.cs.hmc.edu/clinic
40

Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Jun 29, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Prof. Robert Keller, [email protected]

909-621-8483

Harvey Mudd College

Computer Science Clinic

HMC Olin Science Center Claremont, California

www.cs.hmc.edu/clinic

Page 2: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Providing a valuable and unique learning experience for HMC students. Providing work products of significant value to the sponsoring client.

Dual Objectives of the CS Clinic

Liaison and student team,Teradyne Project, 2002-2003

Page 3: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

A physician does not go directly from classroom to practice.

There is a clinical period during which he or she is exposed to “real-world” problems in a controlled setting.

The same is desirable for our profession.

Why “Clinic”?

Page 4: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Unlike Internships:Work is done at HMC.

Faculty play a supervisory role.

Unlike Research Grants:Sponsor owns the results.

Contrasts with Other Corporate-University Models

Page 5: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Located in Claremont, California.Highly-selective liberal arts college of Science and Engineering.About 780 students (1669 applicants for freshman class of 185).Combined SAT-score range: 1450-1600.Competition: Stanford, MIT, Caltech.45% go on to attain advanced degrees.

About Harvey Mudd College

Page 6: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

CS major introduced in 1992Second-largest major at HMC35-40 majors in graduating classNine faculty, spanning most areas of CSBroad range of coursesUp-to-date facilities (high-speed networking, workstations, software tools)

About HMC Computer Science

Page 7: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Introduction to Computer SciencePrinciples of Computer ScienceFoundation and Kernel Courses (6)Technical Electives (>3)Clinic (1 year)Colloquium (2 years)Independent Research (optional)

Components of the HMC CS Major

Page 8: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Calculus is required prior to admission

Math: Multi-variate calculus, linear algebra, differential equations, probability and statistics

Physics: 2 semesters with lab (E&M, Relativity)

Engineering: Systems Engineering

Chemistry: 2 semesters with lab

Biology: 1 semester

Components of the HMC Core

Page 9: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Data Structures and Program DevelopmentComputability and LogicComputer SystemsAlgorithmsProgramming LanguagesSoftware Development

CS Foundation and Kernel Courses

Page 10: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Computer Science Electives

Advanced Computer Architecture Advanced Operating Systems

Artificial Intelligence Compiler Design

Computer Animation Computer Graphics

Computer Networks Computer Vision

Databases Neural Networks

Parallel & Real-Time Computation Performance Analysis

Robotics Theory of Computation

Page 11: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

In 1997, HMC became the first (and so far, the only) undergraduate college to win the ACM International Programming Competition in its 50-year history.

The finals compete 50 teams world-wide, from an original field of 1000 colleges and universities.

Won ACM International Programming Competition

Rank School Penalty

1 Harvey Mudd College 900

2 Univ. of Washington 916

3 Univ. of Queensland 916

4 National Taiwan Univ. 1001

5 Univ. of Waterloo 1219

6 Umea University 1483

Teams Solving Six Problems

Kevin Watkins, Brian Carnes, Brian Johnson

Page 12: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

History of The Computer Science Clinic

1963: HMC Engineering Clinic first of its kind1973: HMC Mathematics Clinic established1992: Computer Science Major Established1993: Computer Science Clinic Established2001: Summer Clinic Program Initiated

CS Clinic Projects by Year

0

2

4

6

8

10

12

1992 1994 1996 1998 2000 2002 2004

Start Year

Nu

mb

er

of

Pro

ject

sProjects

Page 13: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

2002-2003 Clients

New Clients Returning Clients

Green Media Toolshed The Aerospace Corporation

Kofax Image Products Auditude.com

LaserFiche, Inc. Boeing Air Traffic Management

Magulandia Studio Teradyne, Inc. (2 projects)

Northrop Grumman

Sandia National Laboratories

Page 14: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

2002-2003 Project AreasNetwork Management and Security

AerospaceHand-Held Mobile Application

BoeingArtificial Intelligence/Pattern Recognition

Auditude, Kofax, LaserFiche, SandiaGraphics/Animation

Magulandia StudioFault-Tolerance

Northrop GrummanWeb Enterprise Application

TeradyneDatabase Application

Green Media Toolshed

Page 15: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Faculty Supervisor Areas of Expertise

Professor PhD from Area

Zachary Dodds Yale Robotics, Vision

Mike Erlinger UCLA Network Management, Security

Ran Libeskind-Hadas Illinois Distributed Algorithms, Network Routing

Robert Keller Berkeley Languages, Parallel Processing, Soft Computing

Geoff Kuenning UCLA Operating Systems, Performance Analysis

Melissa O’Neill Simon Fraser Human-Computer Interfaces, Distributed computing

Chris Stone CMU Programming Languages

Elizabeth Sweedyk Berkeley Graphics, Animation

Belinda Thom CMU Machine Learning, Music

Page 16: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Project Examples

Page 17: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Nuera Communications: Routing Technology

Nuera Corporation produces switches that route telephone calls over IP (Internet Protocol).

HMC Clinic Team designed and built software simulator for networks for algorithm testing, as well as

Developed software for automatically generating efficient routing tables.

Page 18: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Northrop Grumman: Software Fault Tolerance

Page 19: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Optivus Technology: Radiology Registration

Optivus Technology, Inc. develops unique radiation treatment systems based on Proton beams.

HMC Clinic Team developed a registration tool for radiographic images to speed the patient alignment process while enhancing accuracy.

Page 20: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

LaserFiche: Automated Forms Recognition

Page 21: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

IBM Austin Research: Asynchronous Processors

IBM Austin Research Center is interested in high-performance processors based on asynchronous logic.HMC Clinic team developed a suite of tools for verifying hardware transformations, including a VHDL compiler and visualization capabilities.

Page 22: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Magulandia Studio: Computer Animation

Page 23: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Octel Communications: Voicemail Menu Translation Tool

Octel Communications (now part of Lucent) needed to translate a large set of voice-mail prompts into many different languages. HMC Clinic team developed an interactive tool used by linguists that provides phrase structure and contextual information.

Page 24: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Teradyne: J2EE Management of Test Data

Page 25: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Microsoft: Sidewalk

When hand-helds were a fairly new thing a CS Clinic team developed web-browsers for Windows CE and other pda’s.These browsers were customized to display Microsoft Sidewalk data.Sidewalk is now called “CitySearch”.

Page 26: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Sandia National Laboratories: Clustering Visualization Tool

Page 27: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Boeing Air Traffic Management: Cockpit Weather PDA

Page 28: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Qualcomm: ARM code generation

Page 29: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

JPL: Goal-Net Visualization

Page 30: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Example Development Languages and Platforms

PrologAssembler

Fortran

SQLPerl

JavaC++C

MacintoshWindows

LinuxUNIXMaya

J2EEXML

SolarisMPIOpen GL

Page 31: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Project Organization and Management

Requirements AnalysisUse CasesWork Breakdown StructurePERT and Gantt Charts with MilestonesUML Class, Sequence, ... diagramsDesign PatternsSoftware architecture concepts

Page 32: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Mid-July: Project Commitment, One-page Description

Early September: Project Start, Orientation

Team Structuring, Research, Proposal, Site Visit

Early October: Closure on SOW with team

Design reviews and presentations

Mid-December: Mid-year reporting

Development, plenary presentations

Mid-May: Final report

Clinic Project Timeline

Page 33: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Bound copies of final report

CDROM containing

Software installation and code

User documentation

Design documentation

Presentations

Other data as relevant

Presentations at the Sponsor’s Site

Deliverables Include ...

Page 34: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

HMC Clinic Team (usually 4 seniors): Does most of the work.

Faculty Advisor: Provides guidance, insight, expertise.

Sponsor Liaison: Provides domain-specific knowledge, requirements.

Sponsor: Provides funding and need.

Clinic Director: Provides oversight and management.

Clinic Advisory Committee: Provides program assessment, critique.

Stakeholders

Page 35: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Conclusion

HMC Computer Science Clinic projects address

Technical RequirementsPerformance RequirementsErgonomic Requirements

ranging from current practice to advanced researchin a cost-effective manner.

Page 36: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Computer Science Clinic, 1993-200310 years, 36 Sponsors, 70+ projects

Accel Technologies, Inc.Auditude.com (2)The Aerospace Corporation (10)Bank of AmericaBeckman InstrumentsBoeing (2)DirecTVDisney Feature AnimationESRIGreen Media Toolshed, Inc.GTEHRL Laboratories (2)IBM (3)I/O Software, Inc.Jet Propulsion Laboratory (4)Kofax Image ProductsLaserFiche, Inc

Legato Systems, Inc.Magulandia StudioMarine Biology Lab. (3)Microsoft Corporation (2)N2H2, Inc.Nuera Communications (2)Northrop GrummanOctel Communications Corp. (2)Optivus Technology, Inc. (5)Paracel, Inc.QB Inc.Qualcomm, Inc.Rockwell Science CenterSandia National LaboratoryTeradyne Inc. (5)United Device, Inc.WebTV Networks, Inc.Worldport, Inc.Yahoo!

Page 37: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

1000th Combined Clinic Project Recognized: 2003(More that 200 sponsors in all HMC programs)

Fair-Isaac, Inc. Liaison Gary Sullivanreceives plaque for the 1000th project.

Page 38: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Stephen Lukasik (Board of Trustees), Chair

Paul Anderson (The Aerospace Corporation)

Joseph Betser (The Aerospace Corporation)

David Lesyna (Optivus Technology)

Bob Varney (Teradyne Corporation)

Mr. Mike Bell (Beckman Coulter)

Dave Bailey (DirecTV)

Antony Selim (Raytheon)

and others

Quality Monitoring: Clinic Advisory Committee

CAC Chair Lukasikviewing a final presentation.

Page 39: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Quality Monitoring: Annual Liaison Survey

Page 40: Harvey Mudd College Computer Science Clinic · 2003-06-24 · Harvey Mudd College Computer Science Clinic HMC Olin Science Center Claremont, California ... Parallel & Real-Time Computation

Unsolicited Sponsor Assessment Letter

“I've received the final report and read it this morning. I believe the clinic team has done a most wonderful job. The first problem that was tackled, finding a good VHDL compiler for asynchronous design, turned out to be a lot more work than I had anticipated. I think it is absolutely amazing that the team managed to overcome the problems with finding a good compiler in such a short time, and still carry out most of the (aggressive) goals that were set at the start of the project.

The system that was developed is a very decisive way to deal with compiler problems indeed, and that system by itself would have made for a great clinic end result. I think it puts some very expensive academic and industry VHDL development effort to shame, by achieving higher functionality and correctness rather than tons of whistles and bells on a faulty core.

I am also very impressed with the mechanized proof that deadlock is avoided in the MIPS decomposition. I see this as a major achievement. I know that the underlying theory is difficult to communicate, and yet the team understood it so well they could turn it into a tool. I also appreciate the completeness of that effort. My challenge to the team had been to verify some transformations, and I had certainly not anticipated to see the complete decomposition analyzed. If you look a little in the formal methods and mechanized proof literature, you will see that this work is on the cutting edge!

Finally, the visualization tool very nicely ties the whole thing together. Adding concurrency and knowing that you have not sacrificed correctness is one thing, but convincing yourself that the added concurrency gives added performance is another, and a visualization tool is a great way to give insight into what has been achieved, or where the bottlenecks are.”