arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~

Hexaly在TDVRPTW上的线程扩展性:两种模型编码下的实验报告——外部函数序列化、切片数量选择与时间切片线程阶梯

Thread Scaling of Hexaly on the TDVRPTW across Two Model Encodings. An Experimental Report: Binding Choice, Slice-Count Choice, and Two Thread Ladders

Florian Rascoussier

arXiv 2608.10079首次发表:更新:

AI 中文总结

该实验对比两种TDVRPTW编码,发现Hexaly的线程扩展性依赖编码方式,原生编码可有效利用多线程提升解质量与稳定性,外部函数接口扩展性差,编码选择对性能的影响大于线程数。

AI 中文摘要

Hexaly的线程扩展性首先取决于时变带时间窗车辆路径问题(Time-Dependent Vehicle Routing Problem with Time Windows,TDVRPTW)的建模方式。我们对比两种Python编码:一种通过外部回调函数评估连续行驶时间函数,另一种用求解器原生评估的时间切片近似该函数。独立CPU测量显示,支持的外部函数接口无论请求多少线程,都仅使用单个评估器工作线程;相反,原生编码能有效利用分配的核心。在选定的基准测试组中,更广泛的原生搜索在运行结束时及整个搜索过程中均能生成更优解,同时大幅降低不同随机种子间的解的差异。几乎所有配对运行从1线程扩展到16线程时均有提升。编码选择的影响比线程数更大:原生评估带来最强增益,但代价是行驶时间近似必须足够精细且需独立验证。这些描述性结果表明,当模型可利用多线程时,多线程是提升解质量和稳定性的实用方法,且建模方式是时变路径问题线程扩展性结论的核心因素。

英文摘要

Thread scaling in Hexaly on the Time-Dependent Vehicle Routing Problem with Time Windows (TDVRPTW) depends on modeling, and on the language binding through which the model reaches the solver. We compare two encodings, both reaching the solver through its C++ binding: one evaluates continuous travel-time functions exactly through external callbacks, which that binding evaluates concurrently, while the other approximates them with time slices evaluated natively by the solver. Independent CPU accounting confirms that both use the cores they are allocated, but they respond differently to width. The external-function encoding stabilizes, reducing its seed dispersion by about 30% up to 8 threads before widening again, yet its pooled quality barely moves, because nine of the ten instances improve while the hardest one degrades by enough to cancel them. For the time-sliced encoding we first select a discretization on feasibility under the original travel-time functions rather than on approximation error, and the retained setting then improves monotonically with the thread count, gaining about a quarter of its final gap and reducing the seed dispersion by nearly half between 1 and 16 threads. At equal single-threaded budget the two encodings are close, and the small pooled edge of exact evaluation comes from that same hardest instance, so the practical advantage of the discretization is thread scaling rather than fidelity traded for speed. These descriptive results support multi-threading as a way to improve solution quality and stability when the model can exploit it, and they show that binding-level constraints on external evaluation must be measured, not assumed.

Comments22 pages, 7 figures, 14 tables. Version 2: both model encodings are re-measured through the solver's C++ binding, replacing previous Python bindings of version 1. Every ladder and the slice-count study now run 10 seeds, and dispersion is reported as the sample standard deviation across seeds. Raw experiment data deposited at https://doi.org/10.5281/zenodo.22047134

论文原文

arXiv 摘要页 · PDF 原文 · HTML 原文

↑