Skip to main content

COGS 300 Overview

Overview

Are computational intelligences like biological intelligences?

Many things in nature make intelligent use of their environments. Many things seem to perform computations and make decisions based off of signals and information. In COGS 300, we consider the many forms of intelligence that exist in nature, and whether computational models can shed insight on how natural intelligence works. By building and programing an autonomous robot, we will learn about intelligence in all forms.

  • We build physical robots to develop our intuitions about sensation, actuation, and intelligent decision-making.
  • We look at intelligence from a complex systems science perspective, weaving together agent and environment.
  • We learn about systems thinking, and the embedded, embodied, and extended approach to cognition.

Approach

We use a very hands-on approach to learning. Be prepared to work creatively live during class. There is no room for sitting on your hands or doing other homework during COGS 300 class time: you are expected to fully participate. The focus is on teaching practical skills by working through design problems, often while drawing diagrams, building circuits, and writing code during class. Before each lecture, you should prepare by going over the readings and pre-class videos.

Every lecture follows basically the same format:

  • An introductory drawing exercise
  • Short lecture segements
  • A technical demonstration
  • A number of design challenges

The format will always be to present something for you to experience, then reason about and extend with a design focus.

Commitment

As a 4-credit upper-year UBC course, COGS 300 is designed to be a difficult but rewarding class. Many of you will go from only having taken a little bit of computer science, to building fully-working autonomous robots in a few short months.

  • You should expect to work extensively outside of class time building your robot.
  • You will learn mathematical and computational models, and apply them creatively to design problems.
  • You need to be prepared for active engagement with classmates and the teaching staff during lectures and labs.
  • You will experience the joy (and frustration) of bringing something electronic to "life." It's worth it!

Sometimes people who are not in computer science face a conceptual barrier wherein they tell themselves that they are not technically competent enough to excel in robotics. However, our experience is exactly the opposite: often our TAs and top students are not computer science stream students, but are from psychology, linguistics and, yes, even philosophy. All of the skills we learn can be mastered by anyone who has made it this far in their degree. If you passed a computer science class and can handle cardboard and a glue gun, you'll do great.

Why take the class?

There are a lot of good reasons to take COGS 300, even if you are not a COGS student:

  • Robot components pervade all parts of your modern life, from cars to computers to door locks. You will learn how your world has been built.
  • Artificial intelligence is now ubiquitous. You will learn the underpinnings of AI at an intuitive and practical level.
  • Computational models of intelligence are sometimes good and sometimes bad models of natural biological intelligence. You'll be able to discern good and bad claims about computation and intelligence.
  • It's fun. Making a robot is just plain fun.

The academic point of taking the class is that you will be able to use your hands-on, practical experience with robotics to reason about academic questions in all areas of cognitive systems and complex systems science (that includes social sciences). The job-readiness point of taking the class is that you will have experience on an electromechanical design team and two excellent portfolio pieces to demonstrate that. The world-readiness point of taking the class is that you will understand a lot more about how your day-to-day world operates.

Course Materials

You will be required to purchase an Arduino R4 Wifi and a small set of electronics that you bring to class. Colleen, the COGS advisor will send a list including pickup instructions since we supposedly have some coming in at a discounted rate.

You are required to have a physical sketchbook that you bring to lab and class. You will be required to purchase electronics for your personal electronics project (maximum $50 budget for the electronics project). We provide robot building materials, but batteries are not included, so you will need to negotiate with your team about how you will power your robot and likely purchase some rechargeable batteries.

There are no textbooks for this class, but weekly readings and instructions will be provided on the course website, which will be released during the first week of class.

Required software: