This class is an introduction to fundamental concepts in image understanding, the sub-discipline of artificial intelligence that tries to make the computers "see". It will survey a variety of interesting vision problems and techniques. Specifically, the course will cover image formation, features, object and scene recognition and learning, multi-view geometry and video processing. It will also feature recognition with RGB-D data. The goal of the class will be to grasp a number of computer vision problems and understand basic approaches to tackle them for real-world applications.
A rigorous introduction to the theory of cryptography from the perspective of computational complexity. The relationship of cryptography to the "P=NP" question. As time permits, topics will be chosen from: (i) definitions of different kinds of pseudorandom generators, relationships between them, and ways of constructing them; (ii) secure sessions using shared private key cryptography and public key cryptography; (iii) signature schemes.
Investigation of digital devices that contain evidence, including mobile and handheld devices. Topics include the analysis of memory dumps, event logs, and application caches using existing digital forensic tools as well as the development of new tools to uncover evidence and to work around the use of anti-forensics. Tools and investigations must be clearly documented, so this course contains a significant writing component.
Network attacks and defenses, operating system vulnerabilities, application security (e-mail, Web, databases), viruses, spyware, social engineering attacks, privacy and digital rights management. The course will cover both attack techniques and defense mechanisms.
Understanding human behaviour as it applies to user interfaces: work activity analysis, observational techniques, questionnaire administration and unobtrusive measures. Operating parameters of the human cognitive system, task analysis and cognitive modelling techniques and their application to designing interfaces. Interface representations and prototyping tools. Cognitive walkthroughs, usability studies and verbal protocol analysis. Case studies of specific user interfaces.
Computer networks with an emphasis on systems programming of real networks and applications. Computer network architectures, protocol layers, network programming, and performance analysis. Transmission media, encoding systems, switching, multiple access arbitration. Network routing, congestion control, flow control. Transport protocols, real-time, multicast, social networks.
An in-depth exploration of the major components of operating systems with an emphasis on the techniques, algorithms, and structures used to implement these components in modern systems. Project-based study of process management, scheduling, memory management, file systems, and networking is used to build insight into the intricacies of a large concurrent system.
An introduction to continuum robots. Topics include continuum robot design; mechanisms and actuation; kinematic modeling; motion planning and control; and sensing. Topics covered in the lecture will be implemented and explored in a practical environment using continuum robots.
An introduction to mobile robotic systems from a computational, as opposed to an electromechanical, perspective. Definitional problems in robotics and their solutions both in practice and by the research community. Topics include algorithms, probabilistic reasoning and modeling, optimization, inference mechanisms, and behavior strategies.
This course focuses on perception algorithms for robotics applications and sensors. The aim is to provide an understanding of the challenges encountered when deploying perception algorithms on a robot and introduce some of the tools and algorithms typically used to address these challenges. The algorithms will also be implemented and evaluated using real-world data from common use-cases.
Enabling safe and interactive robotic autonomy requires broad technical capabilities for perception, decision-making, and control. Building such capabilities involves numerous complex design decisions and algorithmic challenges. Following upon a first exposure to robotics, this course will provide advanced algorithmic and learning based tools for the development and deployment of intelligent robotic systems. It will focus on presenting state estimation, robotic vision, and learning-based planning and control techniques and present these techniques in different robotic application settings.
Compiler organization, compiler writing tools, use of regular expressions, finite automata and content-free grammars, scanning and parsing, runtime organization, semantic analysis, implementing the runtime model, storage allocation, code generation.
This course gives students experience solving a substantial problem that may span several areas of Computer Science. Students will define the scope of the problem, develop a solution plan, produce a working implementation, and present their work using written, oral and (if suitable) video reports. Class time will focus on the project, but may include some lectures. The class will be small and highly interactive. Topics, themes and required preparation will vary by instructor.
This course involves a significant implementation project in any area of Computer Science. The project may be undertaken individually or in small groups. The project is offered by arrangement with a Computer Science faculty member.
This course involves a significant literature search and expository work in any area of Computer Science. This work must be undertaken individually. It is offered by arrangement with a Computer Science faculty member.
Introduction to a topic of current interest in robotics intended Information Security specialists, CSC majors and specialists. Content will vary from year to year but will always maintain a robotics focus. The contact hours for this course may vary in terms of contact type (L, T, P) from year to year, but will be between 24-48 contact hours in total. See the UTM Timetable.
Introduction to a topic of current interest in robotics intended for CSC majors and specialists. Content will vary from year to year but will always maintain a robotics focus. The contact hours for this course may vary in terms of contact type (L, T, P) from year to year, but will be between 24-48 contact hours in total. See the UTM Timetable.
Introduction to a topic of current interest in computer science intended for CSC majors and specialists. Content will vary from year to year. This course may include a practical or tutorial component, depending on the topic chosen for the year. The contact hours for this course may vary in terms of contact type (L, T, P) from year to year, but will be between 24-48 contact hours in total. See the UTM Timetable.
Introduction to a topic of current interest in computer science intended for CSC majors and specialists. Content will vary from year to year. This course may include a practical or tutorial component, depending on the topic chosen for the year. The contact hours for this course may vary in terms of contact type (L, T, P) from year to year, but will be between 24-48 contact hours in total. See the UTM Timetable.
This course provides a richly rewarding opportunity for students in their third or fourth year to work in the research project of a professor in return for 499H course credit. Students enrolled have an opportunity to become involved in original research, learn research methods and share in the excitement and discovery of acquiring new knowledge. Participating faculty members post their project descriptions for the following summer and fall/winter sessions in early February and students are invited to apply in early March. See Research Opportunity Program (ROP) for more details.
This course provides a richly rewarding opportunity for students in their third or fourth year to work in the research project of a professor in return for 499Y course credit. Students enrolled have an opportunity to become involved in original research, learn research methods and share in the excitement and discovery of acquiring new knowledge. Participating faculty members post their project descriptions for the following summer and fall/winter sessions in early February and students are invited to apply in early March. See Research Opportunity Program (ROP) for more details.
An introductory survey of the forms and history of world drama from the classical period to the nineteenth century in its performance context. May include later works influenced by historical forms and one or more plays in the Theatre Erindale schedule of production. May include a research performance component. This course is also listed as ENG121H5.
An introductory survey of the forms and history of world drama from the late nineteenth century to the present in its performance context. May include film adaptations and one or more plays in the Theatre Erindale schedule of productions. May include a research performance component. This course is also listed as ENG122H5.
A survey of the history of theatre in Canada, with particular emphasis on developments since the mid-twentieth century.
A practical introduction to the art and craft of performance, intended for students with little or no previous experience or training. The course uses a range of acting exercises to teach critical thinking, active listening, specificity of action, intention of thought, and team building. Students will engage in text analysis, collective creation, storytelling, physical and vocal exercises, and character development, in the process cultivating skills transferable to their chosen career path. This course is ideally suited for any student seeking to enhance their interpersonal and presentation skills.
In this course, students with some experience of acting (as acquired in DRE201H5) will learn to deepen their empathetic engagement with the world around them, using theatre as a catalyst. Students will develop essential skills such as critical thinking, active listening, specificity of action and intention of thought through scene study and will practice more advanced techniques of script analysis, character development, and monologue work. The course is designed to hone transferrable skills and is ideally suited for any student seeking to enhance their interpersonal and presentation skills. Not open to students in the Theatre and Drama Studies specialist (TDS). Note: additional rehearsal hours may be required beyond scheduled course sessions.
A study of about twelve plays by Shakespeare, representing the different periods of his career and the different genres he worked in (comedy, history, tragedy). Such plays as: Romeo and Juliet; A Midsummer Night's Dream; Richard II; Henry IV, parts I and II; Henry V; Twelfth Night; Measure for Measure; Hamlet; King Lear; Antony and Cleopatra; The Tempest. The course provides an in-depth theatre-historical and practical introduction to Shakespeare's work and gives students the opportunity to engage with a wide range of approaches to the staging of his plays.
An introduction to the techniques of dramaturgical analysis, through the study of a range of texts to which students might be exposed as theatre practitioners and audience members. Focus will be on the relationship between the performance event and its associated written text. Examples will emphasize modern and contemporary drama, as well as a range of styles, and will include one or more Theatre Erindale productions, and other appropriate productions, as well as a practical workshop component.
This course introduces students to Shakespeare’s plays as works of theatre. We will study the spaces and performance practices for which these texts were originally written and explore how subsequent generations of theatre makers approached, adapted, and repurposed them for different performance venues and styles, and from different aesthetic, cultural, and political perspectives, from the seventeenth century to our own time, in Britain, North America, and beyond the English-speaking world. The course will include screenings of select landmark productions.
This course introduces students to Shakespeare. Lectures equip them with historical knowledge about literature, politics, and the theatre in Shakespeare's time. Tutorials help them to grapple with Shakespeare's language, versification, and stagecraft. By the end of the course students will have a new framework within which to understand - and interrogate - the enduring power of Shakespeare's work.