Internal/Teaching AI
From ISLAB/CAISR
Project
Keep Java server, strongly recommend they write players in Python - test the connectivity
Setup network environment to run the server. Can it be r2s server or a virtual machine on the wiki server (talk with Nicholas)?
Labs
- Lab1:
- reflex agent, using rule-based reasoning engine
- let's try
pyke
- create 2-3 simple examples
- let's try
- simple mobile robot controller
- let's try Webots http://www.cyberbotics.com/overview
- we either create our own world, or we use one of the competitions: the rat maze or the savanna world
- the trick is to have individual decisions be complex enough (we don't want to have too much memory yet)
- make sure Webots is easy to integrate with pyke!
- simple poker player
- demonstrate how to stratify the knowledge (levels of hand quality, evaluate opponents, etc.)
- how easy is it to calculate winning percentage of any given hand in pyke?
- reflex agent, using rule-based reasoning engine
- Lab 2:
- search algorighms: A*
- mobile robot path planning
- can we make it a car instead of omnidirectional robot?
- talk to Jennifer/Gaurav about ideas?
- do it in an abstract manner
- but maybe we could connect to Webots later for visualisation?
- poker bidding against known hand & strategy
- we need to come up with sufficiently complicated strategy!
- has to have a number of local minima
- and a number of reasonable heuristics
- Lab3
- logic
- students write knowledge base in FOL
- the idea is to "do machine learning by hand" - come up with some rules, see which examples are covered, iterate
- human behaviour analysis and anomaly detection
- based on data from Jens
- generated by his simulator
- KB should explain as many examples as possible
- poker: deduce opponent's hand
- based on known cards
- and description of their strategy
- logic
- Lab 4
- Bayesian networks
- healthcare and medical diagnosis
- match symptoms with causes
- talk to Anita and Nicholas
- poker: opponent recognition
- given non-deterministic strategies, match play history to an opponent
- Lab 5
- Learning
- SVM, neural networks and/or decision trees
- fingerprint classification (?)
- talk with Anna (?)
- maybe face / digit recognition (talk with Stefan K)
- poker: learn opponent's strategy
- train on past games
- try to predict next bids
- how to deal with hidden information (current hand)?
- Learning