论文完成

This commit is contained in:
2026-09-13 18:05:59 +08:00
parent 9fb15f53f5
commit 89021eb9f8
234 changed files with 28597 additions and 2164 deletions
+218 -80
View File
@@ -1,102 +1,240 @@
\section{官方正式测试结果与时间分解}\label{sec:formal}
\subsection{数据选择及对应关系核对}
本节实验样本严格限定为官方模拟器
\pathtext{Jammers-simulator-full/test} 下的六份正式导出包,问题三、四各有三次。
文件名、案例编码与完整包校验值见结果表与附录~\ref{app:data}。
本节只使用六份正式导出包及其匹配统计,不引入仓库内自建基准集,也不把演练局数据并入正式评价。两类数据仍单独存放;任何跨案例比较都以官方记录的总虚拟时间、程序运行时间和清除数量为准。
\section{实验结果与分析}
\subsection{实验设置与数据来源}
本文的实验分两部分,职责严格区分。
\textbf{机制论证与定量结论}取自项目内自建模拟器
(\pathtext{referee},按题面附件 1、附件 2 复现的评测机)的演练局:
演练局可提供真实源位置、机器人轨迹和逐次检测读数,
因此能够支撑路径示意、机制分析与逐局的定量比较。
\textbf{最终效果验证}取自官方模拟器的六份正式导出包,
因无法获取真实位置点,只在附录~\ref{app:formal} 中报告清除数量、总虚拟时间与程序运行时间。
评价指标包括清除数量 $N_c^+$、总虚拟时间 $T$、程序运行时间 $T_{\mathrm{real}}$,以及检测、换频和清除的动作次数。其中 $T$ 按整数微秒累计,$T_{\mathrm{real}}$ 采用官方记录的毫秒值;平均定位清除时间仅作辅助分析,不替代总虚拟时间与程序运行时间这两项直接指标。六次测试均以主动退出结束,统计提交状态为已确认。
演练局由 \pathtext{scripts/run\_practice\_episodes.py} 采集:脚本启动评测机、
以固定种子开始一局演练,再用与 \texttt{mcm26b.cli run} 相同的生产策略对接接口,
真值与行为日志全部由评测机自己写入,策略端只看见 HTTP 响应。
采集批次共 $\PractTotalCases$ 局:问题三 $\PractQThreeCases$ 局全向源、问题四 $\PractQFourCases$ 局混合源,
源数覆盖 $10$ 至 $16$、接收半径覆盖 $1000$ 至 $1500$ m,问题四的定向源个数覆盖 $3$、$6$、$8$。
判定标准为"清完全部源 $\wedge$ 无缺席误判 $\wedge$ 主动退出 $\wedge$ 零异常 $\wedge$ 零失败清除",
本批 $\PractTotalComplete$ 局全部满足,因此可以直接作为当前实现的性能证据,
累计清除 $\PractTotalCleared$ 个源。
所有时间均按式~\eqref{eq:time} 的计时模型由动作序列独立复算,
复算值与评测机日志记录的\textbf{最大偏差为 $\PractMaxGap$ s},
说明本文的时间口径与模拟器实现完全一致,后文所有耗时数字均可重算。
为使"最优实现"的说法可检验,本文对每一问都准备了一个\textbf{朴素基线},
两者在同一算例上逐例配对比较:
问题一的基线用包围盒对角线代替真实直径,并以包围盒中心近似覆盖圆;
问题二的基线分别取"垂直首次示向度 $1000$ m 的 $90^\circ$ 交会点"与"候选集最小包围圆圆心";
问题三的基线用 $49$ 点($700$ m 步长)网格发现加就近服务;
问题四的基线则把问题三的两种策略原样搬用。
基线并非稻草人:它们在部分场景中有效,暴露的是"缺了哪一步"。
\subsection{问题一与问题二的配对对比}
先看几何层的两个判据在数值上的表现。问题一用固定示例与随机交会算例
(共 $\ProjQOneExampleCases$ 例固定、$\ProjQOneRandomCases$ 例随机)对比两种实现,
见表~\ref{tab:q1compare}。
\begin{table}[htbp]
\centering\small
\caption{问题一:直径与覆盖判定的实现对比(时间单位:ms/例)}
\setlength{\tabcolsep}{3pt}
\begin{tabular}{p{3.4cm}rrrrr}
\toprule
实现 & 状态正确率 & 直径平均误差/m & 直径最大误差/m & 覆盖正确率 & 平均耗时/ms\\
\midrule
最优(固定 $\ProjQOneExampleCases$ 例) & 100.0\% & 0.000 & 0.000 & 100.0\% & $\ProjQOneFixedMsOpt$ \\
最优(随机 $\ProjQOneRandomCases$ 例) & 100.0\% & 0.000 & 0.000 & 100.0\% & $\ProjQOneRandMsOpt$ \\
基线(固定 $\ProjQOneExampleCases$ 例) & $\ProjQOneFixedStatusBase$ & $\ProjQOneFixedMaeBase$ & $\ProjQOneFixedMaeMaxBase$ & $\ProjQOneFixedCoverBase$ & $\ProjQOneFixedMsBase$ \\
基线(随机 $\ProjQOneRandomCases$ 例) & $\ProjQOneRandStatusBase$ & $\ProjQOneRandMaeBase$ & $\ProjQOneRandMaeMaxBase$ & $\ProjQOneRandCoverBase$ & $\ProjQOneRandMsBase$ \\
\bottomrule
\end{tabular}
\label{tab:q1compare}
\end{table}
由表可见,最优实现(半平面交 \(+\) 顶点对枚举 \(+\) 最小包围圆)
在固定与随机两类算例上的直径误差均为零、覆盖判定全部正确;
基线的直径平均绝对误差为 $\ProjQOneFixedMaeBase$ m(固定例)
与 $\ProjQOneRandMaeBase$ m(随机例),最大误差达 $\ProjQOneRandMaeMaxBase$ m,
覆盖判定正确率仅 $\ProjQOneFixedCoverBase$ 与 $\ProjQOneRandCoverBase$。
原因在于包围盒对角线只有在区域恰好与坐标轴对齐时才等于直径,
而基线的覆盖判据几乎恒判"覆盖",因此系统性偏乐观。
计算代价方向相反:最优实现平均 $\ProjQOneRandMsOpt$ ms,
基线 $\ProjQOneRandMsBase$ ms,说明精确判据并不以牺牲效率为代价。
问题二的差距出现在"保证接收"与"定位收缩"这对指标上,见表~\ref{tab:q2compare}。
入选标准是:安全盘内最坏后验半径越小越好,同时保证接收率必须为 $100\%$。
\begin{table}[htbp]
\centering\small
\caption{问题二:第二检测点选点策略对比($\ProjQTwoCases$ 例随机首次示向度)}
\setlength{\tabcolsep}{3pt}
\begin{tabular}{p{3.2cm}rrrrrr}
\toprule
选点方法 & 保证接收率 & 最坏后验均值/m & 中位/m & 平均收缩/m & 终值比 & 移动均值/s\\
\midrule
算法2(默认选点) & $\ProjQTwoGuaranteeOpt$ & $\ProjQTwoWorstOpt$ & 90.899 & 607.577 & $\ProjQTwoRatioOpt$ & 170.44 \\
参考:盘内网格枚举 & 100.0\% & $\ProjQTwoWorstRef$ & 91.349 & 605.841 & 0.106 & 170.28 \\
基线:垂直 $1000$ m & $\ProjQTwoGuaranteePerp$ & $\ProjQTwoWorstPerp$ & 90.775 & 601.356 & 0.116 & 200.00 \\
基线:候选圆心 & $\ProjQTwoGuaranteeMec$ & $\ProjQTwoWorstMec$ & 375.088 & 340.721 & $\ProjQTwoRatioMec$ & 136.29 \\
\bottomrule
\end{tabular}
\label{tab:q2compare}
\end{table}
初始候选半径均值为 $\ProjQTwoInitialRadius$ m。
由表~\ref{tab:q2compare} 可知:垂直 $1000$ m 基线的最坏后验半径与最优实现接近,
但保证接收率只有 $\ProjQTwoGuaranteePerp$——当真源位于角域远端时必然返回无信号,
这正是问题二所要避免的失败模式;候选圆心基线的保证接收率为 $\ProjQTwoGuaranteeMec$,
但最坏后验半径达 $\ProjQTwoWorstMec$ m,终值比 $\ProjQTwoRatioMec$,
相当于只收缩了一半,说明"保证接收"若脱离横向基线便几乎没有定位价值。
最优实现同时取得 $\ProjQTwoGuaranteeOpt$ 的保证接收率与
$\ProjQTwoWorstOpt$ m 的最坏后验均值,终值比 $\ProjQTwoRatioOpt$,
并与盘内网格枚举参考解($\ProjQTwoWorstRef$ m)相差不到 $2\%$。
\subsection{问题三:演练局结果与基线对比}
问题三的闭环在 $18$ 个冻结场景上逐例配对运行,三种策略的结果见表~\ref{tab:q3compare}。
\input{data/project-q3-table}
三者的全清率都是 $100\%$,因此差别完全体现在代价上。
默认策略 \texttt{bayes} 的平均虚拟时间为 $\ProjQThreeMeanOpt$ s,
七点批量策略为 $\ProjQThreeMeanSeven$ s,
$49$ 点网格基线为 $\ProjQThreeMeanBase$ s;
相对基线,\texttt{bayes} 的平均降幅为 $\ProjQThreeDropOpt$、中位降幅 $\ProjQThreeDropMedianOpt$,
并在 $\ProjQThreeFasterOpt$ 个场景中全部更快。
代价的来源也很清楚:默认策略平均只需 $\ProjQThreeMeasuresOpt$ 次检测、
位移 $\ProjQThreeMoveOpt$ km,而网格基线需要 $\ProjQThreeMeasuresBase$ 次检测、
$\ProjQThreeMoveBase$ km。可见网格基线的开销主要来自"逐格走过去再检测",
而七点计划加网格幸存集把大量必然无信号的检测直接跳过,
再配合滚动任务排序把移动量压到约五分之一。
这一机制在真实演练局中得到复现。表~\ref{tab:q3practice} 给出问题三
全部 $\PractQThreeComplete$ 局全清演练局的直接统计。
\input{data/practice-q3-table}
$\PractQThreeComplete$ 局的源数覆盖 $10$ 至 $16$,全部实现清除数等于源数,
且没有一次失败清除;总虚拟时间集中在 $\PractQThreeMin$ 至 $\PractQThreeMax$ s,
平均 $\PractQThreeMean$ s,平均定位清除时间 $\PractQThreeMeanClear$ s/个。
随源数增加,总虚拟时间只从约 $3.0\times10^3$ s 增长到约 $4.0\times10^3$ s,
说明发现—定位—清除三个闭环的组织方式对源数量并不敏感。
\begin{figure}[htbp]
\centering
\includegraphics[width=0.92\linewidth]{formal-total-time.png}
\caption{六次正式测试的总虚拟时间与程序运行时间。}
\label{fig:formaldirect}
\includegraphics[width=0.94\linewidth]{selfbuilt-q3-search-clear-path.png}
\caption{自建模拟器演练局 \texttt{\PractQThreeMainCase}($\PractQThreeMainSources$ 个全向源)的搜索与清除路径。
折线为机器狗轨迹;每条浅色细射线表示一次 $\direction$ 检测测得的示向度,
射线起点即发起该次检测的位置;圆点为测到示向度的检测点($55$ 次),
菱形为测到近距离的检测点($1$ 次),灰色叉号为无信号检测点($29$ 次);
星号为成功清除点,金色叉号为干扰源真值。全部数据由自建模拟器真值输出。}
\label{fig:selfbuiltq3}
\end{figure}
\subsection{问题三正式结果}
\begin{table}[htbp]
\centering\small
\caption{问题三正式测试结果(时间单位:s)}
\setlength{\tabcolsep}{4pt}
\begin{tabularx}{\linewidth}{l X r r r}
\toprule
测试 & 测试案例编码 & 清除数 & 总虚拟时间/s & 程序运行时间/s\\
\midrule
测试 1 & \texttt{9HU7-UWJR-BPTR-VYAT} & 13 & 3094.978 & 5.596 \\
测试 2 & \texttt{7TCG-C9EC-53VF-HZ5H} & 15 & 3493.335 & 3.024 \\
测试 3 & \texttt{UVUZ-B4MQ-XSUV-HQFP} & 10 & 2906.863 & 2.680 \\
\bottomrule
\end{tabularx}
\label{tab:formal3}
\end{table}
三次正式测试分别清除 $13$、$15$、$10$ 个源,总虚拟时间分别为 $3094.978$、$3493.335$、$2906.863$ s,合计 $\QThreeTotal$ s;程序运行时间分别为 $5.596$、$3.024$、$2.680$ s,合计 $\QThreeProgramTotal$ s。按清除数量加权的平均定位清除时间为 $\QThreeWeighted$ s/个,仅作辅助解释。第三次总虚拟时间 $2906.863$ s 在本组三次中最短,但其清除数 $10$ 也最少;因此判断优化程度时,应以题目要求的总虚拟时间和程序运行时间为直接指标,并同时报告清除数量,不能只看单一的平均值。
图~\ref{fig:selfbuiltq3} 给出其中一局(\texttt{\PractQThreeMainCase},
$\PractQThreeMainSources$ 个源)的完整路径。
机器人先按七点计划完成覆盖与批量扫频,再围绕候选区域执行定位与清除;
清除点与源真值基本吻合,轨迹在多个源之间跳跃后逐步收敛。
该局共检测 $\PractQThreeMainMeasures$ 次、换频 $\PractQThreeMainSwitches$ 次,
移动 $\PractQThreeMainMove$ km,总虚拟时间 $\PractQThreeMainTime$ s,
程序运行时间仅 $\PractQThreeMainRun$ s。
\subsection{问题四正式结果}
\begin{table}[htbp]
\centering\small
\caption{问题四正式测试结果(时间单位:s)}
\setlength{\tabcolsep}{4pt}
\begin{tabularx}{\linewidth}{l X r r r}
\toprule
测试 & 测试案例编码 & 清除数 & 总虚拟时间/s & 程序运行时间/s\\
\midrule
测试 1 & \texttt{VQUM-ETQ5-74PP-ZQ3J} & 13 & 9362.226 & 7.668 \\
测试 2 & \texttt{5K5T-TRWZ-BPR2-ECAV} & 10 & 9271.302 & 5.724 \\
测试 3 & \texttt{K58B-V5VC-E4EF-CRTW} & 14 & 8608.382 & 6.051 \\
\bottomrule
\end{tabularx}
\label{tab:formal4}
\end{table}
表~\ref{tab:formal4} 给出问题四的三次正式结果。三次测试分别清除 $13$、$10$、$14$ 个源,总虚拟时间分别为 $9362.226$、$9271.302$、$8608.382$ s,合计 $\QFourTotal$ s;程序运行时间分别为 $7.668$、$5.724$、$6.051$ s,合计 $\QFourProgramTotal$ s。按清除数量加权的平均定位清除时间为 $\QFourWeighted$ s/个,仅作辅助解释。第三次清除数 $14$ 最多且总虚拟时间 $8608.382$ s 最短,说明定向遮挡场景中可见性筛选与后备清除对直接完成时间有积极作用;但三次案例的随机源分布和朝向不同,仍应优先看官方记录的绝对时间和清除数量。
\subsection{问题四:演练局结果与基线对比}
问题四的困难来自遮挡,因此对比的重点不只是时间,还包括"是否真的全部清除"。
表~\ref{tab:q4compare} 给出三种策略在 $11$ 个混合源场景(含 $5$ 个边界定向源场景)上的结果。
\input{data/project-q4-table}
由表~\ref{tab:q4compare} 可见,把问题三的策略直接搬用会产生两类不同后果。
\texttt{bayes} 的七点全向缺席判据会把朝外发射的定向源误判为"不存在",
因而出现 $\ProjQFourAbsentBase$ 次缺席误判、全清率只有 $\ProjQFourClearBase$,
其平均虚拟时间($\ProjQFourMeanBase$ s)虽然最短,却是"快而错",
不能作为有效结果;$49$ 点网格策略的发现是完备的,
但没有后备清除,定位停滞时只能停在"已发现"状态,全清率 $\ProjQFourClearGrid$,属于"稳而不全"。
默认策略 \texttt{directional} 在全部 $\ProjQFourValidOpt$ 局有效,
全清率 $\ProjQFourClearOpt$,缺席误判为零,平均虚拟时间 $\ProjQFourMeanOpt$ s,
平均需要 $\ProjQFourFallbackOpt$ 次后备清除——正是这部分兜底动作
换来了网格与批量策略都达不到的完备性。
演练局进一步显示了遮挡造成的额外代价。表~\ref{tab:q4practice} 给出
全部 $\PractQFourComplete$ 局全清混合源演练的统计。
\input{data/practice-q4-table}
与问题三相比,混合源场景的检测次数增加约 $3$ 倍(平均 $\PractQFourMeasures$ 次
对 $\PractQThreeMeasures$ 次),移动距离约 $\PractQFourMove$ km(对 $\PractQThreeMove$ km),
总虚拟时间平均 $\PractQFourMean$ s,平均定位清除时间 $\PractQFourMeanClear$ s/个,
约为全向源场景的 $2.6$ 倍。原因在机制上是明确的:
一次无信号观测不再等于"源在远处",而可能只是朝向遮挡,
因此必须先用若干探点排除遮挡解释,才能继续收缩位置候选集。
本批 $\PractQFourComplete$ 局全部做到"清完且无失败清除",
说明可见性筛选加后备清除在定向源个数 $3$ 至 $8$ 的范围内是稳定的。
\begin{figure}[htbp]
\centering
\includegraphics[width=0.94\linewidth]{selfbuilt-q4-search-clear-path.png}
\caption{自建模拟器演练局 \texttt{\PractQFourMainCase}($\PractQFourMainSources$ 个源,
其中 $\PractQFourMainDirectional$ 个定向源)的搜索与清除路径。
$\mathbf{X}$ 为干扰源真值,每个定向源用"绿箭头(发射朝向)$+$ 浅绿细线扇形($\pm90^\circ$ 可见范围)$+$ 角度标注"表示;
每条浅色细射线表示一次 $\direction$ 检测测得的示向度,射线起点即发起检测的位置;
圆点为测到示向度的检测点($72$ 次),菱形为测到近距离的检测点($3$ 次),
灰色叉号为无信号检测点($84$ 次,其中相当一部分由朝向遮挡造成),星号为成功清除点。}
\label{fig:selfbuiltq4}
\end{figure}
图~\ref{fig:selfbuiltq4} 给出含定向源的一局(\texttt{\PractQFourMainCase},
$\PractQFourMainSources$ 个源、其中 $\PractQFourMainDirectional$ 个定向)的路径。
定向源的前向半盘造成大量无信号观测,轨迹比全向源局密集得多;
可见性筛选把探点优先放在朝向相容的位置,后备清除则在定位停滞时兜底完成清除。
该局共检测 $\PractQFourMainMeasures$ 次、换频 $\PractQFourMainSwitches$ 次,
移动 $\PractQFourMainMove$ km,总虚拟时间 $\PractQFourMainTime$ s。
\subsection{动作耗时分解}
将式~\eqref{eq:time} 重排,得到累计移动时间
上面的对比说明"哪种策略更快",还需要说明"时间花在哪里"。
把式~\eqref{eq:time} 重排,得到累计移动时间
\begin{equation}
T_{\mathrm{move}}
=T-5N_m-N_s-5N_c^+-3N_c^-.
\label{eq:residual}
\end{equation}
表~\ref{tab:cost} 中 Q3-1 表示问题三第一次正式测试,其余编号依此类推。
六次测试的清除失败计数均为零。
各动作次数与式~\eqref{eq:residual} 共同确定图~\ref{fig:costbars} 的耗时分解。
据此可把每局的总虚拟时间拆成移动、检测、换频与清除四项,见表~\ref{tab:cost}。
\input{data/practice-cost-summary-table}
\begin{table}[htbp]
\centering\small
\caption{六次正式测试的动作计数与移动耗时}
\setlength{\tabcolsep}{4.5pt}
\begin{tabular}{lrrrrrr}
\toprule
案例 & 检测数 & 换频数 & 失败清除 & 总虚拟时间/s & 移动时间/s & 移动占比\\
\midrule
Q3-1 & 105 & 96 & 0 & 3094.978 & 2408.978 & 77.84\% \\
Q3-2 & 117 & 108 & 0 & 3493.335 & 2725.335 & 78.02\% \\
Q3-3 & 117 & 107 & 0 & 2906.863 & 2164.863 & 74.47\% \\
Q4-1 & 349 & 275 & 0 & 9362.226 & 7277.226 & 77.73\% \\
Q4-2 & 361 & 315 & 0 & 9271.302 & 7101.302 & 76.59\% \\
Q4-3 & 264 & 213 & 0 & 8608.382 & 7005.382 & 81.38\% \\
\bottomrule
\end{tabular}
\label{tab:cost}
\end{table}
\begin{figure}[htbp]
\centering
\includegraphics[width=0.92\linewidth]{formal-time-bars.png}
\caption{六次正式测试的累计虚拟耗时分解。图中数据仅来自正式测试原始动作计数与总虚拟时间。}
\label{fig:costbars}
\includegraphics[width=0.86\linewidth]{practice-virtual-time.png}
\caption{自建模拟器演练局的总虚拟时间分布。每个点代表一局,
实线段为该问题全清局的均值;横轴取对数刻度,
问题四(混合源)的整体耗时明显高于问题三(全向源)。}
\label{fig:practicetime}
\end{figure}
由图~\ref{fig:practicetime} 与表~\ref{tab:cost} 可见,
两类场景中移动时间都是主要成本,分别占 $\PractQThreeMoveShare$ 与 $\PractQFourMoveShare$,
因此缩短总耗时的主攻方向是减少移动,这与问题三相对基线的降幅主要来自位移下降相互印证。
清除动作本身只占 $\PractQThreeClearShare$ 与 $\PractQFourClearShare$,
说明"清除"不是时间瓶颈,真正的成本在于把机器人送到能清除的位置。
检测与换频合计占比不高,但因换频次数与移动路径耦合,
仍需一并计入路径排序,不能单独优化。
六次测试的移动时间占总虚拟耗时的 $\FormalMovementMin\%$ 至 $\FormalMovementMax\%$,
是主要的时间成本,减少移动因而也是缩短总耗时的主要方向,
但检测与换频仍需一并计入路径选择。
由 $L_{\mathrm{eq}}=5T_{\mathrm{move}}$ 反推等效移动距离:
问题三依次为 $12.045$、$13.627$、$10.824$ km,
问题四依次为 $36.386$、$35.507$、$35.027$ km。
该等效距离由官方动作计数与移动速度换算得到,不是独立轨迹测得的长度。
所有平均值先以官方整数单位求和、相除,最后保留三位小数。
\subsection{本节结论}
综合以上配对对比与演练局复算,可提炼出四点结论:
1. 几何层的精确判据不需要以效率为代价——问题一的最优实现误差为零而耗时更短,
问题二则在保证接收率为 $100\%$ 的同时把最坏后验半径压到基线的约五分之一;
2. 多源搜索的效率来自"证明不需要检测",网格幸存集与七点覆盖使默认策略的检测次数
和位移相对网格基线分别降到约四分之一和五分之一,平均虚拟时间下降 $\ProjQThreeDropOpt$;
3. 混合源场景必须为无信号保留朝向解释,否则会出现缺席误判;
默认策略以全清率 $100\%$、缺席误判 $0$ 和平均 $\ProjQFourMeanOpt$ s 的代价
换取了这种完备性;
4. 本次采集的 $44$ 局演练中,两类场景的全部源都被清除且失败清除为零,
移动时间占总耗时的 $\PractQThreeMoveShare$ 与 $\PractQFourMoveShare$,
是继续优化的首要对象;清除动作本身只占 $\PractQThreeClearShare$ 与 $\PractQFourClearShare$,
不是当前的时间瓶颈。
\subsection{直接指标结论}
六次正式测试均主动退出且清除失败计数为零。以题目要求的直接时间指标衡量:问题三三次测试累计清除 $\QThreeCount$ 个源,总虚拟时间 $\QThreeTotal$ s,程序运行时间合计 $\QThreeProgramTotal$ s;问题四累计清除 $\QFourCount$ 个源,总虚拟时间 $\QFourTotal$ s,程序运行时间合计 $\QFourProgramTotal$ s。六次测试合计清除 $\FormalClearCount$ 个源,总虚拟时间 $\FormalVirtualTotal$ s。
由此可得结论:1. 全向源场景下,七点解析覆盖与逐频道网格幸存集使三次测试均在正式时限内完成,问题三三次总虚拟时间为 $2906.863$ 至 $3493.335$ s;2. 混合源场景下,前向半盘最小命中集、位置与朝向联合幸存集和后备清除使三次测试总虚拟时间为 $8608.382$ 至 $9362.226$ s,明显高于全向场景,说明定向遮挡仍是时间成本的主要来源;3. 平均定位清除时间和移动时间分解只用于解释成本结构,优化程度的结论应以总虚拟时间、程序运行时间和清除数量为准,不能用自建基准推断倍数。