CSCI 335
Artificial Intelligence

Time

MWF 9:10am - 10:00am

Location

MCREY 314

Instructor

Dr. Gabriel Ferrer
ferrer@hendrix.edu
(501) 450-3879
Office Hours

Overview

An introduction to the design, analysis, implementation, and application of classical and contemporary algorithms in artificial intelligence. Topics include theorem-proving systems, heuristic search, alpha-beta search, metaheuristic optimization, neural networks, and machine learning. Student implement each algorithm, conduct experiments employing their implementation, and write an analysis of the results.

Learning Goals

Upon completing this course, our goal is for you to be able to:

Resources

Optional Resources

Calendar

Date Day Topic/Activity Assigned Due  
8/27 Wed What is Artificial Intelligence? Survey
Project 0: Fun with LLMs
   
8/29 Fri Large Language Models on the Web   Survey
Project 0
 
9/3 Wed Polymorphism in Java      
9/5 Fri Heuristic Search Project 1: Planning in Mazes    
9/8 Mon Heuristic Search      
9/10 Wed Heuristic Search      
9/12 Fri Adversarial Search Project 2: Checkers Project 1  
9/15 Mon Adversarial Search      
9/17 Wed Adversarial Search      
9/19 Fri Logic Programming Project 3: Logic Programming Project 2  
9/22 Mon Logic Programming      
9/24 Wed Logic Programming      
9/26 Fri Philosophy and AI I   Project 3  
9/29 Mon Essay 1      
10/1 Wed Planning Project 4: Coordinating Factory Robots    
10/3 Fri Planning      
10/6 Mon Planning      
10/8 Wed Instance-based learning: kNN and SOM Project 5: Supervised Learning Project 4  
10/10 Fri Naive Bayesian Classifier & Markov Chain      
10/13 Mon Supervised vs Unsupervised Learning      
10/15 Wed Philosophy and AI II   Project 5  
10/17 Fri Fall Break - No Class      
10/20 Mon Q-Learning Project 6: Learning to Vacuum    
10/22 Wed Q-Learning      
10/24 Fri Q-Learning      
10/27 Mon Essay 2   Project 6  
10/29 Wed Decision Trees/Forests Project 7: Decision Trees    
10/31 Fri Decision Trees/Forests      
11/3 Mon Decision Trees/Forests      
11/5 Wed Neural Networks
AI in Python
Project 8: Neural Networks Project 7  
11/7 Fri Neural Networks      
11/10 Mon Neural Networks      
11/12 Wed Transformers
Ollama
Project 9: Transformers Project 8  
11/14 Fri Transformers      
11/17 Mon Transformers      
11/19 Wed Final Projects   Project 9  
11/21 Fri Final Project Discussions      
11/24 Mon Final Project Progress Reports      
11/26 Wed Thanksgiving - No Class      
11/28 Fri Thanksgiving - No Class      
12/1 Mon Philosophy and AI III   Project 9  
12/3 Wed Essay 3   Project 9  
12/5 Fri Discussion and Review   Essay 3 Revised  
12/11 Thr 8:30 am Final Project Presentations   Final Project  

Assessment

Projects

A total of 9 projects will be assigned throughout the semester; approximately one project every 1-2 weeks. Each project will have three levels to which it can be completed, with each level building upon the previous level. In general:

Each project will be evaluated via specifications (a set of criteria) for each level. Projects meeting all the criteria for a given level will receive credit for that level; projects that do not meet all the criteria will not receive credit for that level.

A project that is submitted by the deadline will receive a one-credit on-time bonus.

# Project Assigned Due
  Survey 8/27 8/29
0 Fun with Large Language Models 8/27 8/29
1 Planning in Mazes 9/5 9/12
2 Checkers 9/12 9/19
3 Logic Programming 9/19 9/26
4 Coordinating Warehouse Robots 10/1 10/8
5 Supervised Learning 10/8 10/15
6 Learning to Vacuum 10/20 10/27
7 Decision Trees 10/29 11/5
8 Neural Networks 11/5 11/12
9 Transformers 11/12 11/19

Each student should have a GitHub account. The Java projects (1, 2, 3, 5, 6, 7) will all be based on a single GitHub code skeleton repository. Each student should clone the repository privately and add Dr. Ferrer as a contributor to the project. When the project is due, he will download the repository onto his own machine for grading.

Projects 4, 8, and 9 will use the Kaggle machine learning cloud platform. Each project will have a Kaggle skeleton, which the student should copy and modify. The student should then add Dr. Ferrer as a collaborator.

Students are welcome to undertake projects individually or with one other student in the course. If two students work together, they should create a single submission.

Discussion of the projects is encouraged. However, all code and solutions must be written up individually or in a collaborating pair. Copying a submission from another student or team, in whole or in part, will be considered an academic integrity violation.

Insightful discussion with others must be cited in your solutions. You will not lose credit for such citations.

Incorporating code from a generative AI coding assistant is considered plagiarism and is not allowed.

Each project involves each of the following:

Final Project

The goal of the final project is for you to learn about an aspect of artificial intelligence in greater depth than we have studied during this course. You may choose to write an expository paper, a computer program, or extend a previous assignment. Each student will give an oral presentation about their final project in the final exam period.

Essays

There will be three in-class essays assigned over the course of the semester:

Essays will be assessed according to the following criteria:

Each essay will receive feedback as to how it should be improved with regard to these criteria. Once the feedback is received, each student will be expected to submit a (typed) revision of the essay. This revision will be assessed as follows:

Assistance from peers or the writing center in improving the writing quality of the revised essay is welcome and encouraged. All final text composed and submitted must be authored by the student. Any plagiarism will be considered an academic integrity violation.

In the relatively rare case that an essay strongly meets all of the above criteria, it will receive Level 3 credit without requiring the submission of a typed revision. If this is the case, it will be clearly noted in the provided feedback.

Essays completed during the assigned class period (or later with an excused absence), with the revision submitted within one week of being returned will receive a one-credit on-time bonus. (Essays not requiring a revision will also receive this bonus.)

Specifications Grading


Commitments

It is my ultimate goal for this course, and my teaching, to develop your academic skills, advance your learning of computer science concepts, and support the liberal arts in general. To do so will require commitments from myself and from you toward meeting this goal.

Active Participation

I will be prepared and on time for class each day, ready to use class time to help you understand the course material. I will respectfully listen to, understand, and answer questions asked in class.

You are expected to attend class and actively participate in discussions every day, answering questions, asking questions, presenting material, etc. Your participation will be respectful of your classmates, both of their opinions and of their current point in their educational journey, as we each approach the material with different backgrounds and contexts.

Constructive Feedback

I will keep office hours and be available for outside appointments, and respond to emails within one business day (not including weekends). I will provide feedback on group presentations within one day. For exams, projects, and homeworks, I will provide graded feedback within two weeks.

You are encouraged to provide constructive comments for improving this course for furthering your learning throughout the semester. There will be an opportunity for anonymous course feedback at the end of the term, in which I hope you all participate. Through your feedback I can improve this course and others for future students.

Academic Integrity

I will abide by the above syllabus and grade your work fairly.

As stated in the Hendrix Academic Integrity Policy, all students have agreed to adhere to the following principles:

  • All students have an equal right to their opinions and to receive constructive criticism.
  • Students should positively engage the course material and encourage their classmates to do the same.
  • No students should gain an unfair advantage or violate their peers' commitment to honest work and genuine effort. It follows that any work that a student submits for class will be that student's own work. The amount of cooperation undertaken with other students, the consistency and accuracy of work, and the test-taking procedure should adhere to those guidelines that the instructor provides.
  • Members of the Hendrix community value and uphold academic integrity because we recognize that scholarly pursuits are aimed at increasing the shared body of knowledge and that the full disclosure of sources is the most effective way to ensure accountability to both ourselves and our colleagues.
More details of our departmental stance on integrity can be found in the Hendrix Computer Science Academic Integrity Policy

Learning Accomodation

I will make this classroom an open and inclusive environment, accommodating many different learning styles and perspectives.

Any student seeking accommodation in relation to a recognized disability should inform me at the beginning of the course. It is the policy of Hendrix College to accommodate students with disabilities, pursuant to federal and state law. Students should contact Julie Brown in the Office of Academic Success (505.2954; brownj@hendrix.edu) to begin the accommodation process.

Physical and Mental Health

I am willing to work with you individually when life goes off the rails.

Coursework and college in general can become stressful and overwhelming, and your wellness can be impacted when you least expect it. You should participate in self-care and preventative measures, and be willing to find support when you need it.

  • The Office of Counseling Services welcomes all students to see a counselor in a private and safe environment regardless of their reasons for making an appointment. Counseling services are available to all Hendrix students at no cost.
  • Student Health Services provides free healthcare to Hendrix students. Services are provided by an Advanced Practice Registered Nurse (APRN) in collaboration with a local physician.

The Offices of Counseling Services and Student Health Services are located in the white house behind the Mills Center for Social Sciences at 1541 Washington Avenue.