辅导案例-AINT252

欢迎使用51辅导,51作业君孵化低价透明的学长辅导平台,服务保持优质,平均费用压低50%以上! 51fudao.top

AINT252 COMPUTATION THEORY AND ARTIFICIAL INTELLIGENCE SECaM
1



AINT252
COMPUTATION
THEORY AND
ARTIFICIAL
INTELLIGENCE

20 CREDIT MODULE / 50% COURSEWORK SUBMISSION / 50% EXAM

MODULE LEADER: DAVID WALKER

MODULE AIMS

This module provides students with an overview of a range of different paradigms for computing and
computing theory, and an introduction into the theoretical principles of methods in artificial intelligence.

ASSESSED LEARNING OUTCOMES (ALO):

1. Describe and analyse a range of computing paradigms and artificial intelligence methods and their
applications.
2. Compare computing and artificial intelligence paradigms and evaluate their appropriateness to a particular
computing paradigm for particular application domains.
3. Choose and apply appropriate computational theory and artificial intelligence methods to a chosen sample
domain.



AINT252 COMPUTATION THEORY AND ARTIFICIAL INTELLIGENCE SECaM
2
OVERVIEW

AINT252 – Computation Theory and Artificial Intelligence is a second semester module that will teach you about the
theory behind a range of artificial intelligence and computational techniques. You will discover machine learning,
evolutionary computation and knowledge representation, as well as gaining an appreciation for the social and ethical
impact of AI and learning about some of its application areas. You will also explore computational tools such as finite
state automata and cellular automata, as well as formal languages.

The module is assessed in two ways. You will complete a piece of coursework, detailed in this handbook, in which you
will demonstrate your ability to apply machine learning and evolutionary computation techniques learned during the
module. This is due after Easter. You will also sit an examination in the summer exam session. Each part of the
assessment contributes 50% of the total module mark.

MODULE DELIVERY

A lecture series with supporting workshop activities with topics including: an introduction to artificial intelligence
(including a discussion of ethical and societal considerations), machine learning, evolutionary computation and
knowledge representation. The latter part of the module will explore formal languages (regular expressions and finite
state automata) and cellular automata.

Each lecture will be followed by a corresponding practical workshop in which students will apply the techniques they
have learned in the lectures. Students are expected to self-select a workshop to attend, and should only attend one
workshop per week.

Lectures: Tuesday, 2pm-4pm
Portland Square, Stonehouse lecture theatre

Workshops: Tuesday, 4pm-6pm
Smeaton 100

Thursday, 2pm-4pm
Smeaton 100

Thursday, 4pm-6pm
Smeaton 100

Duration: 12 weeks



AINT252 COMPUTATION THEORY AND ARTIFICIAL INTELLIGENCE SECaM
3
Delivery staff:

Staff Member Contact Details Role details

David Walker

PSQ A322,
[email protected]


Module Leader

Lecturer, workshop series, general module queries.


Mathew Walter




[email protected]



Workshop series.




Important Dates and Deliverables:

Element Description Deadline
C1 Coursework released Week 28
Monday 3rd February 2020
C1 Submission of coursework via the DLE. Week 40
Monday 27th April 2020, 10am.
C1 Coursework feedback and marks returned. Week 42
Friday 15th May 2020
E1 In-class test marks returned. May 2020
TBC – see examination timetable.




AINT252 COMPUTATION THEORY AND ARTIFICIAL INTELLIGENCE SECaM
4
COURSEWORK 50%

This assignment contributes 50% of the overall module mark for AINT252 and is an individual assignment. Both the
report and code must be submitted to the DLE by the specified submission dates.

The coursework has two parts – one is a machine learning exercise and the second is about evolutionary
computation. You must complete and submit both parts. Each part is worth 50% of the coursework mark. A Jupyter
notebook has been placed on the DLE for you to use. You should download it, and either use it locally or in the Azure
cloud environment we have used during the lab sessions.


PART 1 – MACHINE LEARNING

You have been provided with a dataset relating to types of glass. The dataset contains data relating to seven different
types of glass, with 214 observations. The data has 10 inputs, which describe the chemical composition of each
observation. Your task is to implement a program that enables classification of the type of glass for each observation
according to the 10 inputs. You must complete the following tasks.

Task 1.1 – Data preparation (10% of total mark)

The first phase of the work requires you to load the data you have been provided with into your Python program.
Before the data can be used to train and test the classifier you must first prepare it – this means that the inputs must
be normalised. There is no missing data in the dataset.

Task 1.2 – Classification (20% of total mark)

Having prepared the data you must now build a classifier that can classify new points. Use the following classification
implementations within the scikit-learn package to construct classifiers for the dataset:
• Random Forest (sklearn.ensemble.RandomForestClassifier)
• Neural Network (sklearn.neural_network.MLPClassifier)
• Support Vector Machine (sklearn.svm.SVC)

You must demonstrate that each classifier is capable of providing a predicted class for a given input.

Phase 1.3 – Assessment of classification (20% of total mark)

The classifiers you have used in the previous section must be assessed. To do this, you are required to assess the true
positive – false positive rate. You must implement code that returns each value for your classifiers. It is not sufficient to
report a single TP-FP rate. You must use cross validation to report training results and test results and report these
values using a boxplots.

You must also produce scatter plots of the data using PCA (use scikit-learn for this as in the labs). One should be
coloured according to the true class of each observation, and there should also be one for each classifier showing the
predicted class of each observation under each classifier.




AINT252 COMPUTATION THEORY AND ARTIFICIAL INTELLIGENCE SECaM
5
PART 2 – EVOLUTIONARY COMPUTATION

The second part of this assignment requires you to construct a multi-objective evolutionary algorithm (MOEA) that can
generate Pareto front approximations for two multi-objective problems. The problems are DTLZ1 and DTLZ2, and the
code to evaluate objective functions has been provided for you on the DLE. These problems are continuous and you
should test a version that has 2 objectives and 3 objectives.

The decision variables are constrained – this means that only values between 0 and 1 are permitted. The number of
decision variables are as follows:
• DTLZ1 (2-objectives): 6 decision variables.
• DTLZ1 (3-objectives): 7 decision variables.
• DTLZ2 (2-objectives): 11 decision variables.
• DTLZ2 (3-objectives): 12 decision variables.

Task 2.1 – Generation of random solutions (10%)

When evaluating a MOEA it is standard to compare against random. Generate 500 random solutions to the problem
and plot them using Matplotlib

Task 2.2 – Algorithm implementation (25%)

You should implement a (1+1)—evolution strategy (ES) as described in the lectures. Your algorithm must have the
following features:
• An archive in which to store the current approximation of the Pareto front.
• A mutation operator that performs an additive Gaussian mutation.

Task 2.4 – Visualisation of results (15%)

Modify your plots produced in Task 2.1 to include the archive of non-dominated solutions produced by running the
algorithm. You must show the non-dominated solutions against the randomly generated solutions, so they must be
plotted in differently – potentially with different colours and/or symbols.


COURSEWORK DELIVERABLES

A Jupyter notebook has been provided on the DLE for you to use for this coursework. You should implement your code
in it, and submit it to the DLE ahead of the deadline specified in the module calendar earlier in this handbook. Please
indicate which task each section of the notebook refers to using a Markdown cell.

Please consider submitting your files from a computer on the University campus as submitting files of this size over an
unreliable connection can be problematic. Please check your submitted files are correct by downloading them again
and checking that they work. You will receive a confirmation receipt by email when your work has been properly
submitted – if you do not receive this email then your work has not been submitted.




AINT252 COMPUTATION THEORY AND ARTIFICIAL INTELLIGENCE SECaM
6
PLAGIARISM AND ACADEMIC OFFENCES

You are expected to write your own code. Discussing ideas with other people is acceptable, but getting help to write
your code is not acceptable. Failure to demonstrate a good understanding of your own code during the demonstration
may lead to a significantly reduced mark on this assignment, or, in the worst case, action taken against you under the
University’s regulations on examination and assessment offences. Your attention is drawn to these regulations,
available at https://www1.plymouth.ac.uk/essentialinfo/regulations/Pages/Plagiarism.aspx.

If you submit code files or libraries that you have not written yourself you must make this clear in your submission.
Submitting code that you have not written yourself without declaring it clearly in the report may lead to action taken
against you under the University’s regulations on examination and assessment offences.


ASSESSMENT AND MARKING
Each task will be assessed according to the following mark scheme:
• Quality of completed task (60%): To what extent does the code fully implement the requirements specified?
Are there elements of the task that have been omitted? Does it run with errors? How well are the results
presented? Are visualisations of data clear and properly constructed?
• Efficiency of implementation (40%): Have you provided an efficient implementation? Is the code well
structured?



MODULE INFORMATION

Please refer to all the lecture content & further study resources on the DLE.

51作业君

Email:51zuoyejun

@gmail.com

添加客服微信: abby12468