CloudSimPy下载:
GitHub地址:https://github.com/FengcunLi/CloudSimPy
使用git
git clone git@github.com:RobertLexis/CloudSimPy.git
依赖包安装:
运行需要的依赖包:
- Python 3.6
- SimPy 3.0.11
- TensorFlow 1.12.0
- Numpy 1.15.3
- Pandas 0.23.4
我使用的是conda虚拟环境,执行一下命令:
安装Python
conda install python==3.6.13
安装TensorFlow
conda install tensorflow==1.12.0
安装Numpy
conda install numpy==1.15.3
安装Pandas
conda install pandas==0.23.4
在安装simpy时不能用conda直接安装,需要安装本地包,下载地址:
百度网盘下载链接
提取码:qypv
下载后直接在目录文件夹中运行:
pip install simpy-3.0.11.tar.gz
python路径配置:
需要在系统变量中配置路径如图:
这里需要注意要配置到CloudSimPy-master文件,不然会出现问题
运行:
在Windows上直接运行Non_DAG会报错如图所示:
有两种解决方案
第一种
这里是windows运行多线程会出现问题,以下代码:
for i in range(n_episode):
algorithm = RLAlgorithm(agent, reward_giver, features_extract_func=features_extract_func,
features_normalize_func=features_normalize_func)
episode = Episode(machine_configs, jobs_configs, algorithm, None)
algorithm.reward_giver.attach(episode.simulation)
p = Process(target=multiprocessing_run,
args=(episode, trajectories, makespans, average_completions, average_slowdowns))
processes.append(p)
for p in processes:
p.start()
for p in processes:
p.join()
替换为:
for i in range(n_episode):
algorithm = RLAlgorithm(agent, reward_giver, features_extract_func=features_extract_func,
features_normalize_func=features_normalize_func)
episode = Episode(machine_configs, jobs_configs, algorithm, None)
algorithm.reward_giver.attach(episode.simulation)
multiprocessing_run(episode, trajectories, makespans, average_completions, average_slowdowns)
改为单线程就可正常运行
第二种
改为用Linux运行代码
运行成功