Prev: W1, Next: W2

Zoom: Link, TopHat: Link (936525), GoogleForm: Link, Piazza: Link, Feedback: Link, GitHub: Link, Sec1&2: Link


Slide:

# Introduction

📗 Section 3 instructor: Young Wu, also teaches CS540 (Intro AI) this semester and the next two.
📗 Contact me about research if interested in game theory and reinforcement learning.

# Section 3

📗 The assignments and exams are the same for all sections.
📗 For section 3, there will be TopHat participation questions (not graded for correctness, only relevance) for participation points.
📗 If you prefer Professor Gurmail Singh's teaching style, you can go to his lectures.
📗 You must attend the lab you are assigned to.

# Questions

📗 Why are you taking this course?
📗 Which part of the course are you most interested in?
➩ Performance (tree and graph algorithms).
➩ Web and visualization.
➩ Machine learning.
➩ Other specific topics: Link.

# Large Language Models

📗 Copilot Chat: Link. (or Gemini: Link).
📗 VSCode with GitHub Copilot: Link.
📗 Perplexity AI Comet Browser: Link.
📗 You are encouraged to use large language models like these or other ones you prefer, but the use is not required for the course.
📗 Make sure you give proper attribution and extensive documentation if you use them for coding assignments.
📗 AI Policy for CS559 (similar recommendations for this course): Link.

# Slides

📗 From sections 1 and 2:
➩ Hardware and OS slides: Link.
➩ Git slides: Link

# Hardware

📗 Imagine one huge list per process (running program) called address space.
📗 Every entry in the list is an integer between 0 and 255 (byte).
➩ Store multiple lists.
➩ Variables and other references (refer to addresses).
➩ Strings (character lists encoded by integers): Link.
➩ Code (with instruction sets).
📗 CPUs interact with memory.
➩ Keep track of instructions.
➩ Understand instruction codes (possibly different on different CPUs).
📗 Interpreters like python.exe make it easier to run the same code on different machines. (For Java, compiler)

# Operating System

📗 Operating systems (Windows, macOS, Linux (Android, Ubuntu)) allocate and abstract resources.
📗 The same code may not work on different OS:
f = open("/data/file.txt")
f = open("c:\data\file.txt")
f = open(os.path.join("data", "file.txt"))
📗 Alternatively, use Virtual Machines (VMs) to reproduce results on the same OS.

# Dependencies

📗 Programs depend on imported packages.
import pandas, print(pandas.__version__) to see the version.
pip install pandas==0.25.1 to install different versions.
📗 Use git to keep track of versions.

# GitHub Repo

📗 For section 3: Link.
📗 Try add, commit, push (you cannot push to my repo), branch, merge, checkout.
📗 Visualization: Link.


# Questions?



📗 Notes and code adapted from the course taught by Professors Gurmail Singh, Yiyin Shen, Tyler Caraza-Harter.
📗 If there is an issue with TopHat during the lectures, please submit your answers on paper (include your Wisc ID and answers) or this Google form Link at the end of the lecture.
📗 Anonymous feedback can be submitted to: Form. Non-anonymous feedback and questions can be posted on Piazza: Link

Prev: W1, Next: W2





Last Updated: February 10, 2026 at 10:03 PM