久久久久久精品无码人妻_青春草无码精品视频在线观_无码精品国产VA在线观看_国产色无码专区在线观看

代做Lab 2: Time Series Prediction with GP

時間:2024-03-21  來源:  作者: 我要糾錯



Evolutionary Computation 2023/2024
Lab 2: Time Series Prediction with GP
Released: February 26, 2024
Deadline: March 18, 2024
Weight: 25 %
You need to implement one program that solves Exercises 1-3 using any programming language.
In Exercise 5, you will run a set of experiments and describe the result using plots and a short
discussion.
(In the following, replace abc123 with your username.) You need to submit one zip file
with the name ec2024-lab2-abc123.zip. The zip file should contain one directory named
ec2024-lab2-abc123 containing the following files:
• the source code for your program
• a Dockerfile (see the appendix for instructions)
• a PDF file for Exercises 4 and 5
In this lab, we will do a simple form of time series prediction. We assume that we are given some
historical data, (e.g. bitcoin prices for each day over a year), and need to predict the next value in
the time series (e.g., tomorrow’s bitcoin value).
1
We formulate the problem as a regression problem. The training data consists of a set of m
input vectors X = (x
(0), . . . , x(m−1)) representing historical data, and a set of m output values
Y = (x
(0), . . . , x(m−1)), where for each 0 ≤ j ≤ m − 1, x
(j) ∈ R
n and y
(j) ∈ R. We will use genetic
programming to evolve a prediction model f : R
n → R, such that f(x
(j)
) ≈ y
(j)
.
Candidate solutions, i.e. programs, will be represented as expressions, where each expression evaluates to a value, which is considered the output of the program. When evaluating an expression,
we assume that we are given a current input vector x = (x0, . . . , xn−1) ∈ R
n. Expressions and evaluations are defined recursively. Any floating number is an expression which evaluates to the value
of the number. If e1, e2, e3, and e4 are expressions which evaluate to v1, v2, v3 and v4 respectively,
then the following are also expressions
• (add e1 e2) is addition which evaluates to v1 + v2, e.g. (add 1 2)≡ 3
• (sub e1 e2) is subtraction which evaluates to v1 − v2, e.g. (sub 2 1)≡ 1
• (mul e1 e2) is multiplication which evaluates to v1v2, e.g. (mul 2 1)≡ 2
• (div e1 e2) is division which evaluates to v1/v2 if v2 ̸= 0 and 0 otherwise, e.g., (div 4 2)≡ 2,
and (div 4 0)≡ 0,
• (pow e1 e2) is power which evaluates to v
v2
1
, e.g., (pow 2 3)≡ 8
• (sqrt e1) is the square root which evaluates to √
v1, e.g.(sqrt 4)≡ 2
• (log e1) is the logarithm base 2 which evaluates to log(v1), e.g. (log 8)≡ 3
• (exp e1) is the exponential function which evaluates to e
v1
, e.g. (exp 2)≡ e
2 ≈ 7.39
• (max e1 e2) is the maximum which evaluates to max(v1, v2), e.g., (max 1 2)≡ 2
• (ifleq e1 e2 e3 e4) is a branching statement which evaluates to v3 if v1 ≤ v2, otherwise the
expression evaluates to v4 e.g. (ifleq 1 2 3 4)≡ 3 and (ifleq 2 1 3 4)≡ 4
• (data e1) is the j-th element xj of the input, where j ≡ |⌊v1⌋| mod n.
• (diff e1 e2) is the difference xk − xℓ where k ≡ |⌊v1⌋| mod n and ℓ ≡ |⌊v2⌋| mod n
• (avg e1 e2) is the average 1
|k−ℓ|
Pmax(k,ℓ)−1
t=min(k,ℓ)
xt where k ≡ |⌊v1⌋| mod n and ℓ ≡ |⌊v2⌋|
mod n
In all cases where the mathematical value of an expression is undefined or not a real number (e.g.,

−1, 1/0 or (avg 1 1)), the expression should evaluate to 0.
We can build large expressions from the recursive definitions. For example, the expression
(add (mul 2 3) (log 4))
evaluates to
2 · 3 + log(4) = 6 + 2 = 8.
2
To evaluate the fitness of an expression e on a training data (X , Y) of size m, we use the mean
square error
f(e) = 1
m
mX−1
j=0

y
(j) − e(x
(j)
)
2
,
where e(x
(j)
) is the value of the expression e when evaluated on the input vector x
(j)
.
3
Exercise 1. (30 % of the marks)
Implement a routine to parse and evaluate expressions. You can assume that the input describes a
syntactically correct expression. Hint: Make use of a library for parsing s-expressions1
, and ensure
that you evaluate expressions exactly as specified on page 2.
Input arguments:
• -expr an expression
• -n the dimension of the input vector n
• -x the input vector
• -question the question number (always 1 in this case)
Output:
• the value of the expression
Example: In this example, we assume that your program has been compiled to an executable with
the name my lab solution.
[pkl@phi ocamlec]$ my_lab_solution -question 1 -n 1 -x "1.0"
-expr "(mul (add 1 2) (log 8))"
9.0
[pkl@phi ocamlec]$ my_lab_solution -question 1 -n 2 -x "1.0 2.0"
-expr "(max (data 0) (data 1))"
2.0
Exercise 2. (10 % of the marks) Implement a routine which computes the fitness of an expression
given a training data set.
Input arguments:
• -expr an expression
• -n the dimension of the input vector
• -m the size of the training data (X , Y)
• -data the name of a file containing the training data in the form of m lines, where each line
contains n + 1 values separated by tab characters. The first n elements in a line represents
an input vector x, and the last element in a line represents the output value y.
• -question the question number (always 2 in this case)
1See e.g. implementations here http://rosettacode.org/wiki/S-Expressions
4
Output:
• The fitness of the expression, given the data.
Exercise 3. (30 % of the marks)
Design a genetic programming algorithm to do time series forecasting. You can use any genetic
operators and selection mechanism you find suitable.
Input arguments:
• -lambda population size
• -n the dimension of the input vector
• -m the size of the training data (X , Y)
• -data the name of a file containing training data in the form of m lines, where each line
contains n + 1 values separated by tab characters. The first n elements in a line represents
an input vector x, and the last element in a line represents the output value y.
• -time budget the number of seconds to run the algorithm
• -question the question number (always 3 in this case)
Output:
• The fittest expression found within the time budget.
Exercise 4. (10 % of the marks) Here, you should do one of the following exercises.
If you follow LH Evolutionary Computation, do the following exercise: Describe your
algorithm from Exercise 3 in the form of pseudo-code. The pseudo-code should be sufficiently detailed
to allow an exact re-implementation.
If you follow LM Evolutionary Computation (extended), do the following exercise:
Describe in 150 words or less the result in one recent research paper on the topic “symbolic regression
using genetic programming”. The paper needs to be published in 2020 or later in the proceedings of
one of the following conferences: GECCO, PPSN, CEC, or FOGA.
5
Exercise 5. (20 % of the marks)
In this final task, you should try to determine parameter settings for your algorithm which lead to
as fit expressions as possible.
Your algorithm is likely to have several parameters, such as the population size, mutation rates,
selection mechanism, and other mechanisms components, such as diversity mechanisms.
Choose parameters which you think are essential for the behaviour of your algorithm. Run a set of
experiments to determine the impact of these parameters on the solution quality. For each parameter
setting, run 100 repetitions, and plot box plots of the fittest solution found within the time budget.
6
A. Docker Howto
Follow these steps exactly to build, test, save, and submit your Docker image. Please replace abc123
in the text below with your username.
1. Install Docker CE on your machine from the following website:
https://www.docker.com/community-edition
2. Copy the PDF file from Exercises 4 and 5 all required source files, and/or bytecode to an
empty directory named ec2024-lab2-abc123 (where you replace abc123 with your username).
mkdir ec2024 - lab2 - abc123
cd ec2024 - lab2 - abc123 /
cp ../ exercise . pdf .
cp ../ abc123 . py .
3. Create a text file Dockerfile file in the same directory, following the instructions below.
# Do not change the following line . It specifies the base image which
# will be downloaded when you build your image .
FROM pklehre / ec2024 - lab2
# Add all the files you need for your submission into the Docker image ,
# e . g . source code , Java bytecode , etc . In this example , we assume your
# program is the Python code in the file abc123 . py . For simplicity , we
# copy the file to the / bin directory in the Docker image . You can add
# multiple files if needed .
ADD abc123 . py / bin
# Install all the software required to run your code . The Docker image
# is derived from the Debian Linux distribution . You therefore need to
# use the apt - get package manager to install software . You can install
# e . g . java , python , ghc or whatever you need . You can also
# compile your code if needed .
# Note that Java and Python are already installed in the base image .
# RUN apt - get update
# RUN apt - get -y install python - numpy
# The final line specifies your username and how to start your program .
# Replace abc123 with your real username and python / bin / abc123 . py
# with what is required to start your program .
CMD [" - username " , " abc123 " , " - submission " , " python / bin / abc123 . py "]
7
4. Build the Docker image as shown below. The base image pklehre/ec2024-lab2 will be
downloaded from Docker Hub
docker build . -t ec2024 - lab2 - abc123
5. Run the docker image to test that your program starts. A battery of test cases will be executed
to check your solution.
docker run ec2024 - lab2 - abc123
6. Once you are happy with your solution, compress the directory containing the Dockerfile as
a zip-file. The directory should contain the source code, the Dockerfile, and the PDF file
for Exercise 4 and 5. The name of the zip-file should be ec2024-lab2-abc123.zip (again,
replace the abc123 with your username).
Following the example above, the directory structure contained in the zip file should be as
follows:
ec2024-lab2-abc123/exercise.pdf
ec2024-lab2-abc123/abc123.py
ec2024-lab2-abc123/Dockerfile
Submissions which do not adhere to this directory structure will be rejected!
7. Submit the zip file ec2024-lab2-abc123.zip on Canvas.
請加QQ:99515681  郵箱:99515681@qq.com   WX:codehelp 

標簽:

掃一掃在手機打開當前頁
  • 上一篇:代寫CSIE3310、代做c++/Python編程
  • 下一篇:AIST1110代做、Python編程設計代寫
  • 無相關信息
    昆明生活資訊

    昆明圖文信息
    蝴蝶泉(4A)-大理旅游
    蝴蝶泉(4A)-大理旅游
    油炸竹蟲
    油炸竹蟲
    酸筍煮魚(雞)
    酸筍煮魚(雞)
    竹筒飯
    竹筒飯
    香茅草烤魚
    香茅草烤魚
    檸檬烤魚
    檸檬烤魚
    昆明西山國家級風景名勝區
    昆明西山國家級風景名勝區
    昆明旅游索道攻略
    昆明旅游索道攻略
  • 短信驗證碼平臺 理財 WPS下載

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

    Copyright © 2025 kmw.cc Inc. All Rights Reserved. 昆明網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    久久久久久精品无码人妻_青春草无码精品视频在线观_无码精品国产VA在线观看_国产色无码专区在线观看

    超碰av在线免费观看| 精品一区二区成人免费视频| 婷婷免费在线观看| a级黄色片免费| 在线播放免费视频| 免费国产成人av| 黄色网页免费在线观看| 日本a在线天堂| 老汉色影院首页| wwwwwxxxx日本| www.99av.com| 性欧美极品xxxx欧美一区二区| 国产视频一视频二| 成人黄色av片| 久艹视频在线免费观看| 大伊香蕉精品视频在线| 欧美激情亚洲天堂| 国产精品啪啪啪视频| 日本免费在线视频观看| 国产精品探花在线播放| 亚洲视频一二三四| av免费一区二区| 国产性生活一级片| 日本黄色播放器| 1314成人网| 亚洲色图都市激情| 日韩成人手机在线| 少妇人妻无码专区视频| 大陆极品少妇内射aaaaa| www.99热这里只有精品| 日本免费不卡一区二区| av片中文字幕| 欧美婷婷精品激情| 色噜噜狠狠永久免费| 福利视频999| 午夜久久久久久久久久久| 91免费国产精品| 欧美啪啪免费视频| 最近免费中文字幕中文高清百度| 国产精品视频分类| 男女啪啪的视频| 欧美精品在欧美一区二区| 你真棒插曲来救救我在线观看| 日本在线视频www| 污污的视频免费| 中国一级黄色录像| 欧美精品一区二区三区三州| 日韩毛片在线免费看| 日本不卡一区二区在线观看| 黄色高清视频网站| 国产av人人夜夜澡人人爽麻豆| 欧美亚洲国产成人| 色播五月激情五月| 精品视频在线观看一区二区| a√天堂在线观看| 四季av一区二区三区| 久久福利一区二区| 成人毛片视频网站| 午夜精品久久久久久久99热影院| 欧美少妇一区二区三区| www国产精品内射老熟女| 日本中文字幕观看| 99热亚洲精品| 一级在线免费视频| 中国女人做爰视频| 大肉大捧一进一出好爽动态图| 蜜桃福利午夜精品一区| 福利在线一区二区| 久久精品影视大全| 免费看日本黄色| 五月婷婷激情久久| 男人添女人下部视频免费| 午夜免费高清视频| 久无码久无码av无码| www.色就是色.com| 欧美视频在线播放一区| 在线无限看免费粉色视频| 日日碰狠狠添天天爽超碰97| 日本网站在线看| 免费在线观看毛片网站| 可以免费看的黄色网址| 成年人小视频网站| 日韩美女爱爱视频| 五月天丁香花婷婷| 亚洲成熟丰满熟妇高潮xxxxx| 天天想你在线观看完整版电影免费| 成年人在线看片| 日韩欧美国产综合在线| 大地资源第二页在线观看高清版| 国内外免费激情视频| 日韩久久久久久久久久久久| 在线观看免费不卡av| 色欲av无码一区二区人妻| 日本三级中文字幕在线观看| 91国内在线播放| 国产三区在线视频| 黄色片免费在线观看视频| 中文字幕 日韩 欧美| 欧美一级黄色片视频| 欧日韩免费视频| 女女同性女同一区二区三区按摩| 日韩精品一区二区三区色欲av| 日韩精品在线观看av| 丰满女人性猛交| 污污网站在线观看视频| 欧美亚洲国产成人| 九色自拍视频在线观看| 中文字幕在线中文| 美女黄色片网站| 色婷婷激情视频| 超碰超碰在线观看| 欧美三级理论片| 热久久精品免费视频| 97超碰青青草| 91免费黄视频| 91午夜在线观看| 韩国无码av片在线观看网站| 50度灰在线观看| 999久久欧美人妻一区二区| www.黄色网址.com| 免费观看黄色大片| 日本一区二区三区四区五区六区| 免费成人黄色大片| 图片区乱熟图片区亚洲| 在线不卡一区二区三区| 午夜一区二区视频| 亚洲精品国产一区二区三区| 亚洲黄色av片| 992kp免费看片| 成人高清在线观看视频| 51xx午夜影福利| 欧美一级中文字幕| 大胆欧美熟妇xx| 国产极品尤物在线| 国产肥臀一区二区福利视频| 欧美xxxxx在线视频| 亚洲第一狼人区| 天堂av2020| 91视频成人免费| 六月婷婷在线视频| 国产熟女高潮视频| 亚洲一区二区蜜桃| 女人高潮一级片| 国产又大又长又粗又黄| 黄色片免费在线观看视频| 日韩小视频在线播放| 国产精品免费成人| 日韩av.com| 国产一级不卡视频| 国产v片免费观看| 一本久道综合色婷婷五月| 欧美视频国产视频| 成人av在线播放观看| 少妇高潮毛片色欲ava片| 丰满少妇被猛烈进入高清播放| 好男人www社区| 手机精品视频在线| 日韩精品视频在线观看视频 | aaaaaaaa毛片| 成人在线免费高清视频| 欧美变态另类刺激| 成人性生交免费看| 最近免费观看高清韩国日本大全| 欧美成人三级在线视频| 小泽玛利亚视频在线观看| 欧美一级免费在线观看| 国产一区二区在线视频播放| 中文字幕第21页| 青青视频免费在线观看| 99精品免费在线观看| 91亚洲一区二区| 青青青在线视频播放| 天天干天天干天天干天天干天天干| 香蕉视频色在线观看| 欧美成人免费在线观看视频| 中文字幕第88页| 日韩成人三级视频| 中文字幕国内自拍| 久久久亚洲国产精品| 五月天开心婷婷| 亚洲中文字幕无码专区| 亚洲天堂伊人网| 成人免费在线小视频| 色男人天堂av| 99热成人精品热久久66| 四虎精品欧美一区二区免费| 北条麻妃在线一区| 日韩黄色片在线| www激情五月| 午夜精品久久久内射近拍高清| 97av中文字幕| 亚洲精品手机在线观看| 男人天堂网视频| 欧美 亚洲 视频| 91制片厂毛片| 97在线免费公开视频| 国产女教师bbwbbwbbw| 三区视频在线观看| 污污视频网站免费观看| 97在线国产视频|