| FAS - Computer ScienceThe department offers programs of graduate study leading to the Master of Science and Doctor of Philosophy degrees in Computer Science. The MS program, with thesis or non-thesis options, has two specialized areas of concentration available: Software Engineering and Artificial Intelligence. Contact Information
									Department Chair: Rami Melham
									Main Office: 322 Eberly Hall
									Phone: (412) 624-8493
									Fax: (412) 624-8854
									E-mail: melham@cs.pitt.edu
									Web site: http://www.cs.pitt.edu/
								 ResearchThe Department of Computer Science faculty research areas encompass a broad range of computer science specialties in four general areas and include a wide variety of applications. The research areas and respective topical interests include: 
									Algorithms and theoretical foundations: computational complexity, design and analysis of algorithms, distributed algorithms, online algorithms, theory of learning algorithms, and probabilistic algorithms
									Parallel and distributed systems: computer architectures, computer networks, database systems, distributed systems, fault tolerance, fine-grained systems, image processing, modeling and simulation, operating systems, optical computing, parallel computation, parallelizing compilers, performance evaluation, real-time systems, scientific computation, VLSI CAD, and VLSI processor arrays
									Software systems and interfaces: design of programming languages, software development environments, software engineering techniques, specification and verification, debugging and testing, user interface software technology, computer graphics techniques, multimedia interfaces, and visual languages
									Artificial intelligence: cognitive modeling of learning, computational biology, expert systems, explanation, intelligent tutoring systems, machine learning, natural language processing, and planning
								 FacilitiesStudents and faculty in the Department of Computer Science access computing facilities in a distributed network environment. The network interconnects nearly 300 systems, workstations, and other devices and supports a wide variety of architectures and platforms. Multiple servers provide file, computer, software, and print facilities. Optical fiber-based Ethernet links tie the department to the campus backbone, PITTNET, which is based on dual 100 Mbps FDDI rings. PITTNET provides such Ethernet links to all University facilities and also to the Pittsburgh Supercomputer Center. Systems housed at the PSC include a Cray C90, a Cray T3E, and a Digital AlphaCluster. The University of Pittsburgh and other universities in Pennsylvania are linked to the Internet by means of several network service providers. Interdisciplinary ProgramsThe Department of Computer Science is a participant in a number of interdisciplinary programs. Besides offering a dual MS degree in Computer Science and Mathematics, Department of Computer Science faculty are very actively involved in the Intelligent Systems Program, the Keck Center for Advanced Training in Computational Biology, the Computer Engineering Program (with the School of Engineering), and the Telecommunications Program (with the School of Information Sciences). AdmissionsTo be considered for admission to graduate study in the Department of Computer Science, a student must have received a bachelor's degree with at least a B average from an accredited college or university. Those who have been working professionally in the computer field may be given special consideration. However, the professional computer scientist must be knowledgeable in a number of areas besides programming. Thus, the applicant whose enthusiasm for programming has led to the acquisition of considerable programming skill at the expense of satisfactory academic achievement is generally not regarded favorably. Students are required to submit general GRE scores. The advanced GRE score in computer science is recommended. For foreign students, the TOEFL score is also required; a minimum score of 550 is required for admission. Prerequisites for Graduate StudyTo be admitted to full graduate status, an applicant should minimally have completed the following courses or their equivalents. 
									In computer science, a total of at least six courses.
									
										1. All of the following core courses:
										
											a. Discrete Structures (CS 0441)
											b. Information or Data Structures (CS 0445)
											c. Computer Organization/Assembly Language (CS 0447)
										2. One in each of the following advanced course categories:
										
											a. Theory of Computer Science (CS 1510 or CS 1511)
											b. Programming Languages Design (CS 1520 or CS 1621)
											c. Systems Software (CS 1550 or CS 1651)
										In mathematics, a total of at least five courses.
									
										1. Three calculus courses (MATH 0220, 0230, 0240)
										2. One course in linear algebra (preferably MATH 1180 or 0280)
										3. One course in probability and statistics that explicitly requires calculus as a prerequisite (STAT 1151 or 1152)
									 Part-time graduate students are welcome, but the Department of Computer Science cannot guarantee that a degree can be earned solely through attendance in late afternoons and evenings. Financial AssistanceA number of financial aid opportunities are available on a competitive basis. Many of these positions are teaching assistantships or fellowships requiring approximately 20 hours of work per week in conjunction with the department's curriculum. A foreign student needs a TOEFL score of at least 600 in order to be considered for a teaching assistantship or fellowship. Because of substantial amounts of research funding awarded to Department of Computer Science faculty, they also offer a number of graduate research assistantships. Other opportunities, such as special fellowships, occur with varying frequency. Financial need should be indicated on the application form. The Department of Computer Science is anxious to provide assistance whenever warranted and possible, but the applicant must be eligible for full graduate status in order to be considered for an assistantship or fellowship. Each such appointment is normally supplemented with a scholarship to cover tuition and individual medical insurance. Degree RequirementsThe minimal requirements established by the Graduate Faculty of the University, as described under General Academic Regulations, and any additional requirements of FAS Graduate Studies described under FAS Degree Requirements, should be read in conjunction with department-specific degree requirements described in the following sections. Requirements for the Master's DegreeThe MS program has been designed to attract students with a broad spectrum of interests who may have specialized in any of a wide variety of disciplines as undergraduates. The requirements for the Master of Science degree in Computer Science are: Completion of the following courses:
									1. Three required courses:
									
										a. CS 1510 or CS 15111
										b. CS 2410 or CS 2510
										c. CS 2210 or CS 2710
									2. Five elective, graduate-level courses in CS
									3. Either:
									
										a. A six-credit (minimum) MS thesis (CS 2000), or
										b. A three-credit MS project (CS 2910) and one additional course
										 
										1If an MS student has already taken CS 1510 or CS 1511 or an equivalent course prior to enrollment, and received a B or better, then the student must either take the other course or one of CS 2110 or CS 2150. If a student has already taken both CS 1510 and CS 1511 or equivalent courses prior to enrollment, and received a B or better, then the student must take one of CS 2110 or CS 2150.
									 Thesis/project requirement:This satisfies the FAS comprehensive examination requirement. 
									For the thesis option, a written thesis is required, with a final oral examination conducted by the faculty advisor and a thesis committee.
									For the non-thesis option, a project report must be produced and defended before the faculty advisor.
								 General requirements include:
									All courses except project or thesis must be taken for a letter grade.
									The student must receive a grade of C or better for each course, and must maintain an overall average of B or better.
									Other requirements, options, and procedures are detailed in the department's current Regulations for Graduate Study.
								 Specialized Master of Science TracksThe Department of Computer Science currently offers two specialized MS Areas of Concentration: one in Artificial Intelligence and one in Software Engineering. The decision to choose one of these areas of concentration can be made after admission to the MS program. Successful completion of the requirements for these areas of concentration results in a transcript that reads "Master of Science in Computer Science/Area of Concentration: Artificial Intelligence" (or "Software Engineering"). All the requirements for the traditional MS described above must be completed for the specialized tracks. There are special, additional requirements in the elective course selections. Students interested in either specialization should consult the department's Graduate Secretary at (412) 624-8495 and/or the faculty member designated as currently responsible for the track. Requirements for the PhD DegreeThe program has been designed with both structure and flexibility in mind. The structure assures the quality of the program and establishes checkpoints that serve to inform both student and faculty of progress being made. The flexibility of the program is necessary to accommodate individual student differences and aspirations. The program consists of three basic parts: the course-requirement block as specified below, an individually tailored block of student-elected courses and seminars, and a research block. The requirements for the Doctor of Philosophy degree in Computer Science are: Completion of the following courses:
									CS 2110, CS 2150, CS 2210, CS 2410, CS 2510, and CS 2710. These six courses represent the core areas and are required.
									Any additional six graduate (2000-level or higher) courses, including at least two at the 3000 level. None of these six courses can be independent studies, directed research, or thesis or dissertation research.
								 NOTE: All courses must be taken for a letter grade. The student must receive a grade of B or better in each of the core courses, and a grade of C or better in each of the six additional courses. In addition, he or she must maintain an average of B or better. Only 2000- or 3000-level courses are acceptable; 1000-level courses and below do not count toward the PhD degree. PhD Preliminary Examinations:These are designed to determine that a student in the PhD program has the breadth of knowledge to undertake independent research in computer science. The student is expected to: 
									Take at least one core-area exam per year starting in the third term of full-status registration.
									Pass four out of the six core area exams within three years after full-status registration. A student may attempt each area exam twice.
								 Comprehensive Examinations:After completing most of the additional courses and seminars comprising the remainder of the program and after selecting a dissertation topic, the student must pass both an oral comprehensive examination and an examination of his/her dissertation proposal. The purpose of the comprehensive examination is to determine that a student has sufficient depth of knowledge in a specialized area of computer science to undertake dissertation research on a topic in that area. The purpose of the dissertation proposal presentation and examination is for the student's Faculty Committee to (a) judge the dissertation topic and the student's preparedness for it, and (b) give substantive feedback to the student on the topic and the methods of research to be used. Normally, the comprehensive examination should be completed within one to two years of passing the preliminary examinations. Residency Requirement:The student is required to spend at least two successive terms in full-time graduate study during the degree program. This residency requirement must be satisfied by the end of the term in which the comprehensive examination is taken. Dissertation:The research block requires that the student perform research and write a dissertation describing an original investigation in the student's area of specialization. An open, oral defense of the dissertation is also required. Course Listings
									CS 1501 Data Structures and Algorithms
									CS 1502 Formal Methods in Computer Science
									CS 1510 Design and Analysis of Algorithms
									CS 1511 Introduction to the Theory of Computation
									CS 1515 Scientific Computation
									CS 1520 Programming Languages
									CS 1530 Software Engineering
									CS 1538 Introduction to Simulation
									CS 1541 Introduction to Computer Architecture
									CS 1550 Introduction to Operating Systems
									CS 1555 Database Management Systems
									CS 1566 Introduction to Computer Graphics
									CS 1571 Introduction to Artificial Intelligence
									CS 1573 Artificial Intelligence Programming
									CS 1590 Social Implications of Computing Technology
									CS 1621 Structure of Programming Languages
									CS 1622 Introduction to Compiler Design
									CS 1631 Software Design Methodology
									CS 1645 Introduction to High Performance Computing
									CS 1651 Advanced Systems Software
									CS 1652 Data Communication and Computer Networks
									CS 1900 Internship
									CS 1950 Directed Study
									CS 2000 Research and Thesis for the Master's Degree
									CS 2110 Theory of Computation
									CS 2150 Design and Analysis of Algorithms
									CS 2210 Compiler Design
									CS 2310 Software Engineering
									CS 2410 Computer Architecture
									CS 2450 Parallel Computing
									CS 2510 Computer Operating Systems
									CS 2520 Wide Area Networks
									CS 2550 Principles of Database Systems
									CS 2610 Interface Design and Evaluation
									CS 2650 Distributed Multi-media Systems
									CS 2710 Foundations of Artificial Intelligence
									CS 2750 Machine Learning and Communication
									CS 2900 Graduate Internship
									CS 2910 MS Project
									CS 2990 Independent Study
									CS 3000 Research and Dissertation for the PhD Degree
									CS 3110 Advanced Topics in Theory of Computation
									CS 3120 Theory of Learning Algorithms
									CS 3150 Advanced Topics in Design and Analysis of Algorithms
									CS 3210 Advanced Topics in Programming Languages
									CS 3220 Compiling Techniques for Parallel Systems
									CS 3230 Advanced Compiler Techniques
									CS 3310 Advanced Topics in Software Engineering
									CS 3320 Specification and Design of Software Systems
									CS 3350 Modeling and Simulation
									CS 3410 Advanced Topics in Computer Architecture
									CS 3420 Fault Tolerant Parallel and Distributed Systems
									CS 3450 Advanced Topics in Parallel Computing
									CS 3510 Advanced Topics in Operating Systems
									CS 3520 Advanced Topics in Computer Networks
									CS 3530 Advanced Topics in Distributed and Real-Time Systems
									CS 3550 Advanced Topics in the Management of Data
									CS 3610 Advanced Topics in Human-Computer Interaction
									CS 3630 Interactive Computer Graphics
									CS 3650 Visual Languages and Programming
									CS 3710 Advanced Topics in Artificial Intelligence
									CS 3720 Advanced Topics in Expert Systems
									CS 3730 Natural Language Processing
									CS 3740 Knowledge Representation
									CS 3750 Advanced Topics in Machine Learning
									CS 3760 Advanced Topics in Computational Rationality
									CS 3790 Pattern Recognition
									CS 3900 PhD Directed Study
								 
 
 |