liuyuqi-dellpc 5 years ago
parent
commit
69eccc5737
3 changed files with 70 additions and 55 deletions
  1. 22 6
      conf/config.ini
  2. 47 47
      docs/数据描述.md
  3. 1 2
      libs/save_conf.py

+ 22 - 6
conf/config.ini

@@ -1,7 +1,23 @@
-data_file_name :
+[data_file_name]
+app_interference = ../data/scheduling_preliminary_app_interference_20180606.csv
+app_resources = ../data/scheduling_preliminary_app_resources_20180606.csv
+instance_deploy = ../data/scheduling_preliminary_instance_deploy_20180606.csv
+machine_resources = ../data/scheduling_preliminary_machine_resources_20180606.csv
+instance = ../data/instance.csv
+app = ../data/app.csv
+
+[table_size]
+app_size = 9338
+machine_size = 6000
+instance_size = 68219
+app12_size = 35242
+
+[system_config]
+debug = true
+
+[db_mysql]
+db_host = localhost
+db_port = 3306
+db_user = root
+db_pass = 1233456
 
-scheduling_preliminary_submit_sample_20180606.csv
-scheduling_preliminary_app_interference_20180606.csv
-scheduling_preliminary_app_resources_20180606.csv
-scheduling_preliminary_instance_deploy_20180606.csv
-scheduling_preliminary_machine_resources_20180606.csv

+ 47 - 47
docs/数据描述.md

@@ -1,56 +1,56 @@
 ### 1.2数据描述
 
-问题一共包含四份数据表:instance\_deploy.csv, app\_resources.csv, machine\_resources.csv, app\_interference.csv
+问题一共包含四份数据表:instance\_deplo y.csv, app\_reso urces.csv, machine\_reso urces.csv, app\_interference.csv
 
-·instance\_deploy.csv
+·instance\_deplo y.csv
 
-o实例id
+o 实例id
 
-o实例所属应用
+o 实例所属应用
 
-o实例所属宿主机:
+o 实例所属宿主机:
 
 §注:当前未分配的实例,实例所属宿主机列为空
 
-·app\_resources.csv
+·app\_reso urces.csv
 
-o应用id
+o 应用id
 
-ocpu分时占用曲线(每个点由< \| >隔开)
+o cpu分时占用曲线(每个点由< \| >隔开)
 
-omem分时占用曲线(每个点由< \| >隔开)
+o mem分时占用曲线(每个点由< \| >隔开)
 
-odisk申请量(标量)
+o disk申请量(标量)
 
-oP
+o P
 
-oM
+o M
 
-oPM
+o PM
 
-·machine\_resources.csv
+·machine\_reso urces.csv
 
-o宿主机id
+o 宿主机id
 
-ocpu规格
+o cpu规格
 
-omem规格
+o mem规格
 
-odisk规格
+o disk规格
 
-oP上限
+o P上限
 
-oM上限
+o M上限
 
-oPM上限
+o PM上限
 
 ·app\_interference.csv
 
-o应用id1
+o 应用id1
 
-o应用id2
+o 应用id2
 
-o最大部署量
+o 最大部署量
 
 ### 1.3结果提交
 
@@ -70,21 +70,21 @@ o最大部署量
 
 ·**要求**
 
-o最终所有实例都要部署到宿主机中
+o 最终所有实例都要部署到宿主机中
 
-o不能出现无效的实例id或宿主机id
+o 不能出现无效的实例id或宿主机id
 
-o请保存为submit\_<YYMMDD\_hhmmss>.csv。<YYMMDD\_hhmmss>是结果生成时的时间戳,这是我们建议的结果命名方式
+o 请保存为submit\_<YYMMDD\_hhmmss>.csv。<YYMMDD\_hhmmss>是结果生成时的时间戳,这是我们建议的结果命名方式
 
 1.3.2执行与评分(初赛)
 
 ·**可执行性**
 
-o决策动作会按文件从上到下的顺序串行执行,若遇到不可执行的操作,评价程序会中断,并直接开始评价当前状态的得分
+o 决策动作会按文件从上到下的顺序串行执行,若遇到不可执行的操作,评价程序会中断,并直接开始评价当前状态的得分
 
 ### ·**评分**
 
-o根据执行完提交结果的最终状态,计算成本分数_total\_cost\_score_
+o 根据执行完提交结果的最终状态,计算成本分数_to tal\_co st\_sco re_
 
 ![](images/clip_image002.png "屏幕快照 2018-06-11 下午3.04.22.png")
 
@@ -97,13 +97,13 @@ o根据执行完提交结果的最终状态,计算成本分数_total\_cost\_sc
 
 ·方案评测的细节,会于复赛前公布,基本会遵循以下原则:
 
-o求解时间短\(例如1小时以内,具体要求复赛确定\)
+o 求解时间短\(例如1小时以内,具体要求复赛确定\)
 
-o鼓励策略性模型\(可以快速输出部分决策,但效果是前提\)
+o 鼓励策略性模型\(可以快速输出部分决策,但效果是前提\)
 
-o鼓励创新性
+o 鼓励创新性
 
-o鼓励灵活性
+o 鼓励灵活性
 
 #### 1.3.4推荐的复赛提交格式(暂定)
 
@@ -113,35 +113,35 @@ o鼓励灵活性
 
 ·数据文件夹data/\*.csv
 
-o选手无需提交数据文件,我们会把初赛复赛用到的所有原始文件(与官网上的文件和文件名一致)放到data文件夹下,选手生成的中间文件也放入该文件夹。注意的是,初始的时候data文件夹会被清空,并只放入原始文件
+o 选手无需提交数据文件,我们会把初赛复赛用到的所有原始文件(与官网上的文件和文件名一致)放到data文件夹下,选手生成的中间文件也放入该文件夹。注意的是,初始的时候data文件夹会被清空,并只放入原始文件
 
-·代码文件夹code/\*.py(也可以用其他语言编写)
+·代码文件夹co de/\*.py(也可以用其他语言编写)
 
-o读入文件的路径尽量使用相对路径,比如../data/XX.csv
+o 读入文件的路径尽量使用相对路径,比如../data/XX.csv
 
-o要有main.py或者main.ipynb去运行所有代码得到最后结果(或其它编程语言的main),并将结果保存到submit文件夹
+o 要有main.py或者main.ipynb去运行所有代码得到最后结果(或其它编程语言的main),并将结果保存到submit文件夹
 
 ·结果输出文件夹submit/\*.csv
 
-o存储提交的csv文件
+o 存储提交的csv文件
 
-o提交文件名称submit\_Ymd\_HMS.csv\(e.g.submit\_20180203\_040506.csv\)
+o 提交文件名称submit\_Ymd\_HMS.csv\(e.g.submit\_20180203\_040506.csv\)
 
 ·代码的随机
 
-o对于用到随机数的步骤,设定随机数。如果未设置随机数导致结果有随机性,将进行多轮运行取平均的方式,如果随机的误差大于提交结果与答案间的误差将被取消决赛资格。由于代码会运行多次,为避免覆盖结果文件,请选手将每次生成的结果文件以时间方式命名,如注2所示
+o 对于用到随机数的步骤,设定随机数。如果未设置随机数导致结果有随机性,将进行多轮运行取平均的方式,如果随机的误差大于提交结果与答案间的误差将被取消决赛资格。由于代码会运行多次,为避免覆盖结果文件,请选手将每次生成的结果文件以时间方式命名,如注2所示
 
 注1:提交文件夹结构
 
-·project
+·pro ject
 
 ·\|--README.md
 
 ·\|--data
 
-·\|--code
+·\|--co de
 
-·\|-- main.py or main.ipynb or <其它语言代码>
+·\|-- main.py o r main.ipynb o r <其它语言代码>
 
 ·\|--submit
 
@@ -149,9 +149,9 @@ o对于用到随机数的步骤,设定随机数。如果未设置随机数导
 
 注2:提交文件文件名代码
 ```angular2html
-# python for example
-import datetime
-data.to\_csv\(\("../submit/submit\_"+datetime.datetime.now\(\).strftime\('%Y%m%d\_%H%M%S'\) + ".csv"\), header=None, index=False\)
+# pytho n fo r example
+impo rt datetime
+data.to \_csv\(\("../submit/submit\_"+datetime.datetime.no w\(\).strftime\('%Y%m%d\_%H%M%S'\) + ".csv"\), header=No ne, index=False\)
 
 ```
 ### 1.4你可以用这份数据设计其它算法
@@ -160,6 +160,6 @@ data.to\_csv\(\("../submit/submit\_"+datetime.datetime.now\(\).strftime\('%Y%m%d
 
 1.同样是上述数据和问题,设计在线调度算法。所谓在线调度算法,是待调度的任务顺序地被调度器调度,而调度器不知道待调度任务序列中靠后的任务的信息。实践中,在线算法只能接近,但很难达到离线算法的效果。
 
-2.让算法更robustness。实际环境中,大量数据为建模预估产生的模型化数据,例如赛题中的cpu, mem分时占用曲线,如何在预估数据存在偏差的前提进行问题求解,或者如何在已知决策模型的前提下调整预估方法,也是充满挑战的问题。
+2.让算法更ro bustness。实际环境中,大量数据为建模预估产生的模型化数据,例如赛题中的cpu, mem分时占用曲线,如何在预估数据存在偏差的前提进行问题求解,或者如何在已知决策模型的前提下调整预估方法,也是充满挑战的问题。
 
 3.其它任何你能想到的使用这份数据可以设计的问题和算法。如果你对这个有兴趣,我们相信你会对我们第二阶段的比赛更加有兴趣,请保持关注并一定参加我们的正式比赛!

+ 1 - 2
libs/save_conf.py

@@ -47,5 +47,4 @@ def write():
 
 def read():
     cf.read(config_file)
-    print(cf.get(section_name, "app_interference"))
-
+    print(cf.get(section_name, "app_interference"))