/ECS170

Materials for ECS170 Artificial Intelligence Spring 2018

Primary LanguageTeX

ECS170 Artificial Intelligence

UC Davis, Computer Science Department, Spring 2018

Syllabus

Basic Information

Instructor

Dr. Joshua A. McCoy, Assistant Professor
Computer Science and Cinema and Digital Media Departments
Email: jamccoy at ucdavis dot edu
Office: 3033 Kemper Hall
Office Hours: Tuesdays 2:00-3:00pm and Fridays 10:00-11:00am
http://joshmccoy.com
https://faculty.engineering.ucdavis.edu/mccoy/
https://www.twitter.com/deftjams
https://www.twitch.tv/deftjamz

Teaching Assistants

Dian Yu

diayu at ucdavis dot edu
Office Hours: Thursdays 7:00 - 8:00 PM at Kemper 53

Ayush Jain

jain at ucdavis dot edu
Office hours: Tuesdays 1:00 - 2:00 PM at Kemper 3052

Course

Lecture Meeting Time: Mondays, Wednesdays, and Fridays at 9:00-9:50 am in Wellman 106 Grove 1309
A01 Lab: Mondays at 12:10-1:00 pm in Olson 158
A02 Lab: Thursdays at 3:10-4:00 pm in Wellman 212
Final Examination Period: June 12th at 1:00 pm

Course Description

This course is a elucidation of the theory, techniques and design in the field of artificial intelligence (AI). The course is framed around the major subfields of AI. As the scope of the area is larger than can fit into a single course, the detail covered over topics in this course will weave between conceptual and concrete. AI systems and techniques used in game AI will be be a focus in the course and will be used to frame lectures and motivate examples.

As this is an advanced course in computer science, the work and reading loads will be appropriately advanced and difficult for those students who are newer to the field. Reading in advance of the lectures and leveraging office hours and the provided course communication tools are highly recommended.

Learning Outcomes

  • Learn to critically engage challenges with computational thinking via concepts in the area of artificial intelligence.
  • Technical and design competency AI techniques.
  • Express computational solutions to challenges via the use of and implementation of AI techniques.
  • Increase competency with software design while engaging in good programming practices.
  • Engage the with history and current state of artificial intelligence.

Schedule

Topic Weeks Reading and Assignments Lab Project
Introduction
History
Overview
1 Russell and Norvig Chapters 1 and 2
The Knowledge Level by Newell
Discussion
Introduction to Project
Search
Pathplanning
Adversarial
2-3 Russell and Norvig Chapters 3, 4, and 5
Jump Point Search with Goal Bounding by Rabin
Introduction to Monte Carlo Tree Search
Introduction to RTS games and StarCraft 2
Project Proposals
Team Formation
Learning
Statistics-based
Evolutionary
Reinforcement
4-5 Russell and Norvig Chapter 18 Project Proposals Due
Team Formation Complete
Group Work Begins
Knowledge Representation
Ontologies
6 Project Workshop
Constraint Satisfaction
Procedural Generation
Grammars
6 Project Workshop
Logic
Propositional
First-order
Expert Systems
Rules-based Systems
7 Russell and Norvig Chapters 7, 8, and 9 Project Check-in Reports
Planning
Generative
Reactive
8 Russell and Norvig Chapters 10 and 11 Project Workshop
Probabalistic Reasoning
Graphical Models
Bayesian Networks
9 Project Demos
AI for Games
Decision-making
Behavior Trees
GOAP
The Horizon
9-10 Project Demos

Due Dates

Texts and Resources

Grading

Your performance in this course will be assessed in 5 areas with the following weights on a 100 point scale:

Area Points
Quizzes and Homework 40
Project 30
Examination 30

Grade Scale

Grade Point Threshold
A 95
A- 90
B+ 87
B 84
B- 80
C+ 77
C 74
C- 70
D+ 67
D 64
D- 60
F 0

Quizzes and Homework

There will be a quiz and a homework for each major topic in the course and will comprise the largest portion of your grade. Each quiz will be weighted equally with respect to your quiz and homework total score. Quizzes will be taken in either lecture or lab meetings and will be announced ahead of time. All students are required to complete the homework assignments. Homework will not be graded but valid attempts must be made on each question. If the homework is missing or incomplete, the score of the related quiz may be penalized. Homework will be submitted via GradeScope.

It is important to be exposed to code of professional quality as often as possible. To achieve this exposure, some homework will require reading and interpreting complex codebases. As you are students studying computer science, there is no shame not being able to completely interpret complex programs. Please seek help from the TAs, the instructor, and your peers if there are parts of these codebases you do not understand. Take solace in the fact that most of the class will struggle with these interpretations.

Project

This course features quarter-long group project featuring the intersection of StarCraft II and the artificial intelligence techniques discussed in class.

Project Deliverables Point Allocation
Project proposal 20
Code tour of Solution 30
Individual weekly development logs 20
Project report 15
Website containing all deliverables 10
Confidential peer assessment 5

sample outline presentation criteria advice for a good project

  • meet often
  • get started early
  • communicate about difficulties
  • commit code often / use version control (github recommended)

Examination

There will be one comprehensive examination over the topic areas covered by the course. The examination will take place during one or more lecture meetings and may have a take-home component. The homeworks and quizzes are design to serve as the practice exam as well as assessments.

Extra Credit Opportunities

There will be period extra credit opportunities associated with the contents of the course. Likely extra credit activities are attending talks that prominently feature AI, participating in user studies or play testing sessions, and participating in external activities related to AI such as the potential UC Davis StarCraft 2 AI team. The requirements and amount of extra credit rewarded will depend on the specifics of each opportunity.

Course Community and Resources

This course will make use of several external online resources. The UC Davis Code of Academic Conduct applies to your interactions on these resources.

GitHub

The official course material and syllabus are on GitHub: https://github.com/dr-jam/ECS170

Canvas

After coursework is assessed, grades will be placed on Canvas. This service may also be used for selective assessment purposes.

Piazza

Piazza will be used for discussion outside of lectures, labs, and office hours. After signing up, you can access the Piazza instance for this course here:
https://piazza.com/uc_davis/spring2018/ecs170/home

Use the following information to join:

GradeScope

GradeScope is where you will submit your homework in PDF format. Use the following:

UC Davis Code of Academic Conduct

The UC Davis Code of Academic Conduct (http://sja.ucdavis.edu/files/cac.pdf) will be strictly enforced in this class. In particular, plagiarism, academic dishonesty, and cheating will be dealt with severely. Any breach of the Code of Academic conduct can result in failing the assignment, failing the course, and displinary action via the Office of Student Support and Judicial Affairs (http://sja.ucdavis.edu/).

Technology in the Classroom Policy

The use of laptops and technology in general are encouraged in this course as long as they are not disruptive to the rest of the class. If you choose to use a device with a screen, please sit in the back of the room to avoid distracting your fellow students. You are required to ask for permission before video or audio recording in the classroom. In general, students will be treated as adults capable of managing their technological lives while being respectful of others in the classroom.

Social Media Policy

Students are not permitted to make visual or audio recordings, including live streaming, of classroom lectures or any class related content, using any type of recording devices (e.g., smart phone, computer, digital recorder, etc.) unless prior permission from the instructor is obtained, and there are no objections from any of the students in the class. If permission is granted, personal use and sharing of recordings and any electronic copies of course materials (e.g., PowerPoints, formulas, lecture notes and any classroom discussions online or otherwise) is limited to the personal use of students registered in the course and for educational purposes only, even after the end of the course.

To supplement the classroom experience, lectures may be audio or video recorded by faculty and made available to students registered for this class. Faculty may record classroom lectures or discussions for pedagogical use, future student reference, or to meet the accommodation needs of students with a documented disability. These recordings are limited to personal use and may not be distributed (fileshare), sold, or posted on social media outlets without the written permission of faculty.

Unauthorized downloading, file sharing, distribution of any part of a recorded lecture or course materials. or using information for purpose other than the student's own learning is prohibited unless prior authorization is given by the instructor.