CM3020 Artificial Intelligence Mid-term course work specification
Introduction
This document contains information about the mid-term coursework. You need
to complete Part A and Part B. Part A is worth 30%. Part B is worth 70%.
Part A
Write an essay about game playing AI. Your essay should answer the following
questions. I recommend starting with these as section headings, but you might
want to re-structure it later as you see fit.
1) Why do researchers create AI systems that play games?
To answer this question, explain how researchers justify the development of AIs
that play games.
2) What are THREE possible application areas for AI systems that play
games?
To answer this question, describe three possible application areas for game playing AI systems.
3) What do researchers think are the ethical problems with game-playing
AIs?
To answer this question, discuss the ethical aspects presented by researchers
about game playing AIs.
4) Are neural networks the best game players?
Based on what you have read, discuss this question, using evidence from the
literature.
5) How reliable are my references?
Choose three of the references you used and evaluate the reliability of the
reference.
You should answer each of the questions using information that you have found
in the literature. To find relevant papers, you can start with the list provided
in the AI game-player case study. To dig deeper you can search for your own
references and/ or you can follow up the references at the end of other papers.
Provide direct quotes from the research papers you have read to show how the
researchers answer those questions and add your own commentary.
For example, ‘Smith et al. evaluated game playing AIs based on their ability
to consume pizza at 5am after staying up all night. They found that current
generation systems in 2021 were not human-competitive. They said: “since
1
the removal of CD-ROM drives from tower systems, the computers just have
nowhere to put the pizza’ ’ [6]. I find that the pizza eating metric is flawed as it
does not account for people who are lactose intolerant and computers do not eat
pizza.’
Add an appropriately formatted list of references at the end of your essay.
Part A Deliverables:
• Essay in PDF format up to 1,500 words.
Part A Marking criteria
Part A is worth 30% of your final mark.
• All questions answered
• Clear and logical writing using evidence from the literature
• Proper citations and quotes
• Reference list at the end of the essay
2
Part B
Introduction
This section describes what you have to do and what you have to deliver for
Part B of the mid-term CM3020 AI coursework.
For this part of the coursework, you need to build on top of the codebase from
the Genetic Algorithm/ Creatures case study. Your objective is to adapt the
evolutionary algorithm so that the creatures evolve to complete a new task.
The new task involves climbing a mountain. We have created a special new
environment for the creatures to operate in. You need to integrate the genetic
algorithm code to that new environment such that it evolves creatures that can
climb the mountain.
The following image illustrates the new environment:
Figure 1: Mountain climbing environment
You can see that there is a kind of sandbox with a mountain in the middle.
The idea is for the creature to get as high as possible up the mountain, without
cheating and flying into the air. Your job is to integrate that new environment
into the simulation code and to adapt the fitness function so it measures maximum
closeness to the top of the mountain.
How to complete the coursework
Download the code for the new environment, linked below. You will see that I
have included the code as it stood at the end of my development work. There
are also some new scripts in there:
3
• cw-envt.py: run this to see the environment in action. You can see that a
random creature is generated and dropped into the arena.
• prepare_shapes.py: This is the script I used to generate the mountain.
You will need to experiment with this script to generate some different
shapes of mountains.
Step-by-step process you should follow to complete the basic part of the course work:
• Download the example code
• Set up a virtual environment with the appropriate packages to run the
code in cw-envt.py
• Verify that you can run cw-envt.py and that you see the image shown
above
• Make a copy of cw-envt.py and integrate the full genetic algorithm system
you should have developed during the course so that the simulation loads
up the sandbox + mountain environment and tests the creatures in there
• Change the fitness function so that fitness is based on ability to climb the
mountain. It is up to you how to do this
• Carry out a series of experiments where you test different GA and genome
settings, e.g. different population size and other high-level settings
• Produce graphs and tables describing how the different settings you tried
affect the mountain climbing
Advanced coursework steps: experimenting with the encod ing scheme
Once you have succeeded in integrating the new environment into your genetic
algorithm, you have defined a new fitness function and you have tested it out
with various settings, you are ready for the advanced part of the coursework.
The advanced part involves experimenting with the genetic decoding scheme
in order to explore a different space of possible creatures. Things you can
experiment with are as follows:
• the motor controls
• the shape of the parts of the robot
• having different parts of the robot be evolvable, e.g. you do not evolve
every part of the robot, just some of it
There are lots of things you can try out here, for example, can you start with a
fixed design robot, and just evolve the motor control parameters? Can you fix
some parts of the robot so they cannot evolve, and other parts do, e.g. evolving
just leg designs? Can you try some different shapes and connection settings?
You should carry out further experiments wherein you try out your ideas and
summarise them in graphs and tables.
4
How to achieve an exceptional grade (>80%)
There are many possible extensions you can work on to achieve an exceptional
grade. Here are some ideas to get you started:
• Experiment with different landscapes: have a look at prepare_shapes.py.
Can you use the code there to generate some different landscapes and
experiment with those?
• Experiment with sensory input: the creatures cannot receive information
about their environment at the moment. Can you have some sort of motor
control that responds to a stimulus from the outside world? E.g. can the
robot have motors that only turn on or off when it is facing the top of the
mountain?
The suggestions above are only some possible things you can do here. It is up to
you to choose an area to explore here.
Preparing your code
You need to follow these instructions to prepare and submit your code:
• Concatenate all the code for your project into a single file (e.g. on ma cos/linux cat *.py > mycode.txt)
• Load the code file into a word processor and add clear colour highlights
showing the main blocks of code that you wrote on your own without
assistance
• Convert to a PDF and submit
Preparing a video demo
Please make a 5 minute video wherein you present examples of the creatures you
were able to evolve. A really good video will contain slides explaining clearly
what we are looking at. e.g. state what the experiment was that led to a given
creature. If you completed the advanced criteria, make a section in the video
for this. If you completed the exceptional criteria, make a section for this. The
video should not just be a montage of creatures - there should be explanation
and narrative there too.
Part B Deliverables
• Report: 1,500 - 2,000 words long, PDF format
• All code in PDF format as specified above
• Video: around 5 minutes long, MP4 format
• Why my work is exceptional' statement, if you have completed
all other other requirements and attempted extensions
5
Part B Marking criteria
Part B is worth 70% of your mark.
Report:
• Clearly explains the basic experiments you carried out
• Presents the important results of your experiments in the form of graphs
and tables
• Has a section explaining the experiments you did with the encoding scheme
• Presents the important results of your experiments with the encoding
scheme in the form of graphs and tables
• If you attempted the exceptional criteria, explain and present results of
what you did
• You can include code fragments in the report if it helps you to explain
what the experiment was
• the report should be 1,500 - 2,000 words long. Please state the word count
on the first page
• Is PDF format
Code
• Code is presented as a single file in PDF format with clearly highlighted
sections indicating the code you personally wrote without assistance
• Code complexity and quality, beyond the template code provided
• Code quality: formatting, comments
Video
• Video is in MP4 format
• Video is around 5 minutes long
• Video is structured, with appropriate information given about what we are
seeing
• Video shows examples of the creatures that evolved under different condi tions
6
版权所有:留学生编程辅导网 2020 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。