CIS Homeline
   
Programs
 

Doctoral
MSE
CGGT
MCIT
Robotics
Embedded Systems

Research
  Seminars and colloquia
People
  Faculty
Staff
Students
Courses
 

Descriptions and prerequisites
Time and room roster
Penn in Touch
Written Preliminary Exam I

 

Fall Course Schedule
Spring Course Schedule
Summer Course Schedule

Application
  Procedures and forms
Funding
Costs
Graduate handbook
Administrative resources
Other resources
  For women
For international students
English language courses
Recent graduates
Penn and Philadelphia
General Resources
arrow Employment

 

CIS Home divider Penn Engineering divider PENN   spacer
 

 
  Department of Computer & Information Science Spring 2013 Graduate Course Schedule Course  

COURSE

TITLE

INSTRUCTOR

DAYS/TIME

LOCATIONS

CIS 500/001

Software Foundations Pierce MW 3-4:30 TBA

CIS 505/001

Software Systems

Blaze TR 1:30-3

TBA

CIS 511/001

Theory of Computation Gallier TR noon-1:30

TBA

CIS 518/401 Introduction to Logic & Computability Towsner TR noon-1:30

TBA

CIS 521/001 Fundamentals of AI Marcus TR 10:30-noon TBA
CIS 535/401 Introduction to Bioinformatics Master MW 10-11

TBA

CIS 535/402

Introduction to Bioinformatics Lab

Master F 2-3

TBA

CIS 537/401 Biomedical Image Analysis Yushkevich MW 3-4:30 TBA
CIS 540/001 Principles of Embedded Computation Alur MW 10:30-noon TBA
CIS 540/201

Principles of Embedded Computation Recitation

Alur F noon-1 TBA
CIS 542/001 Embedded Systems Programming Pajic TR 4:30-6

TBA

CIS 551/401 Computer & Network Security

Smith

MW 1:30-3 TBA
CIS 553/401 Networked Systems

Loo

MW noon-1:30 TBA
CIS 555/401

Internet & Web Systems

Haeberlen MW 10:30-noon

TBA

CIS 563/001

Physically Based Animation

Kavan MW 1:30-3 TBA
CIS 564/001 Game Design & Development Lane MW 3-4:30 TBA
CIS 580/001

Machine Perception

First class meeting 1/14

Daniilidis MW 10:30-noon TBA
CIS 597/tbd

Master's Student Thesis Research

TBD TBD n/a
CIS 599/tbd Master's Student Independent Study TBD TBD n/a
CIS 630/301

Advanced Topics in Natural Language Processing

Nenkova MW 3-4:30 TBA
CIS 660/301 Advanced Topics in Computer Graphics & Animation Lane MW 10:30-noon TBA
CIS 677/001 Advanced Topics in Algorithms & Complexity Guha TR 4:30-6 TBA
CIS 700/001 Special Topic: Programming & Problem Solving Murphy TR 4:30-6 TBA
CIS 700/002 Special Topic: No Regrets in Game Theory & Learning Roth & Kearns F noon-3 TBA

CIS 800/001

Doctoral Special Topic Lee W noon-3 TBA
CIS 800/002

Doctoral Special Topic: Graphics Reading Group

This course is for .5 credit

Badler R 10:30-noon SIG Center
CIS 800/003 Doctoral Special Topic Devietti MW 1:30-3 TBA
CIS 800/004 Doctoral Special Topic: Advanced Rendering Badler TBD SIG Center
CIS 800/005 Doctoral Special Topic: Verified Programming Cohen TR 10:30-noon TBA
CIS 895/001 Teaching Practicum Credit TBD TBD n/a
CIS 899/tbd Doctoral Student Independent Study TBD TBD n/a
CIS 999/tbd Doctoral Student Thesis/Dissertation Research TBD TBD n/a
CIS 995/001 Dissertation TBD TBD n/a
CIT 590/001

Programming Languages & Techniques

For non-MCIT students

Matuszek TR 4:30-6 TBA
CIT 590/201

Programming Languages & Techniques Recitation

Matuszek

F 1:30-3 TBA
CIT 594/001 Programming Languages & Techniques II Matuszek TR 4:30-6 TBA
CIT 595/001 Digital Systems Organization & Design Mongan MW 1:30-3 TBA
CIT 595/201

Digital Systems Organization & Design Recitation

Mongan R 1:30-3

Moore 207 Lab

CIT 596/001 Theory of Computation Phillips TR 1:30-3 TBA
CIT 596/201

Theory of Computation Recitation

Phillips F 11-noon TBA

CIS Core Courses

CIT Core Courses

Non CIS, MCIT, EMBS, CGGT, & Robo students who wish to be placed on the waiting list for CIS & CIT courses should complete the information at www.cis.upenn.edu/grad/waitlist.shtml

Non CIS, MCIT, EMBS, CGGT, & Robo students may register for CIT 590/Programming Languages & Techniques directly.

CIS 599 Master's Independent Study & CIS 597 Master's Thesis Research section numbers
CIS 599 & CIS 597 Approval Form
CIS 899 Doctoral Independent Study & CIS 999 Doctoral Thesis Research section numbers
CIS 899 & CIS 999 Approval Form
Course registration instruction/procedures    www.cis.upenn.edu/grad/registration2.shtml
Approved non-CIS graduate courses             www.cis.upenn.edu/grad/approved-courses.shtml
Information about classroom/buildings          www.isc-cts.upenn.edu/Finder/findermain.asp
All course listings, schedules                          www.upenn.edu/registrar
Payment Information
Estimated tuition/fees                                     www.cis.upenn.edu/grad/costs2.shtml
Student Financial Services                             www.upenn.edu/sfs/
Billing information & billing schedule              www.sfs.upenn.edu/billing/index.htm
The University begins billing shortly after registration and late fees may be incurred.
 
SPRING 2013 CALENDAR
Wednesday, January 9 Classes begin.
Monday, January 21 Martin Luther King Jr. Day, no classes
Monday, January 28

LAST DAY TO DROP CLASSES

Last day to add classes.

Saturday, March 2 through Sunday, March 10 Spring break.
Tuesday, April 23 Classes end.
Wednesday, April 24 through Friday, April 26 Reading days.
Monday, April 29 through Tuesday, May 7 Finals
SEAS graduate commencement info - www.seas.upenn.edu/commencement/
University commencement info - www.upenn.edu/commencement/
University Academic Calendar www.upenn.edu/almanac/3yearcal.pdf
NOTES

CIS 700: Programming & Problem Solving
--------------------------------------
This spring I will be offering a CIS 700 Special Topics course called "Programming & Problem Solving". Based on popular courses at Stanford and Columbia, this is probably unlike any CS course you've taken before. There are no lectures, no reading assignments, and no exams. Rather, you will work in groups to solve open-ended programming projects (including machine learning, simulation, optimization, etc.) for which there are no "correct" answers, and then discuss and analyze your solutions with the rest of the class. The goal is to develop problem solving skills using techniques that you have learned during your CS training, and to learn how to effectively analyze and communicate your solutions.

To get an idea about the types of projects we'll be working on, take a look at http://www.seas.upenn.edu/~cdmurphy/cis700/projects/sample-explorandum.pdf

Because of the nature of the course, enrollment will be strictly limited to 20 students, and all interested students must attend the first class meeting (currently scheduled for Thursday, Jan 10 at 4:30pm, location TBA) and then apply to be registered. Students will not be registered before the first class meeting.

For more information about the course, visit http://www.seas.upenn.edu/~cdmurphy/cis700/ or email me directly (cdmurphy@cis.upenn.edu).

Chris Murphy

CIS 800 (Special Topics, Spring 2013) "Advanced Rendering"

Norm Badler
Credit: 1, seminar course
Course Motivation
Global illumination (GI) algorithms in computer graphics have existed for decades, but only recently are techniques which capture direct and indirect illumination becoming computationally tractable in modern graphics. There is currently no course at the University of Pennsylvania which examines this subject deeply, in spite of its growing prominence in the industry and research fields of computer graphics.


From Summer 2010 through Spring 2012, an average of 4 students a year have pursued GI through the topics of advanced ray tracing or path tracing as independent study projects. Advised by Joe Kider, they have been very successful, and their projects have been instrumental towards getting positions at top tier companies in the computer graphics industry such as Pixar and Lucasarts. As a course offering for terminal masters degree students in the Computer Graphics and Game Technology program or advanced undergraduates in the Digital Media Design program, this seminar would be of significant academic and professional value.


Most recently, some undergraduates have independently implemented physically-based renderers based on the path tracing technique, and have considerable expertise on a variety of topics associated with the engineering of this technique. Currently, the topic of GI will be touched on in the course CIS 565 in the Fall 2012 term, but it will not be explored to the same level of depth that this course will. Ultimately, the Spring 2013 term of this course aims to leverage the knowledge of recent successes in this study to other students and establish a knowledge foundation for similar courses in state-of-the-art computer graphics rendering.


Course Description
The course is designed to give students in-depth knowledge on high-quality rendering techniques such as unbiased path tracing, bidirectional subsurface reflectance distributions, and high dynamic range tone mapping. Students will implement their own path tracing renderer from the ground up, and will learn
the theory and engineering of the current state of the art in physically accurate rendering. A functional renderer will be completed by the students in the first half of the term, which they will continue to refine and add features, of their selection, to over the course of the term.

Course Objectives:
Upon completion of this course students will be able to:
- implement a physically-based renderer
- understand and make use of mathematical and computational models of light and materials
- critically evaluate and discuss historical and current topics in photorealistic rendering

Course Format
The class will meet twice a week for 1.5 hours each. The course will be seminar-style, additionally including weekly prescribed programming assignments that are later replaced with weekly progress reports. During these progress reports, students are expected to present the state of their renderer and
the features they are currently working on to the rest of the class. Grading will be based on seminar presentations/participation, correct implementation of the prescribed assignments, and completion of individually selected features.


Prerequisites
Students are expected to have completed CIS 460/560, or an equivalent, and a solid foundation in C++ programming.


Required Reading: The class readings are selected from historical papers on rendering and current publications in the field. Most of the papers are freely available online, and students will be encouraged to explore the literature as they identify particular features to implement in their renderer.

Recommended Texts
Pharr, Matt, and Greg Humphreys.Physically based rendering: From theory to implementation 2nd
edition. Morgan Kaufmann, 2010.

Course Topics
Introduction to Rendering
Ray Tracing Review
- the camera in 3D space
- ray casting
- ray tracing algorithm
Light and Lighting
- behaviour and characteristics of visible light
- perception of light and its interactions with objects
Path Tracing Algorithm
- illuminance and the rendering equation
- russian roulette and monte carlo methods
- forward tracing and backwards tracing
- metropolis light transport
Acceleration Structures
- bounding volume hierarchies
- k-d trees
Material Properties
- BRDFs
- BTDFs
Signal Sampling and Anti-Aliasing Techniques
- tone mapping high dynamic range lighting
GPU-Accelerated Path Tracing
- overview of technique
- adaptation of CPU function to parallel kernel
- WebGL
Overview of Biased Techniques
-Photon Mapping
-Adaptations to bring biased techniques closer to unbiased (ex: progressive photon mapping)

Person(s) Preparing Description:
Dr. Norman Badler (badler@seas.upenn.edu)
Gabriel Leung (lgabriel@seas.upenn.edu)
Tiantian Liu (liutiant@seas.upenn.edu)

 

Questions? Mike Felker mfelker@cis.upenn.edu


 
 
CIS Home divider Penn Engineering divider PENN   spacer