逻辑编程遗忘操作与水产无人机自适应团队研究
立即解锁
发布时间: 2025-08-30 01:37:26 阅读量: 13 订阅数: 40 AIGC 

### 逻辑编程遗忘操作与水产无人机自适应团队研究
#### 逻辑编程中的遗忘操作
在逻辑编程领域,对遗忘操作的研究有了新的进展。研究人员增强了逻辑编程的语言,使其包含匿名循环,这样就能表达原子之间的关系,而在传统逻辑编程语义下,这种关系往往需要借助充当仲裁者的第三方原子才能表达。
研究提出了一个句法算子 \(f^*_{AC}\),命题 5 表明该算子满足 (SI)。由于 \(f^*_{AC}\) 是句法算子,根据它从程序 \(P\) 中遗忘一组原子的结果,可以通过对 \(P\) 中提及待遗忘原子的规则进行句法操作来获得,而其余规则则直接保留在遗忘结果中。
这种新的句法算子在遗忘逻辑程序中的原子时遵循强持久性 (SP),并且在该增强语言下是封闭的,这意味着它可以迭代使用,从而能够以任意顺序从程序中遗忘任意数量的原子,同时仍然保持 (SP)。与现有的算子相比,这是一个显著的改进,因为现有的算子要么仅针对非常受限的程序类进行定义,要么不满足大多数理想的属性。
#### 水产无人机自适应团队
##### 背景与需求
近年来,水产养殖在经济中占据了更重要的地位,对水产监测的需求也随之增加。无人水面航行器(USV),也就是通常所说的无人机,因其可用性和低成本,在水产养殖场景中得到了越来越广泛的应用。为了实现实时可行的监测,无人机之间需要保持持续通信,以便它们能够自我组织并将数据发送到陆地平台。
##### 平台架构
提出的平台由一组 USV 和一个移动网关组成,移动网关与陆地上的基础设施网关进行通信。基础设施网关连接到服务器,服务器存储感知到的信息,这些信息随后被用于最终用户应用程序,如实时仪表板和警报平台。
USV 的软件结构分为三层:
- **传感器与执行器层**:负责通过多种协议(如 I2C、SPI、1 - Wire 等)读取传感器数据,并根据路径规划层的命令控制电机的转速和方向。
- **通信层**:包含两种通信技术,LoRa 用于长距离通信,WiFi 用于短距离通信。团队可以使用这两种技术将移动网关连接到基础设施网关,但仅使用 WiFi 进行 USV 之间的通信。在它们之间实现了一个基于延迟容忍网络 (DTN) 的链路质量路由策略。
- **路径规划层**:负责根据通信层和地图更新和同步团队的导航信息,管理新传感点的分配,并计算避开障碍物的轨迹。该模块应保持团队成员之间的连接性,通过融合共享的 USV 位置和机载障碍物传感器来避开移动障碍物,并将下一个航路点传达给传感器与执行器层。
##### 合作导航
- **个体路径规划**:许多路径规划系统的第一步是将环境描述为适合所选路径规划算法的地图。在这项工作中,使用了固定大小的单元格分解网格地图,可应用如 A* 等著名的搜索算法。每个单元格是正方形,边长等于 USV 的长度,在计算到目标的路径时,被 USV 占据的单元格不被视为占用单元格。使用基于 Basic Theta* 的算法 (USV - A*),通过 Supercover Line 算法将路径分解为更少的直线,以解决路径不穿过占用单元格但车辆可能因宽度而发生碰撞的问题。
- **多车辆路径规划**:团队无人车辆的路径规划本质上是多目标优化问题,比单车辆路径规划更复杂。多车辆路径规划算法需要满足三个主要目标:
- 保持所有车辆之间的连接性;
- 实现合作行为以实现全面覆盖,同时最小化行驶时间;
- 避免车辆之间的碰撞。
为了实现这些目标,提出了一种类似于领导者 - 追随者结构的编队控制结构,并基于启发式方法提出了一个排名系统,为每个 USV 赋予优先级值,以选择每个车辆将访问的目标、团队的避碰行为以及每个车辆的领导者 - 追随者行为。
优先级计算考虑了两种排名系统 R1 和 R2:
- R1:根据单个规则设置优先级,即离可用目标最近的 USV 具有最高优先级。
- R2:规则更为复杂,区分优先级为 1 的 USV 和其他 USV。对于优先级为 1 的 USV,选择邻居数量最少的,如果有多个得分相同,则选择到目标的路径成本最小的。对于其余 USV,同样优先考虑邻居数量最少的,如果有多个得分相同,则选择到邻居距离最小的。
导航行为由算法 1 描述,每个 USV 遵循一个状态机的行为。初始处于等待状态,使用排名系统计算优先级,然后根据优先级选择目标并计算路径。在导航过程中,如果与领导者的连接质量下降,USV 将进入协助状态;如果遇到移动障碍物且对方优先级更高,USV 将进入避让状态;如果遇到静态障碍物,USV 将停止移动并返回等待状态。
```plaintext
Algorithm 1: Navigation Decision Logic.
1 status = Waiting
2 while not all points visited do
3 if recalculate priority triggered then
4
```
0
0
复制全文
相关推荐




