当前位置: 首页 > news >正文

2023年数维杯数学建模B题节能列车运行控制优化策略求解全过程文档及程序

2023年数维杯数学建模

B题 节能列车运行控制优化策略

原题再现:

  在城市交通电气化进程快速推进的同时,与之相应的能耗增长和负面效应也在迅速增加。城市轨道交通中的快速增长的能耗给城轨交通的可持续性发展带来负担。2018 年,北京、上海、广州地铁负荷占全市总负荷的 1.5%-2.5%,成为了城市电网的最大单体负荷[1]。在“双碳”政策下,城轨系统换用 ATO 驾驶模式、光伏+地铁等方法都取得了较好的减碳节能效果。城轨系统的需求侧响应可以在保证乘客满意度的情况下降低牵引能耗成本[2],可进一步发掘城轨系统减碳节能的潜力。
  在列车运行过程中,列车与外界会产生各种摩擦,进而消耗列车牵引的能量。列车运行过程中,被考虑的因素较多,如列车与轨道的摩擦、列车受到的空气阻力、列车势能的变化、列车运行过程中的位置限速等。在同一段旅途中,列车使用不同的驾驶策略通常会产生不同的能量和时间的消耗。单列车在两个站台之间的运行过程如图一所示。
在这里插入图片描述
  问题1
  假设一辆列车在水平轨道上运行,从站台A运行至站台B,其间距为5144.7m,运行的速度上限为100km/h,列车质量为176.3t,列车旋转部件惯性的旋转质量因数p= 1.08,列车电机的最大牵引力为310KN,机械制动部件的最大制动力为760KN。列车受到的阻力满足Davis阻力方程f = 2.0895 + 0.0098v + 0.006v^2,该公式中的速度单位为m/s,阻力单位为KN。
  你如何通过建模方法编写程序以获得列车运行过程的速度-距离曲线、牵引制动力-距离曲线、时间-距离曲线与能量消耗-距离曲线?程序的运行时间是多长?需要获取列车以最短时间到达站台B、在最短运行时间上分别增加10s、20s、50s、150s、300s到达站台B总共六组曲线。
  在列车运行的实际情况中,需要考虑的因素更多,模型也更加复杂。列车运行的旅途中不同的路段的限速是不同的,旅途中亦有不同的坡度情况,电机的动态特性也更加复杂,此外,储能装置在列车节能领域有着重要的应用,列车制动时,会将一定比例的能量储存至储能装置中,以待后续使用。如图二所示。
在这里插入图片描述
  本赛题提供两个附件。从 XEQ 站至 SMKXY 站的路况数据与包含电机牵引/制动动态特性的列车相关参数数据。介绍如下:
  附件一:从 XEQ 站至 SMKXY 站的路况数据(xls 格式),其包含 XEQ 站到 SMKXY站的路途中的坡度变化信息以及限速变化信息。详情见附件一.xls。
在这里插入图片描述
  附件二:附件二介绍了电机的动态特性与参数并给出了静态电机牵引率与制动再生率。详情见附件二.docx。
  问题 2
  考虑附件一、二的路况信息以及电机的复杂动态过程。若列车计划运行时间为 T,请你设计优化方案得到可行的速度轨迹,使得运行过程的能耗降低(越低越好)。参照问题一,获取列车以最短时间到达站台 B、在最短运行时间上分别增加 10s、20s、50s、150s、300s 到达站台 B 总共六组曲线。
  列车在运行过程中可能会出现各种突发情况导致列车需要提前到达站台或延时到达站台。列车的运行速度轨迹需要根据新的到站时间而发生变化。

  问题 3。
  列车从起点出发,原计划于 320s 后到达终点,列车运行至 2000m 位置时,由于前方突发事故,需要延迟 60s 到达终点。请你设计优化方案在保持列车节能运行下,能够快速地(越快越好)得到调整后的优化速度轨迹。作出列车运行过程的速度-距离曲线、牵引制动力-距离曲线、时间-距离曲线与能量消耗-距离曲线。

整体求解过程概述(摘要)

  针对问题一,以城市轨道交通电气化进程中能耗增长为背景,以欧拉数值法为基础,建立了模拟列车运行过程的动力学模型。通过考虑列车与轨道的摩擦、空气阻力、势能变化以及位置限速等因素,获取列车的速度-距离曲线、牵引力制动力-距离曲线、时间-距离曲线以及能量消耗-距离曲线。在模型中,我们考虑运行在水平轨道上的列车,通过给定站台 A 到站台 B 的距离、速度上限、列车质量、旋转部件惯性质量因数、列车电机最大牵引力和机械制动部件最大制动力,设定初始条件、定义微分方程,利用欧拉数值法进行迭代更新,得到了列车的运行状态。根据程序模拟运行结果,可观察到列车在不同路段内的速度变化、牵引制动力的变化、运行时间以及能量消耗。此外,还模拟运行在不同时间限制下列车到达站台 B 的情况,得到了六组曲线数据。
  针对问题二,在对列车运行过程建立的动力学模型的基础上,可以使用粒子群优化算法来求解列车在给定路段上的最优速度轨迹。为了保证安全性和节能减排目标,在目标函数中我们将能耗消耗作为约束条件,并且根据路段坡度信息对最大速度进行限制。在粒子群算法中,通过计算该速度轨迹的能耗消耗来确定各个速度的适应度。为了更加准确地估计列车的能耗,我们需要考虑列车运行过程中的变速运动。通过计算列车在不同速度下的牵引功率和制动功率,在满足最大牵引力和最大制动力的情况下,确定列车在每个时间段内的加速度和制动度。然后,根据牵引功率和制动功率计算每个时间段的能耗,最终求得整段路程的总能耗。
  针对问题三,介绍了两种优化方法解决问题三:建立速度曲线进行算法优化、采用分阶段求解路程和遗传算法。同时需要根据实时情况进行动态调整和优化,以确保列车安全、节能、快速地到达终点站。

问题分析:

  问题一的分析
  对问题 1 研究的意义的分析:问题 1 属于列车运行过程的数学建模问题。通过建立数学模型,可以获得列车在不同条件下的运行速度、牵引制动力、时间和能量消耗等曲线。这有助于了解列车在不同情况下的性能表现,为优化列车运行提供依据。
  对于解决此类问题一般数学方法的分析:针对列车运行过程中的速度、牵引制动力、时间和能量消耗等变化,我们可以使用数值方法进行建模和求解。其中,欧拉数值法是一种常用的数值方法,适用于对微分方程进行数值近似求解。
  对题目中所给数据特点的分析:附件中给出了列车在水平轨道上的运行数据,包括列车间距、速度上限、列车质量、惯性旋转质量因数、最大牵引力、最大制动力以及阻力方程。这些数据反映了列车运行过程中的关键参数和限制条件,是建立数学模型的基础。
  对问题 1 的题目要求进行分析:问题 1 要求通过建模方法编写程序,获得列车最短运行时间下的速度-距离曲线、牵引制动力-距离曲线、时间-距离曲线和能量消耗-距离曲线,以及程序的运行时间。这些曲线能够描述列车在不同位置的运行状态和能耗情况,有助于评估列车的性能和效率。此外,还需获取列车以最短时间到达站台 B、在最短运行时间上分别增加 10s、20s、50s、150s、300s 到达站台 B 总共六组曲线。
  由于以上原因,我们首先建立一个基于欧拉数值法的数学模型 I,模拟列车在理想条件下的运行过程。然后,建立一个模型 II,通过调整运行时间来观察对应的速度-距离曲线、牵引制动力-距离曲线、时间-距离曲线和能量消耗-距离曲线的变化。最后,将模型 I 和模型 II 的结果进行比较,分析不同条件下列车的运行情况和能耗差异。
   问题二的分析
  对问题 2 研究的意义的分析:问题 2 属于列车运行过程的数学建模问题。通过建立数学模型,以路况信息及复杂动态过程为问题一的约束条件,来获得列车可行的运行轨迹、牵引制动力、时间和能量消耗等曲线。这有助于了解列车在不同情况下的性能表现,为优化列车运行提供依据。对于解决此类问题一般数学方法的分析:针对列车运行过程中的速度、牵引制动力、时间和能量消耗等变化,我们可以使用粒子群优化算法来设计一条能耗最小的速度轨迹,并根据路况信息和列车动态特性进行相应的限制和调整,以达到行驶安全和经济的目的。
  对题目中所给数据特点的分析:附件中给出了列车从XEQ 站到SMKXY站的路途中的坡度变化信息以及限速变化信息和电机的动态特性。其中,列车的质量和运行距离是确定的,而坡度信息决定速度上限、电机的恒转矩区和弱磁区则反映了列车加速度和减速度的范围;阻力则决定了列车运行过程中所受到的衰减力大小。
  对问题 2 的题目要求进行分析:问题 2 要求通过建模方法编写程序,以获得列车在给定运行时间 T 下能耗最低的可行速度轨迹,并生成牵引制动力-距离曲线、时间-距离曲线和能量消耗-距离曲线,以及程序的运行时间。这些曲线可以用于描述列车在不同位置的运行状态和能耗情况,进而评估列车的性能和效率。此外,还需要获取列车以最短时间到达站台 B 的曲线,以及在最短运行时间上分别增加 10s、20s、50s、150s、300s 到达站台 B 总共六组曲线,以探索速度轨迹变化对列车能耗的影响。
  为达成以上目标,我们首先需要在设计速度轨迹时,考虑列车的加速度和减速度限制,以保证列车的安全性和运行效率。同时,还需考虑列车行驶路段的坡度、阻力等因素,以优化能耗表现。然后,通过数值计算方法,可以对列车在不同速度下的能耗进行计算,并选择最小能耗的轨迹方案。最后,在得到初步的结果后,需要对速度轨迹进行进一步检验和优化,以满足列车的安全性和运行效率等要求。此外,还需根据题目要求获取列车在不同速度轨迹下到达站台 B 的曲线,以探索速度轨迹变化对列车能耗的影响。

模型假设:

  1. 假设问题一中,站点之间的坡度为 0,列车做的是直线运动;
  2. 假设牵引力和制动力产生的时间忽略不计,也即列车可在瞬间达到最大牵引力和最大制动力;
  3. 忽略空气阻力和摩擦力;
  4. 列车匀速运动时,F阻力 = F牵引力
  5. 假设列车在某个固定长度的间隔内,所受的阻力恒定,阻力值为该间隔内初始速度的对应值。

论文缩略图:

在这里插入图片描述
在这里插入图片描述

全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

程序代码:

列车加速阶段的求解模型:

import math
import pandas as pd
import time
start_time = time . time () # 记 录 代 码 开 始 时 间
# 列车质量
mass = 176300 # kg
# 列 车 加 速 度 阶 段 的 牵 引 力
traction_force = 33369 # N
# 列 车 速 度 上 限
velocity_limit = 27.8 # m / s
# 列 车 阻 力 公 式 参 数
k1 = 2.0895
k2 = 0.0098
k3 = 0.006
# 列 车 加 速 度 阶 段 的 数 量 ( 小段数 )
num_segments = 1000
# 列 车 站 点 间 的 总 距 离
total_distance = 5144.7 # m
# 列 车 在 每 个 小 段 内 的 长 度
segment_length = total_distance / num_segments # m
# 初始 化 变量
distance_traveled = 0
velocity = 0
elapsed_time = 0 # 修 改 变 量 名 为 elapsed_time
# 存 储 每 一 小 段 的 距 离 、 速度 、 时间
data = []
# 开 始 模 拟 列 车 运 动
for i in range ( num_segments ):
# 当 前 小 段 的 起 始 速 度
initial_velocity = velocity
# 计 算 当 前 小 段 内 的 阻 力
resistance = ( k1 + k2 * velocity + k3 * velocity ** 2) * 1000
# 计 算 当 前 小 段 内 的 加 速 度
acceleration = ( traction_force - resistance ) / mass
# 计 算 当 前 小 段 内 的 末 速 度
final_velocity = math . sqrt ( initial_velocity ** 2 + 2 * acceleration * segment_length )
t = ( final_velocity - initial_velocity ) / acceleration
# 如 果 末 速 度 超 过 速 度 上 限 , 则 以 速 度 上 限 为 准
if final_velocity > velocity_limit :
final_velocity = velocity_limit
# 更 新 列 车 的 距 离 和 速 度
distance_traveled += segment_length
velocity = final_velocity
# 累 加 时 间 并 将 其 添 加 到 列 表 中
elapsed_time += t
data . append ([ distance_traveled , velocity , elapsed_time ])
# 如 果 列 车 达 到 速 度 上 限 , 结 束 运 动 模 拟
if velocity >= velocity_limit :
break
# 将 数 据 转 换 为 DataFrame 格式
df = pd . DataFrame ( data , columns =[ 'Distance ', 'Velocity ', 'Time '])
# 获 取 时 间 的 累 加 值
df [' Time_cumsum '] = df ['Time ']. cumsum ()
# 将数 据 写入 Excel 表格中
df . to_excel ('p1 - aacc +10. xlsx ', sheet_name ='Sheet1 ', index = False )
print (" 列车 在 运行 %.2f 米 的 距 离 后 达 到 速 度 上 限 %.2 f m/s" % ( distance_traveled , velocity_limit ))
print (" 达 到 速 度 上 限 所 需 的 时 间 为 %.2f 秒" % elapsed_time )
end_time = time . time () # 记 录 代 码 结 束 时 间
execution_time = end_time - start_time # 计 算 代 码 运 行 时 间
print (" 代 码 运 行 时 间 为 %.2f 秒" % execution_time )

列车减速阶段的求解模型:

import math
import pandas as pd
# 列车质量
mass = 176300 # kg
# 列 车 初 始 速 度
initial_velocity = 27.8 # m / s
# 列 车 终 点 速 度
final_velocity = 0 # m / s
# 列车 制 动力
braking_force = 27629 # N
# 列 车 站 点 间 的 距 离
distance = 5144.7 # m
num_segments = 1000
# 每 个 小 段 的 长 度
segment_length = distance / 1000 # m
# 列 车 当 前 速 度
velocity = initial_velocity # m / s
# 列 车 运 行 距 离
total_distance = 0 # m
# 列 车 运 行 时 间
total_time = 0 # s
# 创建空的 DataFrame , 用 于 保 存 数 据
df = pd . DataFrame ( columns =[" 距离 (m)", " 速度 (m/s)", " 时间 (s)"])
# 逐 个 小 段 计 算 列 车 运 行 距 离 和 时 间 , 直 到 速 度 降 为 0
for i in range ( num_segments ):
# 当 前 小 段 开 始 速 度
segment_initial_velocity = velocity
# 计 算 当 前 小 段 的 阻 力
resistance = (2.0895 + 0.0098 * velocity + 0.006 * velocity ** 2) * 1000
# N
# 计 算 当 前 小 段 的 减 速 度
acceleration = ( braking_force + resistance ) / mass # m / s ^2
# # 计 算 当 前 小 段 内 的 末 速 度
# final_velocity = math . sqrt ( segment_initial_velocity ** 2 - 2 * acceleration * segment_length )
# 计 算 当 前 小 段 内 的 末 速 度
temp = segment_initial_velocity ** 2 - 2 * acceleration * segment_length
if temp < 0:
final_velocity = 0
else :
final_velocity = math . sqrt ( temp )
# 计 算 当 前 小 段 的 运 行 时 间
segment_time = ( velocity - final_velocity ) / acceleration # s
# 如 果 末 速 度 超 过 速 度 上 限 , 则 以 速 度 上 限 为 准
if final_velocity < 0:
final_velocity = 0
# # 计 算 当 前 小 段 的 运 行 距 离
# segment_distance = velocity * segment_time - 0.5 * acceleration * segment_time ** 2
# m
# 更 新 列 车 当 前 速 度
velocity -= acceleration * segment_time
# 更 新 列 车 总 运 行 距 离
total_distance += segment_length
# 更 新 列 车 总 运 行 时 间
total_time += segment_time
# 将 当 前 小 段 的 数 据 保 存 到 DataFrame 中
df . loc [ i ] = [ segment_length , velocity , segment_time ]
# 输 出 当 前 小 段 的 距 离 、 速 度 和时 间
print ("第 {} 小段 : 距离 {:.2 f} 米 , 速度 {:.2 f} 米/秒 , 时间 {:.2 f} 秒". format ( i +1 , segment_length , velocity , segment_time ))
# 如 果 速 度 已 经 降 为 0, 则 跳 出循 环
if final_velocity <= 0:
break
# 计 算 每 个 小 段 的 累 计 距 离 , 速 度和 时 间
df [" 总距离 (m)"] = df [" 距离 (m)"]. cumsum ()
df [" 总速度 (m/s)"] = df [" 速度 (m/s)"]. cumsum ()
df [" 总时间 (s)"] = df [" 时间 (s)"]. cumsum ()
# 将 DataFrame 保存到 Excel 文件中
filename = "p1 -de. xlsx "
with pd . ExcelWriter ( filename ) as writer :
df . to_excel ( writer , index = False )
# 输出结果
print (" 列车 在 运行 %.2 f 米 的 距 离 时 速 度 降 为 0。" % total_distance )
print (" 速度降为 0 时 所 需 的 时 间 为 %.2 f 秒 。" % total_time 

列车速度运行轨迹的求解模型:

import math
distance = 5144.7 # 距离 , 单位为米
speed_limit = 100 # 速度上限 , 单位为 km / h
mass = 176.3 # 质量 , 单位为吨
inertia_factor = 1.08 # 旋 转 惯 量 因 子
max_traction_force = 310 # 最大 牵 引力 , 单位为 kN
max_brake_force = 760 # 最大 制 动力 , 单位为 kN
# 计算 Davis 阻力
def davis_friction ( v ):
v_ms = v / 3.6 # 将速度从 km / h 转换为 m / s
return 2.0895 + 0.0098* v_ms + 0.006* v_ms **2
# 计 算 列 车 受 到 的 总 阻 力
def total_friction ( v ):
return davis_friction ( v ) * mass * 9.8
# 计 算 列 车 加 速 度
def acceleration ( v ):
net_traction_force = max_traction_force - total_friction ( v )
return net_traction_force / mass
# 计 算 列 车 制 动 加 速 度
def brake_acceleration ( v ):
return max_brake_force / mass
# 计 算 列 车 能 耗
def energy_consumption (v , a ):
return total_friction ( v ) * v / 1000 + mass * ( inertia_factor /2) * ( a /(9.8*1000))**2 * distance
def Force ( final_velocity ):
traction_force = (310000 * 10) / final_velocity # 计 算 弱 磁 区 的 力
back_force = (760000 * 17) / final_velocity # 计 算 弱 磁 区 的 力
return traction_force , back_force
# 在 速 度 上 限 内 遍 历 所 有 速 度 , 找 到 最 小 的 能 耗 值 和 对 应 速 度
min_energy = math . inf
for v in range (1 , speed_limit + 1):
a = acceleration ( v )
energy = energy_consumption (v , a )
if energy < min_energy :
min_energy = energy
optimal_v = v
print (" The optimal speed is % dkm /h, and the minimum energy consumption is %.2 fkWh ." % ( optimal_v , min_energy ))
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

相关文章:

2023年数维杯数学建模B题节能列车运行控制优化策略求解全过程文档及程序

2023年数维杯数学建模 B题 节能列车运行控制优化策略 原题再现&#xff1a; 在城市交通电气化进程快速推进的同时&#xff0c;与之相应的能耗增长和负面效应也在迅速增加。城市轨道交通中的快速增长的能耗给城轨交通的可持续性发展带来负担。2018 年&#xff0c;北京、上海、…...

Python--测试代码

目录 1、使用pip安装pytest 1.1 更新pip 1.2 安装putest 2、测试函数 2.1 单元测试和测试用例 2.2 可通过的测试 2.3 运行测试 2.4 未通过的测试 2.5 解决测试未通过 2.6 添加新测试 3、测试类 3.1 各种断言 3.2 一个测试的类 3.3 测试AnonymousSurvey类 3.4 使…...

CentOS 系列版本搭建 Nginx 服务

目录 Nginx 介绍 Nginx 安装 CentOS 系列版本 Nginx 删除 CentOS 系列版本 Nginx 介绍 Nginx 是一个广泛使用的Web服务器和反向代理服务器。 反向代理和负载均衡&#xff1a;Nginx支持反向代理和负载均衡&#xff0c;能够分发请求到多个后端服务器&#xff0c;提高了可用性…...

目标检测YOLO实战应用案例100讲-基于机器视觉的输电线路小目标检测和缺 陷识别(下)

目录 3.3.1 输电线路所有尺寸目标检测性能对比 3.3.2 输电线路小目标检测性能对比...

argparse--命令行参数解析库

文章目录 位置参数help ->描述信息type -> 被转换的类型 可选参数action ->动作基本类型 (store_true)短选项 结合位置参数和可选参数choiceaction ->动作基本类型 (count)default -> 默认值 argparse模块使编写用户友好的命令行变得容易 接口。程序定义了它需要…...

elasticsearch4-文档操作

个人名片&#xff1a; 博主&#xff1a;酒徒ᝰ. 个人简介&#xff1a;沉醉在酒中&#xff0c;借着一股酒劲&#xff0c;去拼搏一个未来。 本篇励志&#xff1a;三人行&#xff0c;必有我师焉。 本项目基于B站黑马程序员Java《SpringCloud微服务技术栈》&#xff0c;SpringCloud…...

阿里云服务器上CentOS 7.6使用rpm包安装MySQL 8.0.31

我这里下载的是最新版本&#xff0c;需要到MySQL官网最新版本下载地址。 要是想要下载以前的版本需要到MySQL以前版本网址中。 1&#xff09;先使用wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.31-1.el7.x86_64.rpm-bundle.tar&#xff08;这个网址现在已经不…...

redis未授权漏洞

redis未授权漏洞是什么&#xff1f; Redis 默认情况下会绑定在 0.0.0.0:6379&#xff0c;这样将会将 Redis 服务暴露到公网上&#xff0c;如果在没有开启认证的情况下&#xff0c;可以导致任意用户在可以访问目标服务器的情况下未授权访问Redis以及读取 Redis的数据 它有什么危…...

详解3dMax中渲染线框的两种简单方法

在3dMax中渲染线框是你在某个时候想要完成的事情&#xff0c;例如为了演示分解步骤&#xff0c;或是仅仅为了在模型上创建线框覆盖的独特效果。为三维模型渲染线框最常见的原因是能够在模型上显示干净的拓扑。这篇文章将带你了解在3dMax中渲染三维模型线框的两种最常见、最简单…...

Git - Git 工作流程

文章目录 Git WorkFlow图解小结 Git WorkFlow Git Flow是一种基于Git的工作流程&#xff0c;确实利用了Git作为分布式版本控制系统的优势。 本地代码库 (Local Repository): 每个开发者都维护自己的本地代码库&#xff0c;这是Git分布式性质的体现。本地代码库包含了完整的项目…...

ARM如何利用PMU的Cycle Counter(时钟周期)来计算出CPU的时钟频率

本章将学习如何利用ARM PMU的Cycle Counter&#xff0c;来计算出CPU的时钟周期&#xff0c;从而计算出CPU的时钟频率。在介绍计算方法前&#xff0c;有必要先介绍下什么是时钟周期、机器周期以及指令周期。 如何计算出CPU的时钟频率 一&#xff0c;时钟周期&#xff0c;机器周…...

56资源网系统源码搭建知识付费-含源码

内置了上万条数据资源 大致功能&#xff1a; 支持免费与付费&#xff08;增加了插件付费插件&#xff09;支持侧边栏支持添加各类型广告&#xff08;你所能用到的基本都有&#xff09;.支持网盘下载模块支持所有页面自定义支持文章页三方跳转支持添加页面支持自定义采集&#…...

【运营版】仿东郊到家上门服务app小程序开发同城美容家政预约推拿足浴SPA技师派单源码

套餐一:源码=小程序端+公众号端+APP端=280元 套餐二:全包服务 包服务器+域名+APP+认证小程序+H5+PC=1000元 后端:系统后端使用PHP语言开发 前端:前端使用uniapp进行前后端分离开发 用户端功能模块:技师选择 预约服务 优惠券 订单 技师服务...

uniapp项目实践总结(十五)使用websocket实现简易聊天室

导语:在一些社交软件中,经常可以看到各种聊天室的界面,接下来就总结一下聊天室的原理个实现方法,最后做一个简易的聊天室,包括登录/登出、加入/离开房间、发送接收聊天消息等功能。 目录 准备工作原理分析组件实现实战演练服务端搭建案例展示准备工作 在pages/index文件夹…...

论文阅读之Learning and Generalization of Motor Skills by Learning from Demonstration

论文阅读其实就是用自己的话讲一遍&#xff0c;然后理解其中的方法 0、论文基本信息 为什么阅读此篇论文&#xff1a;因为它是DMP经典论文&#xff0c;被引多次&#xff0c;学史可以明智&#xff0c;了解最初机理。 论文题目&#xff1a;Learning and Generalization of Moto…...

SpringCloud中的Eureka的集群配置

微服务框架中最为重要的就是注册中心&#xff0c;如果只是单注册中心&#xff0c;一旦出现问题&#xff0c;容易导致整个微服务环境不可用&#xff0c;所以建议注册中心集群。 目前SpringCloud框架中使用Eureka作为注册中心&#xff0c;本文简单介绍一下Eureka的集群配置&…...

10 Ubuntu下配置STMCubeMX与CLion IDE联合环境搭建(不包含下载CLion的教程)

序言 果然作为一名测控系的学生&#xff0c;纯搞视觉多少还是有点与专业脱节&#xff0c;决定入坑嵌入式。选择STM32进行入门&#xff0c;并且使用CubeMX加CLion作为我的第一个真正意义上的嵌入式开发环境&#xff08;大一的时候玩过一段时间&#xff0c;但是没什么技术&#…...

负载均衡原理及应用

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…...

视频讲解|1033含sop的配电网重构(含风光可多时段拓展)

目录 1 主要内容 程序特点 讲解重点 2 视频链接 1 主要内容 该视频为含sop的配电网重构matlab代码讲解&#xff0c;对应资源下载链接为含sop的配电网重构&#xff08;含风光|可多时段拓展&#xff09;&#xff0c;程序主要内容是&#xff1a;针对含sop的配电网重构模型&…...

uni-app监听页面滚动

在uni-app中可以通过监听页面滚动事件来实现滚动效果或响应滚动事件 在需要监听滚动的页面或组件中&#xff0c;添加一个scroll元素&#xff0c;用于容纳内容并实现滚动效果。 <template><view class"container"><scroll-view scroll-y scroll"…...

三维GIS开发cesium智慧地铁教程(5)Cesium相机控制

一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点&#xff1a; 路径验证&#xff1a;确保相对路径.…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件&#xff0c;常用于在两个集合之间进行数据转移&#xff0c;如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model&#xff1a;绑定右侧列表的值&…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止

<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet&#xff1a; https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

Golang dig框架与GraphQL的完美结合

将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用&#xff0c;可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器&#xff0c;能够帮助开发者更好地管理复杂的依赖关系&#xff0c;而 GraphQL 则是一种用于 API 的查询语言&#xff0c;能够提…...

GC1808高性能24位立体声音频ADC芯片解析

1. 芯片概述 GC1808是一款24位立体声音频模数转换器&#xff08;ADC&#xff09;&#xff0c;支持8kHz~96kHz采样率&#xff0c;集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器&#xff0c;适用于高保真音频采集场景。 2. 核心特性 高精度&#xff1a;24位分辨率&#xff0c…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...

宇树科技,改名了!

提到国内具身智能和机器人领域的代表企业&#xff0c;那宇树科技&#xff08;Unitree&#xff09;必须名列其榜。 最近&#xff0c;宇树科技的一项新变动消息在业界引发了不少关注和讨论&#xff0c;即&#xff1a; 宇树向其合作伙伴发布了一封公司名称变更函称&#xff0c;因…...

解读《网络安全法》最新修订,把握网络安全新趋势

《网络安全法》自2017年施行以来&#xff0c;在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂&#xff0c;网络攻击、数据泄露等事件频发&#xff0c;现行法律已难以完全适应新的风险挑战。 2025年3月28日&#xff0c;国家网信办会同相关部门起草了《网络安全…...