重写tex
This commit is contained in:
@@ -1,23 +1,20 @@
|
||||
\section{正式数据清单与复算说明}\label{app:data}
|
||||
论文按参考材料中的“逐问建模、证明、结果、评价、源码附录”方式组织,
|
||||
排版遵守2026年格式规范\cite{format}:A4、四边距 $2.5$ cm,
|
||||
电子版从摘要页开始连续编号,无目录。所给往届论文仅用于结构与排版参考,
|
||||
不作为本题算法或数据来源。
|
||||
六份正式导出文件及其 SHA-256 校验值列于表~\ref{tab:packages}。
|
||||
论文采用原项目模板,按2026年格式规范设置 A4 纸张、四边距 $2.5$ cm,
|
||||
电子版从摘要页开始连续编号\cite{format}。
|
||||
所给往届论文用于章节组织与版式参考。
|
||||
|
||||
\input{data/formal-file-list}
|
||||
原始正式日志以题目要求的文件名保留,包内官方字段不作修改。
|
||||
可读统计快照已经去掉账号与设备字段,原始加密包未解密。
|
||||
包哈希用于核对同一导出文件,不等同于对官方数字签名的独立验证。
|
||||
|
||||
复算脚本 \pathtext{scripts/audit_paper_formal.py} 读取所选文件的公开头部,
|
||||
与官方数据库及同名侧文件匹配,生成 JSON、CSV 与 LaTeX 表格。
|
||||
已有匿名快照时也可以离线重新生成表格:
|
||||
复算脚本 \pathtext{scripts/audit_paper_formal.py} 将正式导出、结果侧文件与
|
||||
官方统计记录匹配,生成结构化数据、CSV 和 LaTeX 表格。
|
||||
在项目根目录执行:
|
||||
\begin{lstlisting}[language={},numbers=none]
|
||||
python scripts/audit_paper_formal.py
|
||||
python scripts/audit_paper_formal.py --snapshot docs/paper/data/formal-results.json
|
||||
\end{lstlisting}
|
||||
第二条命令只重算快照中的算术量;如果原始包仍在目录中,还会核对包哈希。
|
||||
它不表示脱离官方数据库后又独立验证了一次统计来源。
|
||||
第一条命令完成来源匹配与统计计算;
|
||||
第二条根据已有快照重新计算指标,并核对现有正式包的校验值。
|
||||
耗时图与汇总量由同一统计快照生成。
|
||||
|
||||
\section{支撑材料与运行方法}
|
||||
\begin{table}[H]
|
||||
@@ -27,31 +24,28 @@ python scripts/audit_paper_formal.py --snapshot docs/paper/data/formal-results.j
|
||||
\toprule
|
||||
文件或目录 & 用途\\
|
||||
\midrule
|
||||
\pathtext{src/mcm26b/} & 四问几何、信念、覆盖、调度与串行通信实现\\
|
||||
\pathtext{src/mcm26b/guarantee/plans/} & 第四问已实现的覆盖计划及验证参数\\
|
||||
\pathtext{scripts/audit_paper_formal.py} & 正式文件对应核对、匿名快照及表格复算\\
|
||||
\pathtext{src/mcm26b/} & 几何计算、集合估计、覆盖优化、任务排序与通信实现\\
|
||||
\pathtext{src/mcm26b/guarantee/plans/} & 第四问站点方案与离散验证参数\\
|
||||
\pathtext{scripts/audit_paper_formal.py} & 正式文件核对、统计计算与表格生成\\
|
||||
\pathtext{scripts/build_paper_support.py} & 矢量图、源码附录与支撑包生成\\
|
||||
\pathtext{docs/paper/data/} & 仅四个所选正式案例的可读统计、表格及哈希\\
|
||||
\pathtext{docs/paper/data/} & 六个正式案例的统计快照、表格及校验值\\
|
||||
\pathtext{docs/paper/sections/} & 分章论文源文件\\
|
||||
\pathtext{docs/paper/figures/} & 参数构造图和正式累计耗时图的矢量源文件\\
|
||||
\pathtext{Jammers-simulator-full/test/} & 四份原名官方加密正式日志\\
|
||||
\pathtext{docs/paper/figures/} & 几何示意图与正式耗时图的矢量源文件\\
|
||||
\pathtext{Jammers-simulator-full/test/} & 六份原名官方正式日志\\
|
||||
\pathtext{support-manifest.json} & 支撑包文件清单及逐文件 SHA-256\\
|
||||
\bottomrule
|
||||
\end{tabularx}
|
||||
\end{table}
|
||||
Python 运行时需要 \texttt{requests};\texttt{numpy} 为可选加速依赖。
|
||||
将 \texttt{src} 加入 Python 模块路径后,可使用
|
||||
Python 运行时需要 \texttt{requests},\texttt{numpy} 提供可选加速。
|
||||
将 \texttt{src} 加入 Python 模块路径后,可调用
|
||||
\texttt{python -m mcm26b.geometry} 进行问题一几何分析,
|
||||
或调用 \texttt{mcm26b.cli} 的入口运行在线策略。
|
||||
正式程序由用户先在模拟器界面开启相应测试;
|
||||
本次论文重写和数据核对没有启动新的正式或演练测试。
|
||||
运行指令、编译步骤及数据缺项说明另见支撑包的 \texttt{README.md}。
|
||||
或通过 \texttt{mcm26b.cli} 运行在线策略。
|
||||
在线测试由模拟器界面启动,接口就绪后执行策略入口。
|
||||
具体运行指令和编译步骤见支撑包的 \texttt{README.md}。
|
||||
|
||||
\section{完整程序源码}
|
||||
以下按当前仓库列出策略程序、其配套模块及论文数据处理程序的完整源码。
|
||||
源码中的历史注释与可选自检功能保留原样;其中旧仿真数值不构成本论文实验结果。
|
||||
附录显示副本仅将数学符号转换为 LaTeX 转义命令,支撑包内可执行源码保持原样。
|
||||
正式指标仅由附录A列出的四个案例形成。
|
||||
部分自检功能依赖独立本地评测机,它不参与本文正式统计的读取或计算。
|
||||
长代码使用连续页排版,附录页数不计入正文的30页限制。
|
||||
以下列出当前策略、配套模块及论文数据处理程序的完整源码。
|
||||
附录通过生成的显示副本将数学符号转换为 LaTeX 命令,
|
||||
支撑包保留对应的可执行 Python 文件。
|
||||
实验结果见正文正式测试表及附录A的数据清单。
|
||||
\input{data/source-listings}
|
||||
|
||||
@@ -1,74 +1,78 @@
|
||||
\section{模型评价与推广}
|
||||
\subsection{模型的有效性与优点}
|
||||
本文把未知位置始终表示为集合,使测向误差的处理与题设一致。
|
||||
问题一的直径定理与直径圆判据给出可复核的几何答案,
|
||||
最小包围圆又把位置不确定性直接转换为能否清除的距离条件。
|
||||
问题二的安全候选盘将可接收性与定位收益分开,
|
||||
避免通过扩大交会角而牺牲接收的基本条件。
|
||||
\subsection{模型的有效性}
|
||||
本文采用集合估计处理有界测向误差,将每次观测转化为真实位置的可行约束。
|
||||
问题一通过凸包顶点计算直径,以最小包围圆半径给出清除充分条件;
|
||||
问题二将接收距离要求表示为闭圆盘的交集,并由三角不等式构造显式可行子集。
|
||||
几何定位、接收约束与清除距离由统一的集合运算联系起来。
|
||||
|
||||
对多源搜索,七站构造用少量站点建立了全向连续覆盖证明,
|
||||
逐频道账本与网格排除使停止判断有明确依据。
|
||||
滚动任务排序将移动、检测、换频和清除放在统一时间目标下处理,
|
||||
能够在新观测到来后调整任务次序。
|
||||
对定向遮挡,位置与朝向联合候选为选点提供信息;
|
||||
后备清除则使用朝向无关的距离规则,避免无限重复无线电探测。
|
||||
多源搜索采用覆盖点集与检测状态矩阵维护各频道的搜索进度。
|
||||
网格表示可处理负观测产生的非凸可行区域,
|
||||
信息增益用于选择有利于收缩候选集的测点。
|
||||
开放路径排序将移动、检测、换频和清除纳入统一目标,
|
||||
并在新观测到来后重新求解任务次序。
|
||||
|
||||
实验部分保留正式原始单位与案例对应关系,
|
||||
将测试包、官方摘要字段及论文表格连接到同一可复算链条。
|
||||
数学构造、算法参数和正式实测分别标注,便于独立检查结论的证据范围。
|
||||
对于定向源,位置与朝向的联合约束提供可见性信息,
|
||||
凸组合性质给出方格点集的连续覆盖证明,
|
||||
网格遍历清除则利用清除半径与方向无关的物理条件。
|
||||
六次正式测试提供了算法在全向及混合源案例中的清除数量和时间成本。
|
||||
|
||||
\subsection{局限性与改进方向}
|
||||
\textbf{第一,启发式选点与调度不具有全局最优性。}
|
||||
算法2的见证点和读数端点枚举只给出采样比较,
|
||||
信息增益评分的先验又不是题目公布的概率模型。
|
||||
2-opt 只优化当前有限任务表,未来观测仍会改变任务位置。
|
||||
后续可用区间分支定界为后验评分建立误差界,
|
||||
并在同一组可重复场景上比较任务调度,不能把局部较优写成全局最优。
|
||||
\subsection{未来工作}\label{sec:future}
|
||||
\textbf{提高离散选点的近似精度。}
|
||||
算法2以边界采样和读数端点枚举近似最坏后验半径,
|
||||
信息增益评分采用离散先验,任务排序采用最近邻初始化与 2-opt 局部搜索。
|
||||
这些方法尚未给出整个动态任务的全局最优性保证。
|
||||
后续可用区间分支定界控制后验半径的近似误差,
|
||||
结合动态规划或滚动时域优化,研究测点选择与路径规划的联合求解。
|
||||
|
||||
\textbf{第二,31点计划只有离散覆盖证据。}
|
||||
其验证距离和最终角度余量没有给出统一连续延拓保证。
|
||||
可采用本文证明的 $49$ 点计划,或按式~\eqref{eq:continuous}
|
||||
同时控制位置、距离与朝向裕量,再开展新的正式或演练验证。
|
||||
现有包没有可公开解读的逐动作轨迹,不能为更换后的方案追认成绩。
|
||||
\textbf{建立31点方案的连续覆盖误差界。}
|
||||
现有方案在 $15$ m 网格和 $72$ 个朝向上完成离散验证。
|
||||
若采用位置误差界 $15/\sqrt2$,则
|
||||
$990.051+15/\sqrt2\approx1000.658$ m,超过最小接收半径;
|
||||
最终验证的前向角余量为 $0^\circ$,也不足以控制全部朝向扰动。
|
||||
因此当前离散结果尚不能推出连续覆盖。
|
||||
后续可按式~\eqref{eq:continuous} 同时约束位置与朝向误差,
|
||||
或采用已证明的 $49$ 点方案,在相同场景中比较站点数量与耗时。
|
||||
|
||||
\textbf{第三,混合类型下联合候选为空的含义需要收紧。}
|
||||
仅维护定向假设无法涵盖全向源从多侧被接收的情况。
|
||||
例如源周围三个相隔 $120^\circ$ 的检测点可同时接收全向信号,
|
||||
却不能同时位于一个固定前向半平面内。
|
||||
严格方案应并列维护源类型,或仅将朝向候选用于探点排序;
|
||||
已有正观测的频道不得仅因定向候选为空而忽略。
|
||||
\textbf{扩展混合类型的集合估计。}
|
||||
当前实现主要维护定向假设,并以 \texttt{joint\_empty} 处理部分候选集为空的情形,
|
||||
尚未单独维护全向分支。全向源可从多个方向被接收,
|
||||
定向候选集为空不足以判定该频道无源。
|
||||
后续应将类型加入状态,维护
|
||||
\begin{equation}
|
||||
\mathcal H_c=\mathcal H_c^{\mathrm{omni}}\cup\mathcal H_c^{\mathrm{dir}},
|
||||
\label{eq:typeunion}
|
||||
\end{equation}
|
||||
并分别更新两类可行集合。例如源周围三个相隔 $120^\circ$ 的测点可以同时接收全向信号,
|
||||
却不能同时属于一个固定前向半平面。
|
||||
类型并集模型可保留这一解释,使源存在性判断与观测条件一致。
|
||||
|
||||
\textbf{第四,有限预算影响闭环的完成性。}
|
||||
即使发现覆盖充分且单次清除证书正确,
|
||||
仍可能因几何退化、持续遮挡、候选区域过大或网络异常而不能在预算内结束。
|
||||
定位步数及 $400$ 格上限属于资源约束,不是无条件完备性的组成部分。
|
||||
失败状态必须保留具体未解决频道,不能由程序正常退出代替任务完成。
|
||||
\textbf{研究资源约束下的终止性。}
|
||||
连续覆盖与单次清除充分条件尚不足以保证所有案例均在有限预算内完成。
|
||||
持续遮挡、几何退化及较大的候选区域会增加定位步数,
|
||||
当前 $400$ 格上限也会限制遍历清除。
|
||||
后续可设计自适应网格细化与计算预算分配,并研究最坏情况下的动作次数上界。
|
||||
|
||||
\textbf{第五,正式样本尚不完整。}
|
||||
两问各两次测试不足以覆盖所有源分布与朝向组合;
|
||||
源真值总数缺失使全清率无法核算,第三次正式记录也尚未提供。
|
||||
因此本文报告逐局原始结果及可复算时间分解,不外推总体平均性能。
|
||||
\textbf{扩展统计评价。}
|
||||
本文的六次正式测试完成了两问各三次案例的结果汇总,
|
||||
但样本量仍不足以代表所有位置与朝向分布。
|
||||
官方统计中的源总数及类型组成尚未公开,因此全清率与分类型指标有待补充。
|
||||
未来可在可重复场景中开展配对试验,
|
||||
同时保存策略版本、源数量和轨迹等信息,以估计置信区间并比较各模块的贡献。
|
||||
|
||||
\subsection{参数影响的解析讨论}
|
||||
在不引入额外仿真数据的前提下,主要参数的影响可从公式分析。
|
||||
主要参数的影响可由模型公式分析。
|
||||
由 $a(\delta)=1500/(2\cos\delta)$ 得
|
||||
$a'(\delta)=750\sec\delta\tan\delta$($\delta$ 以弧度计)。
|
||||
误差增大会使源包围圆变大、安全候选盘缩小;
|
||||
表~\ref{tab:safeanalytic} 说明两位小数舍入余量对首次安全盘的改变很小,
|
||||
但在紧贴角域边界时仍必须计入。
|
||||
$a'(\delta)=750\sec\delta\tan\delta$,其中 $\delta$ 以弧度计。
|
||||
误差半角增大会扩大源位置的包围圆,并缩小保证接收圆盘。
|
||||
表~\ref{tab:safeanalytic} 给出了两位小数舍入余量对首次可行区域的影响。
|
||||
|
||||
由式~\eqref{eq:coveragebound},
|
||||
环半径减小会缩短简单覆盖路线,却在接近可行下界时消耗覆盖余量。
|
||||
默认半径留下约 $15.461$ m 的解析余量,不能只为降低路长无限向圆心收缩。
|
||||
网格边长缩小能够减少 $\epsilon_g$、加强位置证书,
|
||||
但二维格数大致与 $\ell^{-2}$ 成正比,计算与内存开销增加。
|
||||
这些是参数变化的数学关系,不是新增正式实测。
|
||||
由式~\eqref{eq:coveragebound},环半径影响覆盖路径长度和最大覆盖距离。
|
||||
默认半径保留约 $15.461$ m 的距离裕量。
|
||||
减小网格边长可降低 $\epsilon_g$ 并收紧位置误差上界,
|
||||
而二维网格数量大致与 $\ell^{-2}$ 成正比,因此应在精度、内存和计算时间间取得平衡。
|
||||
|
||||
\subsection{推广}
|
||||
该框架可用于满足有界方向误差的静态信号源排查、
|
||||
室内设备巡检及移动传感器主动定位。
|
||||
迁移时应重新校准接收半径、方向误差与动作成本;
|
||||
若源移动、频道冲突或观测包含额外遮挡,
|
||||
就需要扩展状态和观测集合,重新证明保留真源与覆盖发现的条件。
|
||||
几何证书、候选维护和行动排序的职责可以保留,
|
||||
具体覆盖点集与参数不能不经校核直接复用。
|
||||
\subsection{模型推广}
|
||||
该模型适用于有界方向误差下的静态信号源排查、室内设备巡检和移动传感器主动定位。
|
||||
推广时,根据新的设备参数校准接收半径、测向误差和动作时间;
|
||||
对于移动目标或额外遮挡,可扩展状态转移与观测约束,
|
||||
继续采用集合估计、覆盖优化和路径排序进行联合决策。
|
||||
|
||||
@@ -30,8 +30,8 @@ u(\theta_i)\cdot(g-s_i)&\ge0
|
||||
P=\bigcap_{i=1}^{n}W_i=\{g:Ag\le b\}.
|
||||
\label{eq:q1set}
|
||||
\end{equation}
|
||||
这是纯角域交会模型。后续问题加入 $\Omega$ 与接收距离先验后会形成更紧的集合,
|
||||
但不能将这些附加约束混入问题一的直径结果。
|
||||
式~\eqref{eq:q1set} 根据各次测向角域确定问题一的定位区域。
|
||||
后续问题将在此基础上加入 $\Omega$ 与接收距离约束。
|
||||
半平面交是闭凸集,可能为空、单点、线段、有界多边形或无界集。
|
||||
|
||||
\subsection{区域构造、空集及无界情形}
|
||||
@@ -44,7 +44,6 @@ x=\frac{ce-bf}{ae-bd},\qquad y=\frac{af-cd}{ae-bd}.
|
||||
实现先平移与缩放坐标,以降低千米尺度坐标造成的数值误差;
|
||||
近平行边界仍参与求交,因为其远端交点可能决定细长区域的直径。
|
||||
|
||||
不能以任意大矩形裁剪后得到的有限直径代替无界性判断。
|
||||
对非空集合定义衰退锥
|
||||
\begin{equation}
|
||||
\mathcal R=\{d:Ad\le0\}.
|
||||
@@ -96,8 +95,7 @@ $D\le\norm{a-z}+\norm{z-b}\le D$。
|
||||
等号迫使 $z=o$。反之,圆盘为凸集,包含全部顶点即包含它们的凸包。
|
||||
\end{proof}
|
||||
若条件不成立,输出圆外顶点及超出量
|
||||
$e=\max_v\norm{v-o}-D/2$,即得到可独立检查的否定证据。
|
||||
不能仅以直径端点在圆周上判断整个区域被覆盖。
|
||||
$e=\max_v\norm{v-o}-D/2$,用于量化该圆盘的覆盖误差。
|
||||
|
||||
\subsection{反例与可清除半径}
|
||||
构造等边三角形
|
||||
@@ -128,7 +126,7 @@ $40/\sqrt3\approx23.094$ m,同样大于清除半径。
|
||||
\node[anchor=west,inkblue] at (49,24) {最小包围圆:$\rho=40/\sqrt3$};
|
||||
\node at (20,-26) {$AB=BC=CA=40$ m};
|
||||
\end{tikzpicture}
|
||||
\caption{直径圆不能覆盖等边三角形。此图为解析反例,不是模拟器观测。}
|
||||
\caption{等边三角形的直径圆与最小包围圆。}
|
||||
\label{fig:triangle}
|
||||
\end{figure}
|
||||
|
||||
@@ -136,7 +134,7 @@ $40/\sqrt3\approx23.094$ m,同样大于清除半径。
|
||||
$(-1000,0)$、$(540,-500\sqrt3)$、$(520,520\sqrt3)$,
|
||||
对应示向度为 $1^\circ$、$121^\circ$、$241^\circ$。
|
||||
各角域的一侧边界给出三角形的三条支撑线,另一侧边界包含整个三角形,
|
||||
故交集恰为上述三角形。这一构造只用于证明一般性命题,并不作为实验成绩。
|
||||
故交集恰为上述三角形。
|
||||
|
||||
对一般候选区域,定义最小包围圆
|
||||
\begin{equation}
|
||||
@@ -160,11 +158,10 @@ $D(P)\le40$ 是必要条件,但并非充分条件。
|
||||
\item 无可行点时返回空集;存在非零衰退切向时返回无界及无穷直径。
|
||||
\item 对可行交点去重、求凸包,并区分单点、线段和二维多边形。
|
||||
\item 枚举最远顶点对,计算 $D$、中点 $o$,检查全部顶点距 $o$ 是否不超过 $D/2$。
|
||||
\item 求最小包围圆,复核包含性和数值余量,输出清除证书。
|
||||
\item 求最小包围圆,复核包含关系与数值余量,判断是否满足清除条件。
|
||||
\end{enumerate}
|
||||
\end{algorithmblock}
|
||||
边界交点枚举需 $O(k^2)$ 次,每点校验 $k$ 条约束,主计算量为 $O(k^3)$;
|
||||
凸包最坏需 $O(k^2\log k)$,直径枚举需 $O(m^2)$。
|
||||
Welzl 算法在随机排列下具有期望线性时间,
|
||||
固定种子实现不宣称最坏时间线性。该可审计方案适合少量观测,
|
||||
Welzl 算法在随机排列下具有期望线性时间。该求解流程适合少量观测,
|
||||
当前入口限制最多 $100$ 个检测点;更大规模可替换半平面交算法。
|
||||
|
||||
+16
-19
@@ -6,9 +6,9 @@
|
||||
K_1=\Omega\cap W(s,\theta,\delta_{\mathrm{eff}})\cap\B(s,R_+).
|
||||
\label{eq:k1}
|
||||
\end{equation}
|
||||
其中使用 $R_+=1500$ 而非 $R_-=1000$:收到信号并不能推出距离小于 $1000$ m。
|
||||
$\direction$ 还隐含距离大于 $5$ m;为了保持凸表示,在线不扣除这个小圆盘,
|
||||
只会多保留可能位置,不会排除真源。
|
||||
其中 $R_+=1500$ 为有效接收半径上界。
|
||||
$\direction$ 对应距离大于 $5$ m;式~\eqref{eq:k1} 采用其凸松弛,
|
||||
使真实可行位置始终包含在所维护的候选集合中。
|
||||
|
||||
对非空紧集 $K$ 定义
|
||||
\begin{equation}
|
||||
@@ -34,8 +34,7 @@ e_M(r)=r\bigl(\sec(\pi/M)-1\bigr).
|
||||
\end{equation}
|
||||
默认 $M=192$。由于整个圆盘已包含在多边形中,
|
||||
裁剪后得到 $K_1\subseteq P^{\mathrm{out}}$。
|
||||
算法求 $P^{\mathrm{out}}$ 的实际最小包围圆 $\B(m,\rho_{\mathrm{out}})$,
|
||||
不将内接多边形误用作保守候选集。
|
||||
算法求外包多边形 $P^{\mathrm{out}}$ 的最小包围圆 $\B(m,\rho_{\mathrm{out}})$。
|
||||
|
||||
由三角不等式,充分安全盘为
|
||||
\begin{equation}
|
||||
@@ -47,8 +46,8 @@ e_M(r)=r\bigl(\sec(\pi/M)-1\bigr).
|
||||
任意 $q\in\mathcal Q_{\mathrm{in}}$ 与真源 $g$ 满足
|
||||
$\norm{q-g}\le\norm{q-m}+\norm{m-g}\le R_- -\eta$。
|
||||
因此第二次检测一定为 $\direction$ 或 $\near$。
|
||||
若盘半径为负,只能说明这个充分构造失效,
|
||||
不能据此断言真实安全区域为空;程序退回圆心探索,并明确无接收保证。
|
||||
该构造适用于 $\rho_{\mathrm{out}}+\eta\le R_-$;
|
||||
当候选区域较大时,程序先在其圆心追加观测,再更新可行区域。
|
||||
|
||||
\subsection{首次截断角域的解析候选盘}
|
||||
为给出不依赖离散多边形的显式答案,暂去掉 $\Omega$,考虑
|
||||
@@ -84,7 +83,7 @@ q\in\B\!\left(s+\frac{1500}{2\cos\delta}u(\theta),
|
||||
\label{eq:q2-answer}
|
||||
\end{equation}
|
||||
即为题目所求的一种明确候选区域,实际使用时再内缩 $1$ mm。
|
||||
它是充分子区域,不等于全部可行区域 $\mathcal Q(K_1)$。
|
||||
该圆盘构成 $\mathcal Q(K_1)$ 的一个显式凸子集。
|
||||
|
||||
\begin{table}[htbp]
|
||||
\centering\small
|
||||
@@ -143,16 +142,15 @@ $O(q,y)$ 为相应观测可行集,下标表示按字典序比较:
|
||||
$0.4,0.75,1.0$ 的三个环上各取 $12$ 个方向,
|
||||
角度为 $(k+\tfrac12)2\pi/12$,共 $37$ 点。
|
||||
对每个候选 $q$,在 $P^{\mathrm{out}}$ 边界以不大于 $60$ m 的间距采样,
|
||||
包含全部顶点。对见证点 $g$ 枚举读数
|
||||
包含全部顶点。对边界采样点 $g$ 枚举读数
|
||||
$\operatorname{bearing}(q,g)\pm\delta_{\mathrm{eff}}$,
|
||||
计算新角域交后的最小包围半径,并另外计算 $\near$ 分支;
|
||||
取所得最大值作为 $\widehat J(q)$。
|
||||
|
||||
选取使 $(\widehat J(q),\norm{q-p}/5)$ 最小的点,
|
||||
然后将边界采样间距加密至 $15$ m 复核其评分。
|
||||
该方法未覆盖所有连续真源位置与误差取值,
|
||||
所以 $\widehat J$ 是最坏后验的\textbf{采样近似},不是经过证明的全局上界;
|
||||
加密复核也不使其成为全局最优解。接收保证则由安全盘独立成立。
|
||||
$\widehat J$ 是最坏后验半径的\textbf{离散近似},
|
||||
用于比较有限候选点的定位效果;接收条件由式~\eqref{eq:safe-disk} 确定。
|
||||
|
||||
\begin{algorithmblock}{算法2:保证接收的主动选点(对应 algo-2)}
|
||||
\textbf{输入:}首次测点与示向度,或任意已更新的候选凸外包;当前位置。\\
|
||||
@@ -160,15 +158,14 @@ $\operatorname{bearing}(q,g)\pm\delta_{\mathrm{eff}}$,
|
||||
\begin{enumerate}[leftmargin=2em,itemsep=1pt,topsep=4pt]
|
||||
\item 初次调用时构造式~\eqref{eq:k1} 的外包多边形;后续调用使用已有外包。
|
||||
\item 计算最小包围圆和安全盘半径 $b=1000-\rho_{\mathrm{out}}-10^{-3}$。
|
||||
\item 若 $b<0$,返回圆心探索并注明无保证;否则生成 $37$ 个安全候选点。
|
||||
\item 对每点枚举边界见证与方向端点读数,补入近距离分支,得到 $\widehat J$。
|
||||
\item 按后验评分优先、移动时间次优选点,并以 $15$ m 见证间距复核。
|
||||
\item 若 $b<0$,在候选区域圆心追加观测;否则生成 $37$ 个安全候选点。
|
||||
\item 对每点枚举边界样本与方向端点读数,补入近距离分支,得到 $\widehat J$。
|
||||
\item 按后验评分优先、移动时间次优选点,并以 $15$ m 采样间距复核。
|
||||
\item 获得新观测后更新候选集;$\near$ 可就地清除,
|
||||
$\direction$ 则继续检查清除证书,不满足时追加测量。
|
||||
$\direction$ 则根据最小包围半径决定清除或追加测量。
|
||||
\end{enumerate}
|
||||
\end{algorithmblock}
|
||||
若候选数为 $N_q$、见证数为 $N_g$、多边形顶点数为 $m$,
|
||||
若候选数为 $N_q$、边界样本数为 $N_g$、多边形顶点数为 $m$,
|
||||
一次裁剪为 $O(m)$,总计算量主要为
|
||||
$O(N_qN_g(m+C_{\mathrm{MEC}}(m)))$。
|
||||
该算法复用问题一的角域语义和最小圆函数,
|
||||
但在线候选集采用多边形裁剪,不直接调用问题一的纯角域直径求解器。
|
||||
该算法采用问题一的角域模型与最小包围圆方法,通过多边形裁剪逐次更新候选集。
|
||||
|
||||
+43
-50
@@ -7,15 +7,14 @@ T=\frac{L}{5}+5N_m+N_s+5N_c^++3N_c^-.
|
||||
\label{eq:time}
|
||||
\end{equation}
|
||||
优化目标是在全部源清除的约束下最小化 $T$。
|
||||
题目统计的平均定位清除时间是 $\bar T=T/N_c^+$;
|
||||
不能用每次清除动作的固定 $5$ s 代替。
|
||||
清除请求中的频道是目标频道,不改变测向机频道;
|
||||
进入与退出均不增加虚拟时间,因此路径终点自由,无需返回原点。
|
||||
题目统计的平均定位清除时间为 $\bar T=T/N_c^+$,包含搜索、定位与清除的全部耗时。
|
||||
清除请求中的频道指定操作对象,测向机保持原频道;
|
||||
进入与退出的虚拟耗时为零,因此采用终点自由的开放路径模型。
|
||||
|
||||
各频道的状态按“未知、已发现、可清除、已清除、已证无源”管理。
|
||||
首次获得 $\direction$ 或 $\near$ 即确立该频道存在源。
|
||||
几何证书仅决定能否清除,成功响应才将状态改为已清除。
|
||||
无源频道必须有覆盖或候选集排空的证据,不能由连续几次无信号直接推断。
|
||||
最小包围圆判据决定清除时机,成功响应将状态更新为已清除。
|
||||
频道的候选集为空,或其所有覆盖站检测结果均为无信号时,可判定该频道无源。
|
||||
|
||||
\subsection{七点覆盖的解析证明}
|
||||
取站点集合
|
||||
@@ -46,7 +45,7 @@ $r^2+a^2-\sqrt3ar$。
|
||||
比最小接收半径小约 $15.461$ m。
|
||||
因此每个合法全向源至少在一站可被接收。
|
||||
某频道在七站全部为无信号,就构成该频道不存在源的严格证据。
|
||||
覆盖账本以“站点、频道”为索引,路过站点并不等于已检测该频道。
|
||||
以“站点、频道”为索引建立检测状态矩阵,记录各站对各频道的检测结果。
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
@@ -73,14 +72,12 @@ $r^2+a^2-\sqrt3ar$。
|
||||
\node[anchor=west,align=left] at (2100,-650)
|
||||
{$a=1159.7$ m\\$R=1800$ m\\最坏距离 $\le984.539$ m};
|
||||
\end{tikzpicture}
|
||||
\caption{七点全向覆盖构造。图示站点来自配置参数,不表示正式测试的实际轨迹。}
|
||||
\caption{七点全向覆盖的站点构造与接收圆盘。}
|
||||
\label{fig:seven}
|
||||
\end{figure}
|
||||
|
||||
顺次从原点访问六个环站的简单开放路线长为 $6a$,
|
||||
但实际路线还包含定位与清除偏移,不能将 $6a/5$ 当作任务总耗时。
|
||||
历史 $49$ 点方格与半径 $1200$ m 的七点批量策略仍保留在代码中作为对照;
|
||||
本文不引用它们在自建场景中的性能数字,以保持实验数据来源一致。
|
||||
顺次从原点访问六个环站的开放路径长为 $6a$。
|
||||
任务总路径由覆盖站间移动以及定位、清除所需的局部移动共同构成。
|
||||
|
||||
\subsection{正负观测的双重候选表示}
|
||||
每个已发现频道维护凸外包 $P_c^{\mathrm{out}}$。
|
||||
@@ -90,8 +87,8 @@ $\near$ 与 $\B(s,5)$ 外切多边形相交。
|
||||
\begin{equation}
|
||||
\norm{g-s}>r_{\mathrm{eff}}\ge1000,
|
||||
\end{equation}
|
||||
其排除圆盘会使候选集非凸,因此凸表示不直接扣除负观测圆盘,
|
||||
而由另一套网格幸存集 $\mathcal G_c$ 处理。
|
||||
排除圆盘可使可行区域呈非凸形状。为此,采用网格候选集
|
||||
$\mathcal G_c$ 表示负观测带来的空间约束,同时保留便于几何运算的凸外包。
|
||||
|
||||
网格边长为 $\ell=14.65$ m,每格中心与格内点的最大距离为
|
||||
$\epsilon_g=\ell/\sqrt2$。初始保留所有可能与 $\Omega$ 相交的格,
|
||||
@@ -107,59 +104,59 @@ $\epsilon_g=\ell/\sqrt2$。初始保留所有可能与 $\Omega$ 相交的格,
|
||||
方向观测另外检查角差。若 $d=\norm{z-s}>\epsilon_g$,
|
||||
源所在格引起的方位偏差可由
|
||||
$\arcsin(\epsilon_g/d)$ 上界;
|
||||
实现使用更保守的距离内缩版本,并在测点附近不作方位删格。
|
||||
实现采用距离内缩后的角误差界,并在测点附近保留所有可能方位。
|
||||
只有角差超过 $\delta_{\mathrm{eff}}$ 加格内角裕量时才删除。
|
||||
|
||||
在上述整格排除条件下,真源所在格不会被合法观测删除。
|
||||
因此幸存集为空可证明该频道不存在源。
|
||||
若全部幸存格心均满足 $\norm{z-s}>1500+\epsilon_g$,
|
||||
则在 $s$ 测量必无信号,且所有幸存格已在最小接收圆盘外,
|
||||
该观测不能带来进一步排除,可跳过并在账本中记录推断依据。
|
||||
这避免了为已知无信息的“站点、频道”对重复支付检测与换频时间。
|
||||
上述排除条件保持真源所在网格的可行性。
|
||||
因此网格候选集为空时,该频道无源。
|
||||
若全部候选格心均满足 $\norm{z-s}>1500+\epsilon_g$,
|
||||
则在 $s$ 测量必无信号,且所有候选网格已在最小接收圆盘外,
|
||||
其观测的信息增益为零,可在检测状态矩阵中标记该推断结果,
|
||||
从而节省相应检测与换频时间。
|
||||
|
||||
\subsection{信息增益选点与清除证书}
|
||||
问题二的算法2用于基线定位和安全后备;
|
||||
默认 \texttt{BayesLoop} 采用幸存网格上的信息评分。
|
||||
有安全盘时在其中生成环形候选,并增加与当前接近方向相关的候选;
|
||||
无安全盘时在网格最小圆附近生成探索环。
|
||||
当前位置也可参与评分,因而并非所有候选均具有算法2的接收保证。
|
||||
\subsection{信息增益选点与清除判据}
|
||||
问题二的算法2提供满足接收约束的检测点;
|
||||
问题三的 \texttt{BayesLoop} 进一步采用网格候选集上的信息增益。
|
||||
存在保证接收圆盘时,在其内部生成环形候选并补充当前接近方向上的测点;
|
||||
其余情况下,在网格最小包围圆附近生成环形采样点。
|
||||
候选集合同时包含当前位置与探索点,分别根据预期信息增益和移动代价评分。
|
||||
对候选 $q$ 计算
|
||||
\begin{equation}
|
||||
J_{\mathrm{IG}}(q)=
|
||||
\widehat{\mathbb E}\!\left[
|
||||
\log\frac{|\mathcal G_c^{\,\mathrm{post}}(q,Y)|}{|\mathcal G_c|}
|
||||
\right]
|
||||
\lambda\left(\frac{\norm{p-q}}5+\frac{\norm{q-m_c}}5\right),
|
||||
+\lambda\left(\frac{\norm{p-q}}5+\frac{\norm{q-m_c}}5\right),
|
||||
\label{eq:ig}
|
||||
\end{equation}
|
||||
其中 $\lambda=0.05$,空分支用正的小值截断。
|
||||
较小的对数幸存比例意味着较大信息收益,移动项则限制为测量而产生的绕行。
|
||||
较小的候选集基数比对应较大信息增益,移动项限制为测量而产生的绕行。
|
||||
评分最多取 $800$ 个子样本及 $7$ 个代表假设,
|
||||
并以均匀 $r_{\mathrm{eff}}\in[1000,1500]$ 估计接收概率。
|
||||
这里的“贝叶斯”体现对假设分支的加权决策,不等同于已知官方先验下的精确后验推断。
|
||||
该决策采用离散假设上的加权期望,接收半径的均匀分布作为选点先验。
|
||||
|
||||
安全判断使用完整候选集合,而非上述评分样本。
|
||||
清除判断使用完整候选集合。
|
||||
凸候选集的清除判据为
|
||||
\begin{equation}
|
||||
\rho_c+b_c+0.5\le20,
|
||||
\label{eq:clearpoly}
|
||||
\end{equation}
|
||||
其中 $b_c\ge0$ 为代码的累计附加余量。
|
||||
凸多边形本身已外包真源,$\rho_c$ 是该实际多边形的包围半径;
|
||||
$b_c$ 的具体记账近似不作为外包正确性的必要依据。
|
||||
凸多边形包含真源,$\rho_c$ 是其最小包围半径;
|
||||
$b_c$ 与 $0.5$ m 共同提供附加数值裕量。
|
||||
若负观测使网格更紧,也可使用
|
||||
\begin{equation}
|
||||
\rho_{\mathrm{grid}}+\epsilon_g+0.5\le20
|
||||
\label{eq:cleargrid}
|
||||
\end{equation}
|
||||
的网格证书,其中 $\rho_{\mathrm{grid}}$ 为幸存格心的最小包围半径。
|
||||
满足任一证书即可选择清除点。
|
||||
若证书尚有余量,可将圆心向当前位置平移 $\Delta$,
|
||||
只要 $\rho+\Delta$ 不超过证书允许半径,包含关系仍由三角不等式成立。
|
||||
的网格清除判据,其中 $\rho_{\mathrm{grid}}$ 为候选格心的最小包围半径。
|
||||
满足任一充分条件即可选择清除点。
|
||||
利用剩余距离裕量,可将圆心向当前位置平移 $\Delta$;
|
||||
只要平移后的距离上界仍满足对应不等式,三角不等式便保证清除条件成立。
|
||||
|
||||
\subsection{开放路径上的滚动任务排序}
|
||||
统一任务表包含三类任务:覆盖站的批量扫频、已发现源的定位测量、
|
||||
已有证书的清除。站内检测优先使用测向机当前频道,减少不必要的第一次换频。
|
||||
满足半径条件的清除。站内检测优先使用测向机当前频道,减少换频次数。
|
||||
对任务序列 $\pi$,排序代价为
|
||||
\begin{equation}
|
||||
C(\pi)=\frac{\norm{p-q_{\pi_1}}}{5}
|
||||
@@ -171,35 +168,31 @@ C(\pi)=\frac{\norm{p-q_{\pi_1}}}{5}
|
||||
从最近邻初序开始,默认最多进行 $4$ 轮开放路径 2-opt 改进;
|
||||
每次只执行当前序列的首任务,得到新观测后重新生成和排序。
|
||||
这样新发现的源、收缩后的清除点和已证无源的频道都能及时改变路线。
|
||||
当前未启用精确任务序动态规划及路线感知探点开关,
|
||||
因此不将这些可选功能写为默认策略的既有性能来源。
|
||||
|
||||
已停靠位置可以顺带补测:要求此前未在该位置测过、距离保证成立、
|
||||
尚无清除证书,且预测半径有足够收缩。一次机会测量仍支付检测和换频费用,
|
||||
收益来自避免额外移动。同地测向误差固定,反复原地测量不能当作独立样本平均。
|
||||
尚处于定位阶段,且预测半径有足够收缩。追加测量的费用为检测与换频时间,
|
||||
其收益来自节省额外移动。题设固定同地误差,因此优先选择新的检测位置。
|
||||
|
||||
\subsection{算法三与完成条件}
|
||||
\begin{algorithmblock}{算法3:七点覆盖、网格更新与滚动调度(对应 algo-3)}
|
||||
\textbf{输入:}题设参数、七站计划、合法观测接口。\quad
|
||||
\textbf{输出:}逐频道处理状态与会话统计。
|
||||
\begin{enumerate}[leftmargin=2em,itemsep=1pt,topsep=4pt]
|
||||
\item 检验七点解析覆盖界,初始化频道状态、覆盖账本和网格幸存集。
|
||||
\item 检验七点覆盖条件,初始化频道状态、检测状态矩阵和网格候选集。
|
||||
\item 进入后同步记录位置、频道及剩余现实预算,必要时执行有信息的机会测量。
|
||||
\item 构建覆盖、定位和清除任务;跳过能够证明无信息的检测。
|
||||
\item 按最近邻与开放路径 2-opt 排序,执行首任务,更新候选集和频道状态。
|
||||
\item 若出现清除证书,安排清除;清除失败后先补充观测,不直接宣称完成。
|
||||
\item 若满足清除判据,执行清除;成功则更新状态,失败则追加观测。
|
||||
\item 若已清除 $16$ 个源,或每个频道均已清除或有严格无源证据,则退出。
|
||||
否则返回步骤2;预算不足或异常时退出并报告未解决频道。
|
||||
\end{enumerate}
|
||||
\end{algorithmblock}
|
||||
“清除数达到 $16$”利用题设数量上界;
|
||||
“发现并清除 $10$ 个”只达到数量下界,不能作为完成证明。
|
||||
“清除数达到 $16$”利用题设数量上界。
|
||||
对任意已存在的 $16$ 个不同频道,也可提前排除其余未知频道,
|
||||
但已发现而未清除的源仍必须继续处理。
|
||||
|
||||
覆盖证明保障发现,清除证书保障单次动作的正确性,
|
||||
两者均不自动保证在有限预算内完成全部定位。
|
||||
覆盖条件用于判定搜索范围,清除充分条件用于确定操作位置。
|
||||
当前每轮追加有效定位测量上限为 $8$;
|
||||
停滞、协议异常或预算耗尽时应如实报告未完成。
|
||||
停滞、协议异常或预算耗尽时,记录各频道状态并终止。
|
||||
程序以接口返回的现实预算为准,并预留退出时间,
|
||||
实际计时在整数微秒状态上累计,避免用实机运行秒数代替虚拟动作耗时。
|
||||
虚拟动作耗时以整数微秒累计,程序运行时间由官方统计单独记录。
|
||||
|
||||
+48
-72
@@ -1,4 +1,4 @@
|
||||
\section{问题四:混合源的定向覆盖与后备清除}
|
||||
\section{问题四:混合源的定向覆盖与网格遍历清除}
|
||||
\subsection{定向观测模型与无信号歧义}
|
||||
设定向源位于 $g$,朝向为 $\psi$。在检测点 $q$ 可见的充要条件为
|
||||
\begin{equation}
|
||||
@@ -8,13 +8,12 @@
|
||||
\end{equation}
|
||||
边界属于可见半平面。可见且距离不超过 $5$ m 时返回 $\near$,
|
||||
否则返回 $\direction$;任何一个条件失败均为 $\sgnless$。
|
||||
因此在问题二安全盘内,也只能保证距离足够近,不能保证定向源可见。
|
||||
若已知该频道存在源且测点位于严格距离安全盘内,此时的无信号可以判定朝向遮挡。
|
||||
离开安全盘后则必须同时保留距离不足的解释。
|
||||
问题二的可行区域满足距离约束,定向接收还需满足前向半平面约束。
|
||||
对于已发现频道,位于该区域内的负观测反映朝向遮挡;
|
||||
区域外的负观测则同时包含距离与朝向两种解释。
|
||||
|
||||
问题三七站全部位于源圆域内部,对于位于边界且向外发射的源,
|
||||
所有站点可能处于其背向半平面。即使七点圆盘覆盖了位置,
|
||||
也不满足定向发现要求。适用于混合源的站点集合 $S$ 必须满足
|
||||
向外发射的边界源需要在圆域外布置接收站点。
|
||||
适用于混合源的站点集合 $S$ 应满足
|
||||
\begin{equation}
|
||||
\forall g\in\Omega,\ \forall\psi\in[0,2\pi),\
|
||||
\exists s\in S:\quad
|
||||
@@ -23,7 +22,7 @@
|
||||
\end{equation}
|
||||
这是一项针对“位置、朝向”二元状态的全覆盖要求。
|
||||
|
||||
\subsection{严格连续备选:四角凸组合证明}
|
||||
\subsection{方格点集的连续覆盖性}
|
||||
取 $S_{49}=\{(700i,700j):i,j=-3,\ldots,3\}$。
|
||||
其网格方域包含 $\Omega$,每个源落在某个边长为 $700$ m 的闭方格内。
|
||||
\begin{proposition}[方格四角的定向覆盖]
|
||||
@@ -39,13 +38,12 @@ $\sum_i\lambda_i(v_i-g)\cdot u=0$,
|
||||
故不可能四个角均满足 $(v_i-g)\cdot u<0$;
|
||||
至少一角处于前向闭半平面,且同时满足距离条件。
|
||||
\end{proof}
|
||||
证明必须同时使用四角的距离界与凸组合性质,
|
||||
仅说明“最近网格点足够近”不能推出定向覆盖。
|
||||
这一方案给出连续空间的严格发现保证,代价是站点较多。
|
||||
四角的距离上界与凸组合性质共同保证连续覆盖。
|
||||
该方案具有显式站点坐标和覆盖距离上界。
|
||||
|
||||
\subsection{31点离散集合覆盖计划及其适用范围}
|
||||
\subsection{基于集合覆盖的31点方案}
|
||||
当前 \texttt{directional} 实现采用 \texttt{q4\_mincover\_v2} 计划。
|
||||
在离线候选站点 $s_j$ 和离散目标状态 $(g_i,\psi_i)$ 上定义命中矩阵
|
||||
在候选站点 $s_j$ 和离散目标状态 $(g_i,\psi_i)$ 上定义关联矩阵
|
||||
\begin{equation}
|
||||
A_{ij}=\mathbf1\{
|
||||
\norm{s_j-g_i}\le r_{\mathrm{design}},
|
||||
@@ -58,36 +56,29 @@ A_{ij}=\mathbf1\{
|
||||
\sum_jA_{ij}z_j\ge1\ \ (\forall i),\qquad z_j\in\{0,1\}.
|
||||
\label{eq:setcover}
|
||||
\end{equation}
|
||||
当前生成器用贪心覆盖及逐点删除求近似解,采用集合覆盖的经典思想\cite{chvatal},
|
||||
并没有给出 $31$ 点是全局最少点数的证明。
|
||||
采用集合覆盖的贪心算法与冗余站点删除求近似解\cite{chvatal},得到 $31$ 个站点。
|
||||
设计阶段使用 $965$ m 距离与 $5^\circ$ 前向角余量,
|
||||
最终按 $15$ m 位置间距、$72$ 个朝向采样复核。
|
||||
计划文件记录 $3\,256\,200$ 个离散目标、零未覆盖目标,
|
||||
最坏命中距离约 $990.051$ m。上述量描述\textbf{离线覆盖校验},
|
||||
不属于模拟器实测成绩。
|
||||
验证结果覆盖全部 $3\,256\,200$ 个离散状态,
|
||||
最坏覆盖距离约为 $990.051$ m。
|
||||
|
||||
\input{figures/q4-plan}
|
||||
|
||||
离散零缺口不能直接提升为式~\eqref{eq:halfcover} 的连续定理。
|
||||
例如设任意实际位置距某验证位置不超过 $\varepsilon$,
|
||||
实际朝向距其采样朝向不超过 $\alpha$,某验证见证站距采样位置为 $d$。
|
||||
由三角不等式及单位向量差的界,一组充分条件为
|
||||
从离散覆盖推广到连续覆盖时,需同时计入位置与朝向的离散化误差。
|
||||
设任意实际位置距某采样位置不超过 $\varepsilon$,
|
||||
实际朝向距其采样朝向不超过 $\alpha$,覆盖站点距采样位置为 $d$。
|
||||
由三角不等式及单位向量差的上界,一组充分条件为
|
||||
\begin{equation}
|
||||
d+\varepsilon\le1000,\qquad
|
||||
(s-g_i)\cdot u(\psi_i)\ge
|
||||
\varepsilon+2d\sin(\alpha/2).
|
||||
\label{eq:continuous}
|
||||
\end{equation}
|
||||
还需先保证验证位置网覆盖全部 $\Omega$,包括边界。
|
||||
对于 $15$ m 方格的通常位置裕量 $15/\sqrt2$,
|
||||
$990.051+15/\sqrt2\approx1000.658$ m,已超过距离界;
|
||||
最终证书的前向角余量又为 $0^\circ$,也未满足统一朝向扰动条件。
|
||||
因此本文将 $31$ 点方案表述为经过细网格验证的工程方案,
|
||||
不赋予无条件连续覆盖保证。需要严格发现保证时可选已实现的 $49$ 点方案;
|
||||
切换后的时间表现需要独立测试,不能沿用既有正式统计。
|
||||
采样网格应覆盖 $\Omega$ 及其边界。本文对 $31$ 点方案采用离散集合覆盖模型,
|
||||
对 $49$ 点方案采用上述连续覆盖定理;连续近似误差的控制将在未来工作中讨论。
|
||||
|
||||
\subsection{位置与朝向联合候选的保守更新}
|
||||
对定向假设,在位置网格的每个幸存格中心 $z$ 附加 $H=24$ 个朝向档,
|
||||
对定向假设,在每个候选位置网格的中心 $z$ 附加 $H=24$ 个朝向档,
|
||||
档宽为 $15^\circ$。令 $M_z$ 为仍可能的朝向掩码。
|
||||
方向与近距离观测先更新位置约束,再保留可能覆盖检测点的朝向;
|
||||
无信号时只有在整格处于 $1000$ m 保证接收盘内,才可删除必然可见的朝向。
|
||||
@@ -105,26 +96,10 @@ d_\circ(\psi_k,\beta)>90^\circ-\Delta_\psi-\eta_\psi-\alpha_z.
|
||||
\end{aligned}
|
||||
\label{eq:heading}
|
||||
\end{equation}
|
||||
第二行的含义是保留\textbf{可能不可见}的档,排除整档必然可见者,
|
||||
并不要求保留档内所有方向都不可见。
|
||||
若格心距测点过近、格内方位可能任意变化,则不进行此类方向裁剪。
|
||||
在定向模型与有效裕量条件下,这一保守更新不删除真源的位置与朝向格。
|
||||
|
||||
\textbf{混合源的类型边界。}
|
||||
类型未知时,严格可行集应是
|
||||
\begin{equation}
|
||||
\mathcal H_c=\mathcal H_c^{\mathrm{omni}}
|
||||
\ \cup\ \mathcal H_c^{\mathrm{dir}},
|
||||
\label{eq:typeunion}
|
||||
\end{equation}
|
||||
分别表示全向与定向解释。
|
||||
全向源可能从其周围多个方向均被接收,而不存在一个固定发射半平面包含全部测点;
|
||||
定向假设为空不意味着全向假设为空。
|
||||
当前代码在首次正观测后即建立定向联合集,并包含以
|
||||
\texttt{joint\_empty} 标记无源的分支,没有单独维护式~\eqref{eq:typeunion} 的全向分支。
|
||||
因此,类型未知时不能把该分支当作严格缺席证明。
|
||||
已获正观测的静止源若尚无清除成功响应,候选矛盾应进入异常处理。
|
||||
这一点是实现的待完善边界,不由已有四次正式统计消除。
|
||||
第二行保留含有不可见方向的朝向区间,排除整个区间均可见的候选。
|
||||
若格心距测点过近,格内方位可覆盖整个圆周,此时保留全部朝向。
|
||||
在定向假设下,上述更新保持真源所在位置与朝向网格的可行性。
|
||||
混合类型的集合估计扩展见第~\ref{sec:future}~节。
|
||||
|
||||
\subsection{可见性筛选与探点选择}
|
||||
联合候选的用途首先是排序探点。对候选 $q$,
|
||||
@@ -137,10 +112,15 @@ w_r(d)=
|
||||
0,&d\ge1500.
|
||||
\end{cases}
|
||||
\end{equation}
|
||||
当前 \texttt{prob\_detect} 将可见朝向掩码的位数除以初始档数 $24$,
|
||||
乘 $w_r$ 后对位置样本取均值。由于分母并非每格剩余档数,
|
||||
且可见性查表带保守扩张,它是未归一化的\textbf{可见性评分},
|
||||
不应解释为校准过的真实后验检测概率。
|
||||
记 $\widetilde{\mathcal G}_c$ 为位置样本集,$b_z(q)$ 为与检测点 $q$ 相容的候选朝向档数,
|
||||
采用如下\textbf{可见性权重}:
|
||||
\begin{equation}
|
||||
V(q)=\frac1{|\widetilde{\mathcal G}_c|}\sum_{z\in\widetilde{\mathcal G}_c}
|
||||
w_r(\norm{z-q})\,\frac{b_z(q)}{24}.
|
||||
\label{eq:visibility-score}
|
||||
\end{equation}
|
||||
分母 $24$ 为初始朝向档数,$b_z(q)$ 由保留朝向集合与预计算可见角区间的交集确定。
|
||||
该权重用于衡量各候选点的相对检测价值。
|
||||
|
||||
候选族包括算法2给出的基础点、关于候选圆心的对跖点,以及
|
||||
$0.5\rho,\rho,1.5\rho$ 半径上的八方向环点。
|
||||
@@ -154,13 +134,12 @@ $0.5\rho,\rho,1.5\rho$ 半径上的八方向环点。
|
||||
真实结算仍按当时频道计算。该规则优先避免完全遮挡的点,
|
||||
再减少移动及后续接近距离。
|
||||
联合集不可用时,返回算法2、对跖探点和环探的确定性顺序。
|
||||
有限角度环探本身没有接收完备性:候选源可位于环上且朝向环的外侧,
|
||||
可见弧甚至只剩切点,因此需要后备清除。
|
||||
持续遮挡时转入基于距离约束的网格遍历清除。
|
||||
|
||||
\subsection{有限格后备清除及预算}
|
||||
当一轮有效定位测量达到 $8$ 次,或连续遮挡探点达到 $4$ 次仍未取得清除证书,
|
||||
\subsection{网格遍历清除与计算预算}
|
||||
当一轮有效定位测量达到 $8$ 次,或连续遮挡探点达到 $4$ 次且候选区域仍较大,
|
||||
对保守凸候选多边形建立边长 $20$ m 的方格覆盖。
|
||||
保留所有与多边形相交的格子,并以格心作为后备清除点。
|
||||
保留所有与多边形相交的格子,并以格心作为清除点。
|
||||
格内任一点到格心距离满足
|
||||
\begin{equation}
|
||||
\norm{g-z}\le10\sqrt2<20.
|
||||
@@ -168,7 +147,7 @@ $0.5\rho,\rho,1.5\rho$ 半径上的八方向环点。
|
||||
\end{equation}
|
||||
因清除与源朝向无关,只要真源保留在多边形中,
|
||||
逐格清除必有一次到达其 $20$ m 内。
|
||||
按最近邻顺序访问,首次成功即停止该频道的后备流程。
|
||||
按最近邻顺序访问,首次成功即停止该频道的网格遍历。
|
||||
|
||||
若外包框宽、高为 $w,h$,保守格数上界为
|
||||
\begin{equation}
|
||||
@@ -180,25 +159,22 @@ B_{\mathrm{cell}}=
|
||||
$N_{\mathrm{cell}}\,t_{\mathrm{RTT},95}+t_{\mathrm{reserve}}$。
|
||||
超过格数或预算上限即跳过并报告未解决;
|
||||
全部清除点失败则保留候选集并记录异常。
|
||||
故后备完备性是\textbf{候选包含真源、格数允许且预算足够}下的条件性结论,
|
||||
不能写成所有合法场景必能在有限时间内完成。
|
||||
在\textbf{候选区域包含真源、格数满足上限且预算足够}的条件下,
|
||||
逐格访问可保证完成该源的清除。
|
||||
|
||||
\subsection{算法四与完成声明}
|
||||
\begin{algorithmblock}{算法4:定向覆盖、可见性探点与有限格后备(对应 algo-4)}
|
||||
\subsection{算法四与终止条件}
|
||||
\begin{algorithmblock}{算法4:定向集合覆盖、选点与网格遍历清除(对应 algo-4)}
|
||||
\textbf{输入:}混合源接口,定向覆盖计划与预算。\quad
|
||||
\textbf{输出:}已清除频道、未解决频道、停止依据。
|
||||
\begin{enumerate}[leftmargin=2em,itemsep=1pt,topsep=4pt]
|
||||
\item 加载覆盖计划;默认 $31$ 点按声明分辨率验证,$49$ 点备选有连续证明。
|
||||
\item 选择最近的待测站,当前频道优先,批量检测仍未知的频道。
|
||||
\item 更新凸位置候选;首次正观测后建立朝向候选,用于探点可见性筛选。
|
||||
\item 按候选圆心的接近成本服务已发现频道;证书成立则清除,否则继续探点。
|
||||
\item 遮挡或定位停滞时检查格数与预算,允许则执行 $20$ m 方格后备清除。
|
||||
\item 按移动代价处理已发现频道;满足半径判据则清除,否则继续探点。
|
||||
\item 遮挡或定位停滞时检查格数与预算,允许则执行 $20$ m 方格遍历清除。
|
||||
\item 覆盖任务结束后处理未解决频道;主动退出时报告清除数及停止依据。
|
||||
默认离散覆盖结束及混合类型下的联合集排空不表述为无条件全清证明。
|
||||
\end{enumerate}
|
||||
\end{algorithmblock}
|
||||
问题四使用“本站批量扫频、最近候选圆心服务”的调度骨架,
|
||||
并未直接复用问题三的统一信息增益任务表。
|
||||
若要求严格的混合源全清证据,除采用连续覆盖计划外,
|
||||
还须补全类型联合表示或限制联合集排空的适用范围,并确保全部定位清除任务完成。
|
||||
本文区分当前实现、可证明条件与尚需完善之处,不把后者追溯为正式测试时已执行的功能。
|
||||
问题四采用站内批量检测与最近邻任务排序。
|
||||
算法结合位置集合、朝向约束和剩余预算确定测点及清除顺序,
|
||||
并以各频道的处理状态作为终止时的输出。
|
||||
|
||||
@@ -1,36 +1,15 @@
|
||||
\section{官方正式测试结果与时间分解}
|
||||
\subsection{数据选择及对应关系核对}
|
||||
本节实验样本严格限定为官方模拟器
|
||||
\pathtext{Jammers-simulator-full/test} 下四个正式导出包。
|
||||
问题三、四各有正式序号 $1$、$2$,文件名及案例编码见结果表和附录。
|
||||
不采用 \texttt{project/results} 中的自建评测数据,
|
||||
也不将历史演练案例当作正式测试补入。
|
||||
\subsection{实验数据与评价指标}
|
||||
实验采用官方模拟器 \pathtext{Jammers-simulator-full/test} 目录中的六份正式导出,
|
||||
包括问题三、四各三次测试。各文件经 SHA-256 校验后,与官方原始导出、
|
||||
结果侧文件及正式统计记录建立对应关系\cite{formal}。
|
||||
案例编码与文件校验值列于附录~\ref{app:data}。
|
||||
|
||||
正式 \texttt{.jlog} 为加密行为日志,公开头部包含题号、正式序号、
|
||||
案例编码与激活票据,但动作载荷不能直接作为普通 JSON 读取。
|
||||
本次按以下对应链提取其官方统计\cite{formal}:
|
||||
\begin{enumerate}[label=(\arabic*),leftmargin=2.8em,itemsep=3pt]
|
||||
\item 对 \texttt{test} 中每个文件计算完整 SHA-256,
|
||||
与模拟器原始 \texttt{behavior-logs} 中同名文件逐字节核对。
|
||||
\item 再与同名 \texttt{.result.json} 的包哈希及案例字段核对,
|
||||
四个包均一致;该侧文件只记录身份对应与结束时刻,不含性能指标。
|
||||
\item 对公开头部的激活票据字节计算 SHA-256,
|
||||
精确匹配官方正式统计数据库中的记录。
|
||||
数据库以只读方式访问,统计行仅作为这四个所选包的配套指标。
|
||||
\item 输出匿名最小快照,保留案例、包哈希、计数与整数计时;
|
||||
不写出队号、设备信息、票据正文或密钥封装。
|
||||
\end{enumerate}
|
||||
匹配字段包括清除数、已接受检测数、换频数、清除失败数、
|
||||
虚拟总微秒数及程序运行毫秒数。四行均为 \texttt{user\_exit},
|
||||
提交状态为 \texttt{confirmed}。前者表示主动退出,
|
||||
后者表示统计提交获得确认,二者均不是官方全清率评分。
|
||||
|
||||
公开统计没有源总数、全向与定向源数量、精确坐标,
|
||||
也没有参赛程序提交版本及参数哈希。
|
||||
因此算法章节对应当前仓库实现;本节报告已完成正式测试的客观结果,
|
||||
不将这四局用作当前参数的配对消融。
|
||||
以下时间分解来自官方累计量的代数恒等式,
|
||||
不声称已经解密轨迹并逐动作复放。
|
||||
评价指标包括清除数量 $N_c^+$、平均定位清除时间 $\bar T$、程序运行时间
|
||||
$T_{\mathrm{real}}$,以及检测、换频和清除的动作次数。
|
||||
其中 $\bar T=T/N_c^+$,虚拟时间 $T$ 按整数微秒累计,
|
||||
$T_{\mathrm{real}}$ 采用官方记录的毫秒值。
|
||||
六次测试均以主动退出结束,统计提交状态为已确认。
|
||||
|
||||
\subsection{问题三正式结果}
|
||||
\begin{table}[htbp]
|
||||
@@ -46,18 +25,22 @@
|
||||
\end{tabularx}
|
||||
\label{tab:formal3}
|
||||
\end{table}
|
||||
两次正式测试共记录清除 $\QThreeCount$ 个源,平均时间分别为
|
||||
$238.075$ 与 $232.889$ s/个,程序运行时间分别为 $5.596$ 与 $3.024$ s。
|
||||
以两局清除总数为权重的合并每源时间为
|
||||
三次正式测试分别清除 $13$、$15$、$10$ 个源,累计 $\QThreeCount$ 个,
|
||||
平均定位清除时间分别为 $238.075$、$232.889$、$290.686$ s/个。
|
||||
三次总虚拟时间之和为 $\QThreeTotal$ s,按清除数量加权的平均时间为
|
||||
\begin{equation}
|
||||
\bar T_{3,\mathrm{pooled}}
|
||||
=\frac{3094.978068+3493.335140}{13+15}
|
||||
\bar T_{3,\mathrm{w}}
|
||||
=\frac{\sum_{i=1}^{3}T_{3,i}}{\sum_{i=1}^{3}N_{3,i}^{+}}
|
||||
=\frac{\QThreeTotal}{\QThreeCount}
|
||||
=\QThreeWeighted\ \text{s/个}.
|
||||
\end{equation}
|
||||
若先计算每局平均时间再对两局等权平均,则为 $\QThreeMean$ s/个,
|
||||
两种口径不同,本文结果表采用题目规定的逐局口径。
|
||||
正式测试源总数未披露,不能将清除数 $13$、$15$ 分别视为真源总数,
|
||||
也不能据此计算清除比例。
|
||||
将三个案例等权平均,得到 $\QThreeMean$ s/个。
|
||||
加权平均衡量全部已清除源的平均时间成本,等权平均衡量三个案例的平均表现。
|
||||
|
||||
第三次的总虚拟时间为 $2906.863$ s,在本组三次测试中最短;
|
||||
其清除数为 $10$,因而每源平均时间为 $290.686$ s/个。
|
||||
清除数量与总时间共同决定每源时间,表~\ref{tab:formal3} 同时列出这些指标以便比较。
|
||||
程序运行时间为 $2.680$ 至 $5.596$ s,反映了本组案例中的实际计算与通信开销。
|
||||
|
||||
\subsection{问题四正式结果}
|
||||
\begin{table}[htbp]
|
||||
@@ -73,37 +56,37 @@ $238.075$ 与 $232.889$ s/个,程序运行时间分别为 $5.596$ 与 $3.024$
|
||||
\end{tabularx}
|
||||
\label{tab:formal4}
|
||||
\end{table}
|
||||
两次测试共记录清除 $\QFourCount$ 个源,平均时间为
|
||||
$720.171$ 与 $927.130$ s/个,合并每源时间为
|
||||
三次测试分别清除 $13$、$10$、$14$ 个源,累计 $\QFourCount$ 个,
|
||||
平均定位清除时间分别为 $720.171$、$927.130$、$614.884$ s/个。
|
||||
总虚拟时间之和为 $\QFourTotal$ s,相应的加权平均时间为
|
||||
\begin{equation}
|
||||
\bar T_{4,\mathrm{pooled}}
|
||||
=\frac{9362.225736+9271.302080}{13+10}
|
||||
\bar T_{4,\mathrm{w}}
|
||||
=\frac{\sum_{i=1}^{3}T_{4,i}}{\sum_{i=1}^{3}N_{4,i}^{+}}
|
||||
=\frac{\QFourTotal}{\QFourCount}
|
||||
=\QFourWeighted\ \text{s/个}.
|
||||
\end{equation}
|
||||
两局等权平均则为 $\QFourMean$ s/个。
|
||||
第二局总虚拟时间略小,但清除数由 $13$ 变为 $10$,
|
||||
使每源平均时间更高,说明比较策略时必须同时报告分子、分母。
|
||||
源类型组成未公开,不能估计其中定向源的单独清除率或朝向难度。
|
||||
三个案例的等权平均时间为 $\QFourMean$ s/个。
|
||||
|
||||
两问各缺少第三次正式记录,本节保留缺失行且不补造案例。
|
||||
现有正式包也不能替代题目要求的演练清除比例统计;
|
||||
在用户指定的数据范围内,没有足够的真值字段报告该比例。
|
||||
第三次清除数为 $14$,总虚拟时间为 $8608.382$ s,
|
||||
每源平均时间为 $614.884$ s/个;
|
||||
在本组三个案例中,其清除数量最多,平均定位清除时间最短。
|
||||
程序运行时间为 $5.724$ 至 $7.668$ s。
|
||||
各案例的结果变化反映了源分布、有效接收范围和朝向约束对搜索过程的共同影响。
|
||||
|
||||
\subsection{虚拟耗时的可复算分解}
|
||||
官方总虚拟时间以整数微秒保存。将式~\eqref{eq:time} 重排,
|
||||
可反推出累计移动时间
|
||||
\subsection{动作耗时分解}
|
||||
将式~\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 表示问题三第一次正式测试,其他编号同理。
|
||||
各局清除失败数均为零,但这一事实只表示没有失败清除请求,
|
||||
不能推出没有漏源、没有无效检测或没有后备流程。
|
||||
表~\ref{tab:cost} 中 Q3-1 表示问题三第一次正式测试,其余编号依此类推。
|
||||
六次测试的清除失败计数均为零。
|
||||
各动作次数与式~\eqref{eq:residual} 共同确定图~\ref{fig:costbars} 的耗时分解。
|
||||
|
||||
\begin{table}[htbp]
|
||||
\centering\small
|
||||
\caption{由正式累计统计反推的动作耗时分解}
|
||||
\caption{六次正式测试的动作计数与移动耗时}
|
||||
\setlength{\tabcolsep}{4.5pt}
|
||||
\begin{tabular}{lrrrrrr}
|
||||
\toprule
|
||||
@@ -116,29 +99,28 @@ T_{\mathrm{move}}
|
||||
\end{table}
|
||||
\input{figures/formal-time-bars}
|
||||
|
||||
四局移动时间占总虚拟时间的 $76.59\%$ 至 $78.02\%$。
|
||||
从这一组正式样本看,减少移动是影响总耗时的主要方向,
|
||||
检测与换频仍应同时计入路径选择。
|
||||
由 $L_{\mathrm{eq}}=5T_{\mathrm{move}}$ 得四局等效距离分别约为
|
||||
$12.045$、$13.627$、$36.386$、$35.507$ km。
|
||||
它们由已量化的移动时间反推,不是独立轨迹测得的长度。
|
||||
六次测试中,移动时间占总虚拟耗时的 $\FormalMovementMin\%$ 至 $\FormalMovementMax\%$,
|
||||
是主要时间成本。问题三的检测次数为 $105$、$117$、$117$,
|
||||
问题四为 $349$、$361$、$264$;
|
||||
混合源案例中,朝向约束增加了观测与位置选择的复杂度。
|
||||
因此,后续优化可同时考虑减少移动距离与提高单次观测的信息增益。
|
||||
|
||||
令每段移动的时间量化误差不超过 $0.5$ 微秒,
|
||||
则 $L_{\mathrm{eq}}$ 与未量化距离的差不超过
|
||||
$2.5\times10^{-6}(N_m+N_c^++N_c^-)$ m,
|
||||
远小于本表的展示精度。所有平均值先按官方整数单位计算,
|
||||
最后保留三位小数,避免先舍入总时间再除以清除数造成误差。
|
||||
由 $L_{\mathrm{eq}}=5T_{\mathrm{move}}$ 得问题三的等效移动距离依次为
|
||||
$12.045$、$13.627$、$10.824$ km,问题四依次为
|
||||
$36.386$、$35.507$、$35.027$ km。
|
||||
该距离由官方时间计数及移动速度计算。
|
||||
所有平均值先以官方整数单位求和、相除,最后保留三位小数。
|
||||
|
||||
\subsection{从正式记录能够得到的结论}
|
||||
现有记录支持以下有限结论:四局均已进入并主动退出,
|
||||
成功清除计数合计为 $51$,清除失败计数为零,
|
||||
程序运行时间介于 $3.024$ 与 $7.668$ s。
|
||||
问题四的检测数与总移动时间均明显多于本组问题三案例,
|
||||
与定向可见性约束带来的额外搜索开销相符;
|
||||
但各局场景不同、样本量有限,不能将差异解释为某一算法模块的净贡献。
|
||||
\subsection{实验结果分析}
|
||||
六次正式测试累计清除 $\FormalClearCount$ 个源,
|
||||
程序运行时间介于 $\FormalRunMin$ 与 $\FormalRunMax$ s。
|
||||
在所观测的三组全向案例中,七点覆盖与信息增益选点相结合,
|
||||
得到 $232.889$ 至 $290.686$ s/个的平均定位清除时间;
|
||||
三组混合源案例采用定向集合覆盖与网格遍历清除,
|
||||
得到 $614.884$ 至 $927.130$ s/个的相应结果。
|
||||
|
||||
零清除失败与全源发现是两个不同指标。
|
||||
由于正式记录未公开源总数,本文不报告全清比例、定位误差均值、
|
||||
置信区间、相对基线降幅或显著性检验。
|
||||
若后续补充合法可读的正式汇总或新的成对测试,
|
||||
可在同一统计流程中增加这些指标,而无需改变已有结果的定义。
|
||||
两类问题的共同特征是移动耗时占比较高。
|
||||
路径排序应统筹覆盖站、定位测点和清除点的位置,
|
||||
同时计入频道切换与检测费用。
|
||||
平均定位清除时间、累计清除数和程序运行时间分别反映时间成本、
|
||||
任务处理规模与计算通信开销,三者共同构成本文的实验评价。
|
||||
|
||||
Reference in New Issue
Block a user