调参新功能
最近MindOpt团队开发了一款优化调参器,叫做MindOpt Tuner。它是一种自动优化工具,可帮助运筹优化工程师在使用求解器时自动搜索最佳参数组合。
优化求解器往往拥有很多配置参数,例如启发式方法的开关、割平面方法的开关、预处理的配置以及各种误差容忍度等等。MindOpt Tuner会尝试不同的参数组合,评估每组参数的性能,然后基于这些结果来确定最佳参数。这样可以大大减少手动调整参数的时间和精力,并且可以帮助提升求解性能。不同于常见的贪心算法、遗传算法、粒子群算法等调参算法,MindOpt Tuner使用了团队新研发的快速算法,只需要相对少的评估就能给出性能很好的参数。
内测参与方式
我们非常重视用户反馈和测试,因此希望能够邀请您成为MindOpt Tuner的测试用户之一。
用户入口:您可以在MindOpt的云平台上通过Jupyter Notebook和网页提交的两种方式来提交调参任务,任务提交后,参数评估的工作将在平台的后端集群中自动进行并完成。评估完成后会返回最佳参数,以及提速倍数。
参与要求:拥有阿里云账号(钉钉扫码登录就能获得阿里云账号啦)
参与方式:
方式1:在钉钉答疑群钉钉群:32451444,私聊群主 悠悠喵喵(钉钉号:wy186633) 或者 管理员向金平(钉钉号:hw2-wwffqg05p),然后告知阿里云UID号。
方式2:把阿里云UID号发送邮箱:solver.damo@list.alibaba-inc.com
阿里云UID号获取方式:登录MindOpt平台https://opt.aliyun.com/,然后鼠标hover头像上就获得了UID。如下是群主的UID。
测试阶段开放功能
测试阶段支持对开源的COIN-OR Cbc V2.10.5混合整数优化求解器进行调参。如果您对调参或者Cbc感兴趣,那么这将是一个非常好的机会,您可以在测试中亲身体验我们的产品,欢迎您提出宝贵的反馈和建议。
我们在 MIPLIB2017 Benchmark Set 上进行了测试。测试结果显示,经过调参后的Cbc求解器的速度可以有显著的提升:使用默认参数需要几十分钟解出的问题,调参后可以在1分钟内解出。部分实验结果如下:
算例名称 |
用默认参数的求解时间(秒) |
用调参后参数的求解时间(秒) |
加速倍数 |
eil33-2 |
103.61 |
3.01 |
34.42 |
neos-950242 |
845.0 |
31.49 |
26.83 |
hypothyroid-k1 |
1343.4 |
112.34 |
11.96 |
decomp2 |
40.34 |
4.19 |
9.63 |
neos-860300 |
55.70 |
4.03 |
13.82 |
irp |
27.86 |
2.64 |
10.55 |
fiball |
738.36 |
49.62 |
14.88 |
qap10 |
171.28 |
15.29 |
11.2 |
drayage-100-23 |
44.37 |
4.23 |
10.49 |
此测试采用了MindOpt Tuner V0.9.0来调参,求解器运行时的机器环境是:
Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz, 8 cores, 16 GB RAM, Ubuntu 18.04。