This year, Artificial Intelligence (AI) is offered as an independent study. The course is structured around several projects that teach students firsthand how to program computers to mimic human intelligence.
What are the ultimate learning goals of the course?
Right now, there are two main learning goals. One is to have students become aware of how to program a few of the more popular and accessible artificial intelligence algorithms in use today (genetic algorithms and neural networks). One of the drawbacks of that kind of algorithm is that they are domain specific; they learn one task really well but find it hard to generalize.
The other goal of the class is to help them understand what would be required to make a computer capable of understanding and reasoning about knowledge in the abstract so that it can make deductions in a wide range of fields and topics without over-specialization. We have begun work toward that end by learning about propositional and first order logic so that they can understand “ontological engineering”—the representation of abstract (and therefore flexible) concepts that can occur in many domains as opposed to one.
What has been your favorite part of the course so far?
It has been neat to see how some of the ideas that we were only theorizing about when I was in college are now proving that they work (or proving that they don’t), and there’s now enough computing power to support some of the more computationally intensive algorithms. I also like that many different interests of mine are able to come together in this class.
What experiences do you hope students get out of the class?
I hope that they become fluent in the ideas that are floating around right now in the field so that they are ready to jump into a project of their choice when they get into college. I hope students see that they can create their own AI that can analyze data to assist them in any data-driven field they may pursue, along with the understanding that more and more fields are turning out to be data-driven.