Artificial Intelligence Course Descriptor
Artificial Intelligence Course Descriptor
Unit level 5
Credit value 15
Introduction
One of the dreams of the computing sector is to build an intelligent digital assistant
that could serve people according to peoples’ nature. Building this type of intelligent
machine is a big challenge to computer scientists. An intelligent machine must have at
least the following behaviours – vision, speech and voice recognition, smelling sense,
learning from experience to solve new problems and coping with the unknown. The
science of artificial intelligence (AI) is trying to overcome these challenges by
combining the study of nature, understanding from humans' intelligent behaviour and
brain function, other animal’s acute senses, with mathematics, statistics, logic and
traditional computer science. Some of AIs achievements include the NASA's Mars
Rover, Google's Self-Driving Cars, IBM’s Watson, Microsoft's Xbox 360 (the first gaming
device to track human body movement) and much more.
This unit is designed to introduce the philosophy behind artificial intelligence, the
most efficient techniques of AI and various intelligent systems that help us to
overcome various challenges. This unit guides the student to investigate the emerging
AI technologies which could solve various real-world challenges and problems.
Topics included in this unit are the philosophical background to AI, current trends and
the future of AI, ethics and issues in AI ,a range of AI applications (computer vision,
speech processing and so forth), top-down approach of AI techniques, fuzzy logic,
knowledge-based systems, natural language processing), bottom-up approach of AI
techniques (neural networks, evolutionary computing, swarm intelligence), and
emerging AI technologies (Brain Computer Interfacing, Ambient AI, Smart City, GPU AI
etc).
On successful completion of this unit students will be able to understand the
fundamental concepts in artificial intelligence from a theoretical, practical and
cognitive point of view, and also gain innovative thought processes to build intelligent
systems for future needs. Furthermore, the students can gain hands-on experience in
developing intelligent systems using a programming language such as C/C++, C#, Java,
Prolog, Lisp, Python, R, or a tool such as Weka, KNIME, MS AzureML, Accord.NET,
AForge.NET, Neuroph, tools for NLP (NLTK, AIML), tools for swarm robotics (Microsoft
robotics developer studio, Orocos, ‘Player Stage Gazebo’) etc.
Learning Outcomes
By the end of this unit students will be able to:
LO1. Analyse the theoretical foundation of artificial intelligence, current trends and
issues to determine the effectiveness of AI technology.
LO2. Implement an intelligent system using a technique of the top-down approach of
AI.
LO3. Implement an intelligent system using a technique of the bottom-up approach
of AI.
LO4. Investigate and discuss a range of emerging AI technologies to determine
future changes in industry.
Applications of AI:
Intelligent Robot, intelligent agent, artificial life, computer vision, speech
recognition, artificial nose, data mining and other smart technologies.
Issues of AI:
Practical difficulties in building brain like machine, ethics and social issues of AI,
philosophical issues of AI – will computers control the human?
Choose a technique from the list below, then investigate and demonstrate the
technique using the programming language or a tool:
Knowledge based system: data representation, semantic net, rule-based system.
Choose a technique from the list below then investigate and demonstrate the
technique using the programming language or a tool:
Artificial neural network: supervised learning algorithms, single perceptron, MLP
& backpropagation learning algorithms.
Evolutionary computing: problem model, fitness evaluation, selection method,
crossover operator, evolution scheme, observation.
Swarm intelligence: swarm intelligent approaches, swarm robotics, team size and
composition, team configurability, communication pattern and range.
Distributed AI; GPU AI; Ambient AI; Brain Computer Interfacing; Smart Systems, Smart
Home and Smart Cities.
Textbooks
Engelbrecht, A. (2007) Computational Intelligence: An Introduction. Wiley-Blackwell.
Jain, A. (2011) Introduction to Biometrics. Springer.
Fankhauser, W. (2015) Artificial Intelligence Applications: Natural Language Processing.
CreateSpace Independent Publishing Platform.
Frankish, K. and Ramsey, W. (2014) The Cambridge Handbook of Artificial Intelligence.
Cambridge: Cambridge University Press.
Klette, R. (2014) Concise Computer Vision: An Introduction into Theory and Algorithms.
Springer.
Picon, A. (2015) Smart Cities: A Spatialised Intelligence. AD Primer. John Wiley & Sons.
Vaden, L. (2015) Advanced Topics in Brain-Computer Interfacing. CreateSpace
Independent Publishing Platform.
Warwick, K. (2011) Artificial Intelligence: The Basics. Routledge.
Websites
archive.ics.uci.edu/ml University of California, Irvine
“Machine Learning Repository” (Data sets)
www.codechef.com CodeChef educational initiative
“List of Compilers” (Wiki)
www.lfd.uci.edu University of California, Irvine – Laboratory for Fluorescence
Dynamics
“Binaries for Python Extension Packages” (Development
Tool)
cran.r-project.org The R Project for Statistical Computing
“R Archive Network” (Development Tool)
julialang.org Julia Programming Language (Development Tool)
pkg.julialang.org Julia Programming Language (Development Tool)
www.cs.waikato.ac.nz University of Waikato – Machine Learning Group
“Data Mining Software in Java” (Development Tool)
www.knime.org Konstanz Information Miner
“KNIME” (Development Tool)
azure.microsoft.com Microsoft Azure (Development Tool)
accord-framework.net Accord.NET Framework (Development Tool)
Links
This unit links to the following related units:
Unit 26: Machine Learning