首页
网站开发
桌面应用
管理软件
微信开发
App开发
嵌入式软件
工具软件
数据采集与分析
其他
首页
>
> 详细
代做CNSCC.361、代写MATLAB编程设计
项目预算:
开发周期:
发布时间:
要求地区:
CW Assignment CNSCC.361
AI
CNSCC.361 Artificial Intelligence Coursework
Introduction:
Marking Scheme
20% of the mark for the CNSCC.361 module is based on the coursework.
At the end of this document, there is an Appendix providing suggestions for a well written
report.
Submission
Put your codes in separate folders (“cw_task1” for task1 and “cw_task2” for task2)
and call the overall zipped file “cw_lastname_firstname.zip” (replace lastname and
firstname with your names). Submit your “cw_lastname_firstname.zip” file and your
report on Moodle.
The length of the report should not exceed 5 pages (the format is specified at the
end of this document – two column, minimum font size 10pt). It is important to
note that we do not want separate reports. There has to be one report.
CW Assignment CNSCC.361
AI
Task 1
This task of the assignment requires you to perform pre-processing of the real climate data
set (temperature and wind speed) measured in Manchester, UK for the period 2010–2015
provided in the file “ClimateData.csv”. This data is a subset of publically available (from
http://www.worldweatheronline.com) data about climate at Manchester which contain 938
records and five features (i.e., five dimensional vectors) of data from the Summer and the
Winter seasons of the period from 2010 to 2014. The meaning of each column of data is
listed below:
Temperature, oC Wind speed, mph Wind direction, deg Precipitation, mm Humidity, %
Recall from the Lectures and the Lab sessions, the main pre-processing steps:
i) normalization,
ii) standardization,
iii) anomaly detection.
Explain clearly the work of the algorithms, analyze their advantages and disadvantages,
provide the code that you developed (do not use downloaded code from elsewhere and be
aware about the plagiarism policy of the University) and the results.
From the literature you may find other pre-processing algorithms (e.g. recursive density
estimation, PCA, etc.) which you can also mention in your analysis and/or use. For these
additional (optional) algorithms you can use available code assuming you correctly make a
reference to it; however, demonstrating the understanding of it is necessary. These
additional/optional algorithms are for distinguishing between good, average and excellent
reports.
Task 2
The Traveling Salesman Problem (TSP) is one of the most famous problems in computer
science. Here we describe the problem and you will implement a Genetic Algorithm (GA)
to find a solution, and show and analyse your results. These are to be done in MATLAB.
GA has been introduced and discussed as part of a lecture. There was also a lab about
GA to give you an initial understanding of the GA approach, but this Task will be applying
GA to a different problem than the one in the lab.
TSP consists of attempting to find the shortest complete tour through a series of points
(cities), starting and ending with the same point (see Figure 1). Finding the shortest route
that visits a set of locations is an exponentially difficult problem: finding the shortest path
for 20 cities is much more than twice as hard as 10 cities. An exhaustive search of all
possible paths would be guaranteed to find the shortest, but is computationally intractable
for all but small sets of locations. For larger problems, optimization techniques, such as
GA, are needed to intelligently search the solution space and find near-optimal solutions.
CW Assignment CNSCC.361
AI
Mathematically, traveling salesman problem can be represented as a graph, where the
locations are the nodes and the edges (or arcs) represent direct routes between the nodes.
The weight of each edge is the distance between the nodes. It is a minimization problem
starting and finishing at a specified vertex after having visited each other vertex exactly
once. The goal is to find the path with the shortest sum of weights. Below, we see a simple
five-node graph:
Figure 1- Shortest route example: the problem lies in finding a minimal path passing from all vertices once. For
example the path Path1 {A, B, C, D, E, A} and the path Path2 {A, B, C, E, D, A} pass all the vertices but Path1 has a
total length of 24 and Path2 has a total length of 31.
In this task, you will be given the (x,y) location of 100 cities in “xy.mat” file. So, each
population member (chromosome) will have 100 gens.
Finding a solution to the travelling salesman problem requires that you set up a genetic
algorithm in a specialized way. For instance, a valid solution need to represent a route
where every location is included at least once and only once. If a route contain a single
location more than once, or missed a location out completely it would not be valid. To
ensure the genetic algorithm does indeed meet this requirement special types of mutation
and crossover methods are needed. Firstly, the mutation method should only be capable
of shuffling the route, it shouldn't ever add or remove a location from the route, and
otherwise it would risk creating an invalid solution. Question: What type of mutation? For
each selected population member, try three different mutation operators (Swap, Flip and
Slide) to generate three new population members. With swap mutation two location in the
route are selected at random then their positions are simply swapped. For example, if we
apply swap mutation to the following list, [1,2,3,4,5,6,7,8,9] we might end up with,
[1,2,5,4,3,6,7,8,9]. Here, positions 3 and 5 were switched creating a new list with exactly
the same values, just a different order. Because swap mutation is only swapping preexisting values, it will never create a list which has missing or duplicate values when
compared to the original, and that's exactly what we want for the traveling salesman
problem. With Flip mutation two locations in the route are selected at random, and then,
the positions between two locations are simply flipped. For example, given two randomly
selected locations 3 and 7, if we apply swap mutation to the following list [1,2,3,4,5,6,7,8,9],
we end up with [1,2,7,6,5,4,3,8,9]. Moreover, if we apply slide mutation to the list
[1,2,3,4,5,6,7,8,9], we end up with [1,2,4,5,6,7,3,8,9]. You also need to pick a crossover
method which can enforce the same constraint. What type of crossover? Ordered
crossover.
CW Assignment CNSCC.361
AI
Implement Genetic Algorithm
Your main task is to implement with MATLAB a genetic algorithm that attempts to find a
near-optimal solution. You cannot use MATLAB's “ga” function, so you have to implement
something similar to what you did in the lab.
Your algorithm should make use of crossover and mutation as described above. Begin
with an initial population of at least 50 members and then increase to 200 members (start
with 50 members, then try 100, 150 and 200 members). Run your algorithm for at least
1000 generations/iterations and then increase to 10000 (start with 1000 generations, then
try 2000, 4000, 6000, 8000, and 10000 generations/iterations). Choose the best ones.
You will need to make many design decisions on how to implement the algorithm and what
parameter values to use. For example, you could try different selection methods including
roulette-wheel selection, ranking selection and tournament selection to see which one is
better. Submit the best algorithm. Your mark will depend not only on the code that you
write but also on how well you document your design decisions. In your report, you should
also answer the following questions:
What was the fitness score of the most-fit individual in the first generation? What was
the fitness score of the most-fit individual in the last generation? Plot the fitness score of
the most-fit individual in each generation.
What path did the most-fit individual in the final generation take through the cities? Run the
following code to visualize the path of the most-fit individual in the last generation.
figure('Name','TSP_GA | Results','Numbertitle','off');
subplot(2,2,1);
pclr = ~get(0,'DefaultAxesColor');
plot(xy(:,1),xy(:,2),'.','Color',pclr);
title('City Locations'); subplot(2,2,2);
rte = optRoute([1:100 1]);
plot(xy(rte,1),xy(rte,2),'r.-');
title(sprintf('Total Distance = %1.4f',minDist));
Note that “xy” variable is a 100 × 2 matrix consisting of the (x,y) location of 100 cities
and optRoute variable (integer array) is the best route found by the algorithm (i.e., the
most-fit individual in the final generation). optRoute is 1 × 100 vector. This code will show
a figure as shown below but the connections between cities and total distance might be
different.
CW Assignment CNSCC.361
AI
What was the string of 100 digits of the most-fit individual in the final generation?
Run the algorithm 10 times. Does the fitness score of the most-fit individual in the last
generation change? If so, why?
Run the algorithm using tournament selection, without cross-over operator and using all
three mutation operators (swap, flip and slide) with population of 100 members. Run your
algorithm for 10000 generations/iterations. What was the fitness score of the most-fit
individual in the last generation? Run the above mentioned code to visualize the path of
the most-fit individual in the last generation.
The coursework will be marked based on:
• Code efficiency
• Code commenting and writing style
• Presentation and writing of the report
• Critical Understanding
• Research and Results
• Use of Literature
• Conclusion and Analysis
CW Assignment CNSCC.361
AI
Appendix
Requirements for a Well Written Report
The report should contain:
1. Title, name, student number, course, etc., followed by an abstract.
2. Main part: Introduction, review of the state of the art. The description of the
algorithm and how it performs, including showing results with images. For instance:
“This report describes development and application of the k-means clustering
algorithm to image processing data…” Give the software code that you used to
obtain the results in an Appendix. A very important part of your report is the
analysis of the results. For instance, what are the advantages and limitations of the
algorithms that you used? How can you characterize the results? Are they
accurate?)
3. Conclusions: should describe briefly what has been done, with a summary of
the main results and outline of the possible future work.
The objective of the assignment is to conduct data analysis on a set of data, and present
conclusions on the results.
软件开发、广告设计客服
QQ:99515681
邮箱:99515681@qq.com
工作时间:8:00-23:00
微信:codinghelp
热点项目
更多
代做 program、代写 c++设计程...
2024-12-23
comp2012j 代写、代做 java 设...
2024-12-23
代做 data 编程、代写 python/...
2024-12-23
代做en.553.413-613 applied s...
2024-12-23
代做steady-state analvsis代做...
2024-12-23
代写photo essay of a deciduo...
2024-12-23
代写gpa analyzer调试c/c++语言
2024-12-23
代做comp 330 (fall 2024): as...
2024-12-23
代写pstat 160a fall 2024 - a...
2024-12-23
代做pstat 160a: stochastic p...
2024-12-23
代做7ssgn110 environmental d...
2024-12-23
代做compsci 4039 programming...
2024-12-23
代做lab exercise 8: dictiona...
2024-12-23
热点标签
mktg2509
csci 2600
38170
lng302
csse3010
phas3226
77938
arch1162
engn4536/engn6536
acx5903
comp151101
phl245
cse12
comp9312
stat3016/6016
phas0038
comp2140
6qqmb312
xjco3011
rest0005
ematm0051
5qqmn219
lubs5062m
eee8155
cege0100
eap033
artd1109
mat246
etc3430
ecmm462
mis102
inft6800
ddes9903
comp6521
comp9517
comp3331/9331
comp4337
comp6008
comp9414
bu.231.790.81
man00150m
csb352h
math1041
eengm4100
isys1002
08
6057cem
mktg3504
mthm036
mtrx1701
mth3241
eeee3086
cmp-7038b
cmp-7000a
ints4010
econ2151
infs5710
fins5516
fin3309
fins5510
gsoe9340
math2007
math2036
soee5010
mark3088
infs3605
elec9714
comp2271
ma214
comp2211
infs3604
600426
sit254
acct3091
bbt405
msin0116
com107/com113
mark5826
sit120
comp9021
eco2101
eeen40700
cs253
ece3114
ecmm447
chns3000
math377
itd102
comp9444
comp(2041|9044)
econ0060
econ7230
mgt001371
ecs-323
cs6250
mgdi60012
mdia2012
comm221001
comm5000
ma1008
engl642
econ241
com333
math367
mis201
nbs-7041x
meek16104
econ2003
comm1190
mbas902
comp-1027
dpst1091
comp7315
eppd1033
m06
ee3025
msci231
bb113/bbs1063
fc709
comp3425
comp9417
econ42915
cb9101
math1102e
chme0017
fc307
mkt60104
5522usst
litr1-uc6201.200
ee1102
cosc2803
math39512
omp9727
int2067/int5051
bsb151
mgt253
fc021
babs2202
mis2002s
phya21
18-213
cege0012
mdia1002
math38032
mech5125
07
cisc102
mgx3110
cs240
11175
fin3020s
eco3420
ictten622
comp9727
cpt111
de114102d
mgm320h5s
bafi1019
math21112
efim20036
mn-3503
fins5568
110.807
bcpm000028
info6030
bma0092
bcpm0054
math20212
ce335
cs365
cenv6141
ftec5580
math2010
ec3450
comm1170
ecmt1010
csci-ua.0480-003
econ12-200
ib3960
ectb60h3f
cs247—assignment
tk3163
ics3u
ib3j80
comp20008
comp9334
eppd1063
acct2343
cct109
isys1055/3412
math350-real
math2014
eec180
stat141b
econ2101
msinm014/msing014/msing014b
fit2004
comp643
bu1002
cm2030
联系我们
- QQ: 9951568
© 2021
www.rj363.com
软件定制开发网!