精品深夜AV无码一区二区_伊人久久无码中文字幕_午夜无码伦费影视在线观看_伊人久久无码精品中文字幕

代做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

    精品深夜AV无码一区二区_伊人久久无码中文字幕_午夜无码伦费影视在线观看_伊人久久无码精品中文字幕
    <samp id="e4iaa"><tbody id="e4iaa"></tbody></samp>
    <ul id="e4iaa"></ul>
    <blockquote id="e4iaa"><tfoot id="e4iaa"></tfoot></blockquote>
    • <samp id="e4iaa"><tbody id="e4iaa"></tbody></samp>
      <ul id="e4iaa"></ul>
      <samp id="e4iaa"><tbody id="e4iaa"></tbody></samp><ul id="e4iaa"></ul>
      <ul id="e4iaa"></ul>
      <th id="e4iaa"><menu id="e4iaa"></menu></th>
      五月天中文字幕| 亚洲中文字幕一区二区| 国产欧美激情视频| 91精产国品一二三产区别沈先生| 手机在线不卡av| 欧美图片一区二区| 久久久久亚洲AV成人无在| 国产精品自拍视频一区| 香蕉网在线视频| 免费黄色三级网站| 国产欧美一区二区三区在线观看视频| 午夜影院在线看| 日本特黄特色aaa大片免费| 天天操中文字幕| 亚洲区小说区图片区| 97精品人妻一区二区三区香蕉| 中文字幕在线视频精品| 五月婷婷一区二区三区| 精品一区免费观看| 可以直接看的无码av| 国产一二三四在线视频| 久久久久久久中文字幕| 国产精品一区二区小说 | 欧美成人精品网站| 欧美黑人精品一区二区不卡| 精品人妻伦一区二区三区久久| 精品国产www| 少妇无套高潮一二三区| 欧美久久久久久久久久久| 乱精品一区字幕二区| 欧美日韩怡红院| 天堂网一区二区| 亚洲欧美在线视频免费| 高清一区在线观看| 秋霞网一区二区| 少妇视频一区二区| 午夜一区在线观看| 91精品国产乱码久久| www午夜视频| 日本特黄特色aaa大片免费| 日本福利片在线观看| 中文字幕一二三四| 国产精品.www| 午夜一区二区三区免费| 怡春院在线视频| 好吊视频一二三区| 亚洲成人网在线播放| 亚洲女人久久久| 国产一级特黄视频| 五月婷婷激情在线| 丰满人妻一区二区三区大胸| 国精品无码人妻一区二区三区| 欧美日韩午夜视频| 中文写幕一区二区三区免费观成熟 | 久久久精品少妇| 中文字幕在线观看第二页| 97久久人国产精品婷婷| 久久久久人妻一区精品色| 影音先锋亚洲天堂| 国产欧美一区二区三区在线观看视频| 欧美风情第一页| 99热这里只有精品2| 天天综合在线视频| 国产3p在线播放| 欧美成人精品一区二区免费看片| 亚洲欧美日韩一区二区三区四区| 国产亚洲小视频| 亚洲熟女少妇一区二区| 精品国产999久久久免费| 中文字幕精品视频在线| 久久久久久久黄色| www.av黄色| 熟妇人妻一区二区三区四区 | 极品粉嫩小仙女高潮喷水久久| 亚洲av无码一区二区三区网址| 精品99在线观看| 91精品国产闺蜜国产在线闺蜜 | 人妻视频一区二区| 99自拍视频在线| 思思久久精品视频| 精品亚洲aⅴ无码一区二区三区| 亚洲av综合色区无码一区爱av| 国产一级黄色av| 91午夜精品亚洲一区二区三区| 欧美人一级淫片a免费播放| a天堂在线视频| 亚洲免费在线观看av| 天天综合成人网| 欧美日韩人妻精品一区二区三区| 国产精品福利导航| 99精品视频99| 永久免费未满蜜桃| 色呦呦一区二区| 欧美高清精品一区二区| 一出一进一爽一粗一大视频| 午夜国产在线观看| 男人天堂视频网| 九九热在线免费| 精品丰满少妇一区二区三区| 99热在线只有精品| 亚洲人人夜夜澡人人爽| 在线黄色av网站| 亚洲国产精品欧美久久| 亚洲熟妇无码av| 99久久久久久久| 成人亚洲精品777777大片| www.久久久久久久久久久| 北条麻妃亚洲一区| 成人一级片免费看| 国产精品18在线| 国产福利在线观看视频| 国产精品自拍99| 国产无人区码熟妇毛片多| 国产在线欧美在线| 欧美熟妇一区二区| 深夜福利网站在线观看| 一区二区三区免费在线| 亚洲制服在线观看| a级在线免费观看| 国产乱国产乱老熟300| 国产特级黄色片| 欧美一级做a爰片免费视频| 日韩中文字幕有码| 亚洲精品免费在线观看视频| jizz国产在线| 国产成人手机在线| 精品不卡一区二区| 婷婷五月精品中文字幕| 一本久道久久综合无码中文| 国产福利第一视频| 久草视频手机在线观看| 婷婷激情五月网| av天堂一区二区三区| 国产主播中文字幕| 三级网站免费看| av免费一区二区| 久一区二区三区| 亚洲精品午夜久久久久久久| 国产精品乱码一区二区| 久久人妻少妇嫩草av蜜桃 | 欧美日韩精品亚洲精品| 又色又爽又黄18网站| 国产超碰在线播放| 六月婷婷中文字幕| 中文字幕日韩三级片| 国产亚洲色婷婷久久99精品91 | 91av免费观看| 久久久久久无码午夜精品直播| 伊人网在线综合| 国产免费不卡av| 少妇特黄一区二区三区| av手机天堂网| 手机av在线不卡| www视频在线| 日日噜噜噜噜人人爽亚洲精品| 亚洲精品乱码久久久久久久| 久久精品一卡二卡| 亚洲国产欧美91| 人人妻人人澡人人爽人人欧美一区| 朝桐光av在线一区二区三区| 五月激情丁香网| 乱精品一区字幕二区| a一级免费视频| 亚洲av鲁丝一区二区三区| 国产乱叫456| 中文字幕一区二区三区乱码不卡| 精品黑人一区二区三区| 亚洲精品理论片| 特级丰满少妇一级aaaa爱毛片| 国产成人精品av在线观| 无码黑人精品一区二区| 麻豆一区二区三区精品视频| 国产精品成人aaaa在线| 亚洲精品久久久久久无码色欲四季 | 国产婷婷在线视频| 中文字幕+乱码+中文乱码91| 欧美激情第3页| 精品人妻一区二区三区日产乱码| 99久久人妻无码中文字幕系列| 少妇激情一区二区三区视频| 国产精品黄色网| www.国产色| 91久久精品无码一区二区| 五月天综合视频| 色窝窝无码一区二区三区成人网站| 国产精品成人久久| 亚洲一二区视频| 亚洲成人一二三区| 日韩精品――中文字幕| 精品国产乱码久久久久夜深人妻| 亚洲美女在线播放| 天天操天天摸天天舔| 日韩视频在线观看一区| 玖玖爱在线精品视频| 久久99久久98精品免观看软件 | 丰满熟妇人妻中文字幕| 亚洲男人第一av| 亚洲欧美激情一区二区三区 | 天堂资源在线视频| 熟妇人妻一区二区三区四区|