日韩精品一区二区三区高清_久久国产热这里只有精品8_天天做爽夜夜做爽_一本岛在免费一二三区

合肥生活安徽新聞合肥交通合肥房產生活服務合肥教育合肥招聘合肥旅游文化藝術合肥美食合肥地圖合肥社保合肥醫院企業服務合肥法律

代做6CCS3AIN MDP-solver

時間:2023-11-26  來源:合肥網hfw.cc  作者:hfw.cc 我要糾錯



1 Introduction

Coursework
This coursework exercise asks you to write code to create an MDP-solver to work in the Pacman environment that we used for the practical exercises.
Read all these instructions before starting. This exercise will be assessed.
2 Getting started
You should download the file pacman-cw.zip from KEATS. This contains a familiar set of files that implement Pacman, and version 6 of api.py which defines the observability of the environment that you will have to deal with, and the same non-deterministic motion model that the practicals used.
Version 6 of api.py, further extends what Pacman can know about the world. In addition to knowing the location of all the objects in the world (walls, food, capsules, ghosts), Pacman can now see what state the ghosts are in, and so can decide whether they have to be avoided or not.
3 What you need to do 3.1 Write code
This coursework requires you to write code to control Pacman and win games using an MDP-solver. For each move, you will need to have the model of Pacman’s world, which consists of all the elements of a Markov Decision Process, namely:
• A finite set of states S;
• A finite set of actions A;
• A state-transition function P (s′ |s, a); • A reward function R;
• A discount factor γ ∈ [0, 1];
Following this you can then compute the action to take, either via Value Iteration, Policy Iteration or Modified Policy Iteration. It is expected that you will correctly implement such a solver and optimize the choice of the parameters. There is a (rather familiar) skeleton piece of code to take as your starting point in the file mdpAgents.py. This code defines the class MDPAgent.
There are two main aims for your code:
 1 Mallmann-Trenn / McBurney / 6ccs3ain-cw

(a) Win hard in smallGrid
(b) Win hard in mediumClassic
To win games, Pacman has to be able to eat all the food. In this coursework, for these objectives, “winning” just means getting the environment to report a win. Score is irrelevant.
3.1.1 Getting Excellence points
There is a difference between winning a lot and winning well. This is why completing aim (a) and (b) from previous section allows you to collect up to 80 points in the Coursework. The remaining 20 points are obtained by having a high Excellence Score Difference in the mediumClassic layout, a metric that directly comes from having a high average winning score. This can be done through different strategies, for example through chasing eatable ghosts.
A couple of things to be noted. Let W be the set of games won, i.e., |W | ∈ [0, 25]. For any won game i ∈ W define sw(i) to be the score obtained in game/run i.
• ∆Se in the marksheet is the Excellence Score Difference. You can use the following formula to calculate it when you test your code and compare the result against the values in Table 3
∆Se = 􏰀(sw(i) − 1500) (1) i∈W
Losses count as 0 score and are not considered. If ∆Se < 0, we set it to 0 (you cannot have a negative excellence score difference).
• Because smallGrid does not have room for score improvement, we will only look at the mediumClassic layout
• You can still get excellence points if your code performs poorly in the number of wins; marking points are assigned independently in the two sections
• Note however that marking points are assigned such that it is not convenient for you to directly aim for a higher average winning score without securing previous sections’s aims (a) and (b) first
• We will use the same runs in mediumClassic to derive the marks for Table 2 and Table 3.
3.2 Things to bear in mind
Some things that you may find helpful:
(a) We will evaluate whether your code can win games in smallGrid by running: python pacman.py -q -n 25 -p MDPAgent -l smallGrid
-l is shorthand for -layout. -p is shorthand for -pacman. -q runs the game without the interface (making it faster).
(b) We will evaluate whether your code can win games in mediumClassic by running: python pacman.py -q -n 25 -p MDPAgent -l mediumClassic
The -n 25 runs 25 games in a row.
 2 Mallmann-Trenn / McBurney / 6ccs3ain-cw

(c) The time limit for evlauation is 25 minute for mediumClassic and 5 minutes for small grid. It will run on a high performance computer with 26 cores and 192 Gb of RAM. The time constraints are chosen after repeated practical experience and reflect a fair time bound.
(d) When using the -n option to run multiple games, the same agent (the same instance of MDPAgent.py) is run in all the games.
That means you might need to change the values of some of the state variables that control Pacman’s behaviour in between games. You can do that using the final() function.
(e) There is no requirement to use any of the methods described in the practicals, though you can use these if you wish.
(f) If you wish to use the map code I provided in MapAgent, you may do this, but you need to include comments that explain what you used and where it came from (just as you would for any code that you make use of but don’t write yourself).
(g) You can only use libraries that are part of a the standard Python 2.7 distribution. This ensures that (a) everyone has access to the same libraries (since only the standard distribution is available on the lab machines) and (b) we don’t have trouble running your code due to some library incompatibilities.
(h) You should comment your code and have a consistent style all over the file.
3.3 Limitations
There are some limitations on what you can submit.
(a) Your code must be in Python 2.7. Code written in a language other than Python will not be marked.
Code written in Python 3.X is unlikely to run with the clean copy of pacman-cw that we will test it against. If is doesn’t run, you will lose marks.
Code using libraries that are not in the standard Python 2.7 distribution will not run (in particular, NumPy is not allowed). If you choose to use such libraries and your code does not run as a result, you will lose marks.
(b) Your code must only interact with the Pacman environment by making calls through func- tions in Version 6 of api.py. Code that finds other ways to access information about the environment will lose marks.
The idea here is to have everyone solve the same task, and have that task explore issues with non-deterministic actions.
(c) You are not allowed to modify any of the files in pacman-cw.zip except mdpAgents.py.
Similar to the previous point, the idea is that everyone solves the same problem — you can’t change the problem by modifying the base code that runs the Pacman environment. Therefore, you are not allowed to modify the api.py file.
(d) You are not allowed to copy, without credit, code that you might get from other students or find lying around on the Internet. We will be checking.
This is the usual plagiarism statement. When you submit work to be marked, you should only seek to get credit for work you have done yourself. When the work you are submitting is code,
 3 Mallmann-Trenn / McBurney / 6ccs3ain-cw

(e) (f) (g)
4
you can use code that other people wrote, but you have to say clearly that the other person wrote it — you do that by putting in a comment that says who wrote it. That way we can adjust your mark to take account of the work that you didn’t do.
Your code must be based on solving the Pacman environment as an MDP. If you don’t submit a program that contains a recognisable MDP solver, you will lose marks.
The only MDP solvers we will allow are the ones presented in the lecture, i.e., Value iteration, Policy iteration and Modified policy iteration. In particular, Q-Learning is unacceptable.
Your code must only use the results of the MDP solver to decide what to do. If you submit code which makes decisions about what to do that uses other information in addition to what the MDP-solver generates (like ad-hoc ghost avoiding code, for example), you will lose marks.
This is to ensure that your MDP-solver is the thing that can win enough games to pass the functionality test.
What you have to hand in
Your submission should consist of a single ZIP file. (KEATS will be configured to only accept a single file.) This ZIP file must include a single Python .py file (your code).
The ZIP file must be named:
cw <lastname> <firstname>.zip
so my ZIP file would be named cw mallmann-trenn frederik.zip.
Remember that we are going to evaluate your code by running your code by using variations on
     python pacman.py -p MDPAgent
(see Section 5 for the exact commands we will use) and we will do this in a vanilla copy of the pacman-cw folder, so the base class for your MDP-solving agent must be called MDPAgent.
To streamline the marking of the coursework, you must put all your code in one file, and this file must be called mdpAgents.py,
Do not just include the whole pacman-cw folder. You should only include the one file that includes the code you have written.
Submissions that do not follow these instructions will lose marks. That includes submissions which are RAR files. RAR is not ZIP.
5 How your work will be marked
See cw-marksheet.pdf for more information about the marking. There will be six components of the mark for your work:
(a) Functionality
We will test your code by running your .py file against a clean copy of pacman-cw.
As discussed above, the number of games you win determines the number of marks you get. Since we will check it this way, you may want to reset any internal state in your agent using
 4 Mallmann-Trenn / McBurney / 6ccs3ain-cw

final() (see Section 3.2). For the excellence marks, we will look at the winning scores for the mediumClassic layout.
Since we have a lot of coursework to mark, we will limit how long your code has to demonstrate that it can win. We will terminate the run of the 25smallGrid games after 5 minutes, and will terminate the run of the 25 mediumClassic games after 25 minutes. If your code has failed to win enough games within these times, we will mark it as if it lost. Note that we will use the -q command, which runs Pacman without the interface, to speed things up.
Code not written in Python will not be marked.
(b) Style There are no particular requirements on the way that your code is structured, but it should follow standard good practice in software development and will be marked accordingly.
Remember that your code is only allowed to interact with the Pacman environment through version 6 of api.py. Code that does not follow this rule will lose marks.
(c) Documentation
All good code is well documented, and your work will be partly assessed by the comments you provide in your code. If we cannot understand from the comments what your code does, then you will lose marks. At the same time, comments are not intended to be paragraph-long, but brief sentences. Good code should explain itself for the most part.
A copy of the marksheet, which shows the distribution of marks across the different elements of the coursework, will be available from KEATS.
 5 Mallmann-Trenn / McBurney / 6ccs3ain-cw
請加QQ:99515681 或郵箱:99515681@qq.com   WX:codehelp

掃一掃在手機打開當前頁
  • 上一篇:代做CSc 360、代寫A Simple File程序
  • 下一篇:&#160;代做EEE226、java,c++編程代寫
  • 無相關信息
    合肥生活資訊

    合肥圖文信息
    2025年10月份更新拼多多改銷助手小象助手多多出評軟件
    2025年10月份更新拼多多改銷助手小象助手多
    有限元分析 CAE仿真分析服務-企業/產品研發/客戶要求/設計優化
    有限元分析 CAE仿真分析服務-企業/產品研發
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    急尋熱仿真分析?代做熱仿真服務+熱設計優化
    出評 開團工具
    出評 開團工具
    挖掘機濾芯提升發動機性能
    挖掘機濾芯提升發動機性能
    海信羅馬假日洗衣機亮相AWE  復古美學與現代科技完美結合
    海信羅馬假日洗衣機亮相AWE 復古美學與現代
    合肥機場巴士4號線
    合肥機場巴士4號線
    合肥機場巴士3號線
    合肥機場巴士3號線
  • 短信驗證碼 trae 豆包網頁版入口 目錄網 排行網

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 hfw.cc Inc. All Rights Reserved. 合肥網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    日韩精品一区二区三区高清_久久国产热这里只有精品8_天天做爽夜夜做爽_一本岛在免费一二三区

      <em id="rw4ev"></em>

        <tr id="rw4ev"></tr>

        <nav id="rw4ev"></nav>
        <strike id="rw4ev"><pre id="rw4ev"></pre></strike>
        亚洲欧洲精品一区二区三区不卡| 国产精品入口日韩视频大尺度| 免费欧美日韩国产三级电影| 国产伦精品一区二区三区四区免费| 亚洲国产高清一区二区三区| 久久亚洲午夜电影| 欧美日韩中文字幕综合视频| 狂野欧美一区| 亚洲人被黑人高潮完整版| 久久综合狠狠综合久久综青草| 亚洲欧美中文日韩v在线观看| 亚洲国产精品99久久久久久久久| 亚洲午夜国产成人av电影男同| 欧美亚洲日本国产| 亚洲精品免费看| 久久av二区| 国产伦理一区| 欧美美女bb生活片| 欧美日韩免费观看一区三区| 狠狠狠色丁香婷婷综合激情| 一区二区三区精品| 亚洲欧洲在线观看| 亚洲欧美在线一区| 亚久久调教视频| 欧美刺激性大交免费视频| 久久精品国产欧美激情| 亚洲欧美日本国产专区一区| 亚洲精品婷婷| 亚洲一区成人| 国产精品高潮粉嫩av| 国产精品第13页| 久久九九久久九九| 国产欧美韩国高清| 亚洲国产高清aⅴ视频| 久久亚洲二区| 午夜精品视频| 国产精品高潮呻吟久久| 99精品热视频只有精品10| 国产日韩久久| 亚洲欧美日韩综合| 欧美一级成年大片在线观看| 欧美日韩亚洲91| 午夜视频一区在线观看| 久久一区二区三区国产精品| 久久久久综合| 在线成人免费观看| 欧美一乱一性一交一视频| 久久久国产成人精品| 亚洲一区二区精品在线| 韩国精品在线观看| 亚洲日本中文字幕区| 午夜精品成人在线| 欧美三级乱人伦电影| 欧美日韩亚洲综合在线| 国产精品99久久久久久久久久久久| 久久久精品一品道一区| 国产精品视频一二| 久久超碰97中文字幕| 久久精品免费播放| 一本色道久久88亚洲综合88| 亚洲午夜高清视频| 久久一区二区三区四区| 国产精品美女久久福利网站| 国产日韩欧美一区二区三区在线观看| 在线成人亚洲| 亚洲日本中文字幕区| 亚洲一区视频在线| 亚洲人成在线观看一区二区| 欧美激情第4页| 亚洲欧美在线磁力| 香蕉视频成人在线观看| 红桃视频国产精品| 欧美乱大交xxxxx| 日韩视频免费看| aaa亚洲精品一二三区| 久久天天躁狠狠躁夜夜爽蜜月| 国产精品视频xxx| 亚洲国产99| 欧美视频在线免费看| 欧美二区在线播放| 久久久99国产精品免费| 国产精品专区第二| 亚洲一区二区在线免费观看视频| 亚洲免费在线观看视频| 欧美国产欧美亚州国产日韩mv天天看完整| 欧美freesex交免费视频| 亚洲欧美综合一区| 久久九九免费| 国产精品久久久久久影院8一贰佰| 国产精品久久一区主播| 亚洲欧美变态国产另类| 亚洲精品一线二线三线无人区| 亚洲精品123区| 韩国欧美一区| 欧美日韩一区三区四区| 久久久久久久综合| 亚洲美女诱惑| 久久精品免费电影| 在线观看亚洲视频| 久久综合色88| 999在线观看精品免费不卡网站| 欧美成人综合网站| 欧美日本精品在线| 99精品视频免费| 狠狠操狠狠色综合网| 中文高清一区| 国产精品成人一区二区艾草| 亚洲美女一区| 久久精品一二三区| 韩国欧美一区| 亚洲一二三区在线观看| 在线观看亚洲专区| 久久久之久亚州精品露出| 国产日产亚洲精品| 精东粉嫩av免费一区二区三区| 亚洲午夜影视影院在线观看| 一本色道久久99精品综合| 一区二区黄色| 亚洲视频自拍偷拍| 国产亚洲一级| 欧美日韩在线一区| 欧美电影在线免费观看网站| 欧美激情精品久久久六区热门| 国产亚洲福利社区一区| 欧美成人高清视频| 国产精品中文字幕在线观看| 亚洲人成网站在线观看播放| 国产精品久久久久久户外露出| 亚洲一区3d动漫同人无遮挡| 欧美有码在线观看视频| 久久综合久久综合这里只有精品| 欧美黑人在线播放| 亚洲天堂av高清| 亚洲精品视频一区| 一区二区三区精品| 中日韩在线视频| 亚洲福利国产精品| 亚洲狠狠丁香婷婷综合久久久| 久热精品视频在线免费观看| 欧美精品高清视频| 欧美一级电影久久| 欧美精品激情在线观看| 99国产一区二区三精品乱码| 欧美一级淫片播放口| 欧美精品日韩综合在线| 国产精品www网站| 亚洲欧洲美洲综合色网| 老司机精品视频一区二区三区| 亚洲区欧美区| 欧美色偷偷大香| 国产精品扒开腿爽爽爽视频| 国产精品入口夜色视频大尺度| 欧美久久久久久久久久| 欧美超级免费视 在线| 亚洲精选中文字幕| 久久久国产精品一区| 蜜桃av综合| 亚洲一级高清| 欧美国产一区二区在线观看| 亚洲一区二区在线免费观看视频| 国产精品美女xx| 国产精品不卡在线| 国产在线不卡| 1024成人网色www|