code of ridesharing

outline

  • GAS: algo3
  • GAS-O1: algo5
  • GAS-O2: algo7
  • GAS-O3: algo7v
  • MWBM: testHungarian.cpp
  • pruneGreedyDP: gdp.cpp
  • Greedy: greedy.cpp

result

execName, spay, usedTime, usedMemory / 1024.0,served, timeS1_, timeS2_, groupNum_
algo7v 44506.766455 1.118460 0.000000 0.040120 0.116262 1.002198 0
algo7 58261.358262 236.137792 0.000000 0.062187 0.110210 236.027582 0
rgdy 53504.730068 12.549708 0.000000 0.053159 11.899942 0.649766 76702
gdp 31180.825860 0.948694 0.000000 0.048144 0.948694 0.000000 0


algo3 2102.364875 255.002435 0.000000 0.080000 254.994907 0.007528 2172
algo7 2102.364875 0.021324 0.000000 0.080000 0.001100 0.020224 0
algo7v 2102.364875 0.022289 0.000000 0.080000 0.001120 0.021169 0
gdp 1054.650210 0.005943 0.000000 0.060000 0.005943 0.000000 0
hung 2102.364875 249.144976 0.000000 0.080000 249.135143 0.009833 2172
opt 2102.364875 225.381633 0.000000 0.080000 225.369619 0.012014 2172
rgdy 1836.685021 0.057208 0.000000 0.040000 0.055870 0.001338 75


algo7 4283.417823 0.697533 0.000000 0.016667 0.005435 0.692098 0
algo7v 4283.417823 0.712063 0.000000 0.016667 0.006071 0.705992 0
gdp 2653.011860 0.067040 0.000000 0.016667 0.067040 0.000000 0
rgdy 4283.417823 1.844770 0.000000 0.016667 1.818751 0.026019 1099


taxi05-order50
algo3 2102.364875 255.002435 0.000000 0.080000 254.994907 0.007528 2172
algo5 1836.685021 0.042364 0.000000 0.040000 0.041888 0.000476 76
algo7 2102.364875 0.021324 0.000000 0.080000 0.001100 0.020224 0
algo7 2102.364875 0.022289 0.000000 0.080000 0.001120 0.021169 0
gdp 1054.650210 0.005943 0.000000 0.060000 0.005943 0.000000 0
hung 2102.364875 249.144976 0.000000 0.080000 249.135143 0.009833 2172
opt 2102.364875 225.381633 0.000000 0.080000 225.369619 0.012014 2172
rgdy 1836.685021 0.057208 0.000000 0.040000 0.055870 0.001338 75


taxi05-order300
algo3 4299.557741 289836.014473 0.000000 0.020000 289833.743062 2.271411 710709
algo5 4299.557741 1.632949 0.000000 0.020000 1.629858 0.003091 2710
algo7 4283.417823 0.680575 0.000000 0.016667 0.005829 0.674746 0
algo7v 4283.417823 0.695665 0.000000 0.016667 0.006102 0.689563 0
gdp 2653.011860 0.068854 0.000000 0.016667 0.068854 0.000000 0
hung 4299.557741 293288.894050 0.000000 0.020000 293286.327513 2.566537 710709
opt 4299.557741 249192.013552 0.000000 0.020000 249188.694877 3.318675 710709
rgdy 4283.417823 1.787340 0.000000 0.016667 1.761179 0.026161 1099

problem

  • algo3里面roots没有建立就释放

readme:

./road/chengdu.node ./road/chengdu.edge ./road/chengdu.label ./road/chengdu.order ./chengduTaxi//data_31.txt ./chengduOrder/data_01.txt

dataset

chengdu.node:
num
经纬度

edge:
num
两个节点之间的weight

order:
编码了一下

label:

任意两点最短路长度
在这里插入图片描述

taxi.txt
司机个数 、capacity 、、变换的系数
司机所在位置、capacity
ddl,pr
在这里插入图片描述

order.txt
num
订单提交到系统时间、起点node的id、终点node的id、要求多少座位
在这里插入图片描述

detail of code

gendata
给定的代码是一个Python脚本,该脚本为成都出租车调度问题相关的实验生成数据集。以下是代码的分解:

该代码导入必要的库,如numpy、random、sys、os和命令(在较新版本的Python中不推荐使用这些库)。

该代码定义了一个类constForDataSet,该类包含用于生成数据集的一些常数值。它包括gridList、workerNumList、capList、ddlList和prList等列表,以及一些其他变量。

定义了类CFDS,它继承了constForDataSet,但没有添加任何新功能。

类baseGenerator是用单个方法gen(self,n)定义的。由于没有实现gen方法,因此从给定的代码中不清楚此类的目的。

类worker_t代表出租车调度问题中的一个工人。它具有诸如sloc(源位置)、dloc(目标位置)、releaseTime和expireTime等属性。它还定义了比较方法__cmp_和__lt__,以及字符串表示方法__str__。

task_t类表示出租车调度问题中的一个任务。它具有loc(位置)、rt(发布时间)、et(过期时间)和ut(实用程序)等属性。与worker_t类似,它定义了比较方法和字符串表示方法。

类randomGenerator是baseGenerator的一个子类,用于生成给定范围内的随机数。它有一个__init__方法来设置最大值(mx),还有一个gen方法来生成随机数列表。

函数genDataSetName生成一个字符串,该字符串表示基于输入参数的数据集名称。

函数genDataSet生成数据集文件,给定目标文件名和各种输入参数,如工人数量(m)、容量(c)、阿尔法值、位置(pos)、截止日期(ddl)、惩罚率(pr)和网格大小(g)。

函数genOneSet为输入参数的不同变化生成一组数据集。它使用randomGenerator类生成随机位置,并调用genDataSet函数来创建数据集文件。

函数genChengdu为成都出租车调度问题生成多组数据集。它使用不同的数据集ID(dataSetId)和最大值(Vmax)调用genOneSet。

函数exp0是主要的实验函数。如果数据集不存在,它会为数据集创建一个目录(desFilePath),并调用genChengdu生成数据集。

脚本的主要入口点由if name==“main”保护,这确保只有在直接运行脚本时才执行exp0函数。

总之,该代码定义了类和函数,以生成成都出租车调度问题的数据集。从提供的代码来看,实验的具体目的和细节并不完全清楚。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值