Artificial Intelligence: A Practical Introduction | Short course at the Summer School at Warwick University
Artificial Intelligence
A Practical Introduction
Artificial intelligence is set to revolutionise the way that we work, live and interact.
In December 2017, Carnegie Mellon poker playing computer Libratus stunned the world by winning 1.7M in a 20-day tournament against four poker stars. This was the latest in a series of big wins for AI including DeepBlue beating Gary Kasparov at chess in 1997 and AlphaGo beating Lee Sedol at Go in 2016.
In a nutshell, the challenge for AI agents is to make decisions in an uncertain environment, exploring the potential consequences of their own choices using complex estimates of the world around.
This course is a study of the basic building blocks of decision-making agents, which are abstract entities living in an uncertain environment and are guided towards the realisation of given objectives. On top of this, the environment is usually inhabited by other agents, which may or may not strive to achieve similar objectives. The task is to take the best possible decision that can be taken given the (incomplete) information available.
These simple models are the basis of a number of important achievements in AI, and combine the use of logical, game-theoretic and algorithmic analysis.
Key Information
Level: Introductory to intermediate
Teaching: 60 hours
Expected independent study: 90 hours
Optional assessment: A 2 hour exam (50%) and coursework (50%)
Typical credit: 3-4 credits (US) 7.5 ECTS points (EU) - please check with your home institution
This course can also be combined with our Exploring British Culture week - find out more.
The course will be an exploration of the basic methodologies for the design of artificial agents in complex environments. The course will first start with classical AI approaches where these agents are goal-oriented and take decisions in a potentially unknown environment.
Then it will move on to more sophisticated models allowing agents to have a representation of the other agents, their potential decisions and their goal, a representation about the representations of other agents, and so forth. This induces complex patterns of strategic reasoning, both in competitive and cooperative interactions, which need to be formally modelled and analysed.
These agent-based systems are built upon three important methodologies: Logic, because of the focus on reasoning, Game-Theory, because of the focus on strategies, and Algorithms, because of the focus on artificial agents.
You will learn the basics of how to program in python and apply this knowledge to studying, and building your own, learning algorithms.
As a coursework challenge, you will bring all of this knowledge together to build your own bot in python that implements strategies to compete against other bots in an auction game.
Topics to be covered include:
- Agents: definitions, applications
- Reasoning: logic and agents, knowledge representation, inference mechanisms
- Decision-making: actions, time and risk
- Learning: introduction to reinforcement learning
- Introduction to multi-agent systems: definitions, strategies and knowledge, collective strategies, agent application areas.
- Multi-agent reasoning: multi-agent epistemic logic, action logics, deliberation, BDI models.
- Modelling opponents: uncertainty and expectations, multi-agent learning.
- Competitive models: strategies and equilibria, opponent modelling.
- Cooperative models: bargaining and negotiation, resource allocation, inter-agent relationships.
- Open Issues: development methodology, programming languages, standards.
- Beginner to intermediate python.
- Learning algorithms in python: regret matching, q-learning, genetic algorithms, collective intelligence.
- Writing software bots to compete in games with uncertain environments.
Please note changes to the syllabus and teaching team may be made over the coming months before exact set of topics are finalised.