SPECIALIST PROGRAM IN COMPUTER SCIENCE - Artificial Intelligence and Machine Learning Stream (SCIENCE) - SCSPE0815

Supervisor of Studies: R. Pancer, richard.pancer@utoronto.ca

Program Objectives

This program provides a working knowledge of the foundations of computer science: modern computer software and hardware, theoretical aspects of computer science, and relevant areas of mathematics and statistics. It also imparts an appreciation of the discipline's transformative impact on science and society. The program prepares students for further study and for careers in the computing industry. It comprises five streams with different emphases:

The Artificial Intelligence and Machine Learning (AI & ML) Stream offers broad and balanced exposure to the discipline, with a strong emphasis on both the theoretical foundations and practical techniques that enable modern AI technologies. Not only can this stream prepare students for graduate- level studies in AI and ML, it equips them with essential skills to excel in a wide range of industries that increasingly make use of AI and ML.

The structure of the program requirements allows one to easily switch streams until relatively late in the program. Consequently, these streams should not be viewed as rigidly separated channels feeding students to different career paths, but as a flexible structure that provides computer science students guidance in their course selection based on their broad (but possibly fluid) interests.

Enrolment Requirements

Enrolment in the Specialist in Computer Science (all streams) is limited. Students may apply to enter the program after completing 4.0 credits, and must meet the requirements described below:

1. Students already admitted to the UTSC Year 1 Computer Science admissions category:

Required Courses:

Students must have passed the following CSC and MAT courses: CSCA08H3, CSCA48H3, CSCA67H3, MATA22H3, MATA31H3, and MATA37H3.

Required Grades:

Students who meet all of the following requirements will be admitted to a CS Specialist POSt*:

a. A cumulative grade point average (CGPA) of at least 2.5 over the following courses: CSCA48H3, CSCA67H3, MATA22H3, and MATA37H3;
b. A final grade of at least B in CSCA48H3; and
c. A final grade of at least C- in two of the following: CSCA67H3, MATA22H3, and MATA37H3.

*Students must select one stream of the CS Specialist as follows:

a. Students can select either the Comprehensive stream or the Software Engineering stream or the Artificial Intelligence and Machine Learning stream.
b. A limited number of students will be admitted to the Information Systems stream, depending on available space.
c. Admission to the Entrepreneurship stream will be based in part on submission of a Supplementary Application Form (SAF) available on the Department of Computer and Mathematical Sciences website. Applications for admission will be accepted once per academic year, during the April-May POSt admissions round.

2. Students admitted to other UTSC Year 1 admissions categories:

Students who have been admitted to either the UTSC Year 1 Math or UTSC Year 1 Statistics admissions categories are eligible to apply for the Computer Science Specialist POSt. Admission will be based on academic performance in the required A-level courses, identified above. The admission requirements change each year depending on available spaces and the pool of eligible applicants, and students are cautioned that there is no guarantee of admission; as such, students are strongly advised to plan to enroll in backup programs.

Students who have not been admitted to a UTSC Year 1 CMS admissions category (Computer Science, Mathematics, or Statistics) must achieve a final grade of at least A- in both MATA31H3 and CSCA67H3 the first time they complete these courses in order to be eligible to apply for a CS Specialist POSt. This is a strict requirement. Admission will be based on academic performance in the required A-level courses, identified above. The admission requirements change each year depending on available spaces and the pool of eligible applicants, and students are cautioned that there is no guarantee of admission; as such, students are strongly advised to plan to enroll in backup programs.

For more information about the admission requirements, please visit the following CMS webpage.

To remain in the program, a student must maintain a CGPA of 2.0 or higher throughout the program.

Note: Students admitted to the program after second or third year will be required to pay retroactive deregulated program fees.

Program Requirements

The program requirements comprise a core of 17 courses (8.5 credits), common to all streams and additional requirements which depend on the stream, for a total of 27 courses (13.5 credits) for the Artificial Intelligence and Machine Learning, Comprehensive, Software Engineering, and Entrepreneurship streams, and 29 courses (14.5 credits) for the Information Systems stream.

Note: Many Computer Science courses are offered across all three U of T campuses: U of T Scarborough, U of T Mississauga, and the St. George campus. When a course is offered at more than one campus, U of T Scarborough students are expected to take that course at U of T Scarborough. The Department of Computer Science at the St. George campus and the Department of Mathematical and Computational Sciences at U of T Mississauga cannot guarantee space for U of T Scarborough students in their courses.

Core (8.5 credits)

1. Writing Requirement (0.5 credit)*

0.5 credit from the following: ANTA01H3, ANTA02H3, CLAA06H3, (CTLA19H3), CTLA01H3, ENGA10H3, ENGA11H3, ENGB06H3, ENGB07H3, ENGB08H3, ENGB09H3, ENGB17H3, ENGB19H3, ENGB50H3, (ENGB51H3), GGRA02H3, GGRA03H3, GGRB05H3, (GGRB06H3), (HISA01H3), (HLTA01H3), (ACMA01H3), (HUMA01H3), (HUMA11H3), (HUMA17H3), (LGGA99H3), LINA01H3, PHLA10H3, PHLA11H3, WSTA01H3.

*Note: It is recommended that this requirement be satisfied by the end of the second year.

2. A-level courses (3.0 credits)

CSCA08H3 Introduction to Computer Science I
CSCA48H3 Introduction to Computer Science II
CSCA67H3 Discrete Mathematics
MATA22H3 Linear Algebra I for Mathematical Sciences
MATA31H3 Calculus I for Mathematical Sciences
MATA37H3 Calculus II for Mathematical Sciences

3. B-level courses (3.5 credits)

CSCB07H3 Software Design
CSCB09H3 Software Tools and Systems Programming
CSCB36H3 Introduction to the Theory of Computation
CSCB58H3 Computer Organization
CSCB63H3 Design and Analysis of Data Structures
MATB24H3 Linear Algebra II
STAB52H3 Introduction to Probability

4. C-level courses (1.5 credits)

CSCC43H3 Introduction to Databases
CSCC69H3 Operating Systems
CSCC73H3 Algorithm Design and Analysis

Artificial Intelligence and Machine Learning Stream

This stream requires a total of 27 courses (13.5 credits). In addition to the core requirements 1-4 common to all streams, 10 other distinct courses (5.0 credits) must be chosen to satisfy all of the following requirements:

5. Technology, Society, and Ethics course (0.5 credit)

Choose from:
CSCD03H3 Social Impact of Information Technology
PHLB18H3 Ethics of Artificial Intelligence

6. Additional required courses (3.0 credits)

CSCC11H3 Introduction to Machine Learning and Data Mining
CSCC37H3 Introduction to Numerical Algorithms for Computational Mathematics
CSCC63H3 Computability and Computational Complexity
CSCD84H3 Artificial Intelligence
MATB41H3 Techniques of the Calculus of Several Variables I
STAB57H3 An Introduction to Statistics

7. CSC Electives in Computer Systems and Applications (1.0 credit)

At least 0.5 credit from:
CSCC10H3 Human-Computer Interaction
CSCC46H3 Social and Information Networks
CSCC85H3 Fundamentals of Robotics and Automated Systems
CSCD18H3 Computer Graphics
CSCD25H3 Advanced Data Science
CSCD43H3 Database System Technology
CSCD71H3 High Performance Computing
CSC304H1 Algorithmic Game Theory and Mechanism Design
CSC320H1 Introduction to Visual Computing
CSC376H5 Fundamentals of Robotics
CSC401H1 Natural Language Computing
CSC485H1 Computational Linguistics
CSC486H1 Knowledge Representation and Reasoning

Additional 0.5 credits from D-level CSC courses not listed in sections 1-6.

8. Electives from courses in statistics (0.5 credit)

Choose from:

STAC58H3 Statistical Inference
STAC62H3 Probability and Stochastic Processes I
STAC67H3 Regression Analysis
STAD68H3 Advanced Machine Learning and Data Mining
STAD78H3 Machine Learning Theory
STAD80H3 Analysis of Big Data