2024年美赛 (B题MCM)| 潜水艇 |数学建模完整代码+建模过程全解全析

本文主要是介绍2024年美赛 (B题MCM)| 潜水艇 |数学建模完整代码+建模过程全解全析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

当大家面临着复杂的数学建模问题时,你是否曾经感到茫然无措?作为2022年美国大学生数学建模比赛的O奖得主,我为大家提供了一套优秀的解题思路,让你轻松应对各种难题。
让我们来看看美赛的B题!
完整内容可以在文章末尾领取!
在这里插入图片描述

问题重述:

Maritime Cruises Mini-Submarines (MCMS)是一家位于希腊的公司,他们制造能够携带人类前往海洋最深处的潜水艇。这些潜水艇被移动到目的地并从主机船只中释放,不需要连接线。MCMS现在希望利用他们的潜水艇带领游客探索爱奥尼亚海底的沉船遗迹。然而,在他们能够这样做之前,他们需要赢得监管机构的批准,制定在与主船失去通信以及潜水艇出现机械故障(包括动力丧失)的情况下的安全程序。特别是,他们希望您开发一个模型,以预测潜水艇随时间的位置。与在陆地或海面进行典型的搜救不同,出现故障的潜水艇可能会定位在海底或水下某个中性浮力点。其位置可能会受到洋流、海水密度的差异和/或海底地形的影响。您的任务是:

  1. 定位 - 开发一个能够预测潜水艇随时间位置的模型。
    • 这些预测存在哪些不确定性?
    • 潜水艇在事故发生前可以定期向主船发送哪些信息来减少这些不确定性?潜水艇需要什么样的设备来实现?
  2. 准备 - 您是否建议公司在主船上携带其他搜索设备?您可能会考虑不同类型的设备,但必须考虑到设备的可用性、维护、准备和使用成本。如果需要,搜救船只可能需要携带什么样的额外设备来协助搜救?
  3. 搜索 - 开发一个模型,该模型将使用来自您的位置模型的信息,以推荐最初的部署点和搜索模式,以最大程度地减少找到失踪潜水艇所需的时间。确定找到潜水艇的概率作为时间和累积搜索结果的函数。
  4. 推演 - 您的模型如何扩展以考虑其他旅游目的地,如加勒比海?您的模型如何改变以考虑在同一大致区域移动的多个潜水艇?

请准备一份不超过25页的报告,提供您的计划详细信息。包括一份面向希腊政府的两页备忘录。

问题一

当建立潜水艇位置的预测模型时,我们需要考虑潜水艇的动力学、外部环境的影响以及通信限制。以下是详细的建模步骤:

  1. 位置变化的建模:
  • 三维坐标系: 使用三维坐标系来表示潜水艇的位置。设 x ( t ) x(t) x(t) y ( t ) y(t) y(t) z ( t ) z(t) z(t) 为潜水艇在时间 t t t 的位置。
  • 位置的动力学: 使用微分方程描述潜水艇位置的动力学。这可能涉及速度和加速度,可以使用牛顿的运动方程。
  • 外部环境的影响: 考虑洋流、水密度变化和海底地形等外部因素对潜水艇位置的影响。这些因素可能导致潜水艇的漂移和深度变化。

d x d t = v x ( t ) \frac{dx}{dt} = v_x(t) dtdx=vx(t)
d y d t = v y ( t ) \frac{dy}{dt} = v_y(t) dtdy=vy(t)
d z d t = v z ( t ) \frac{dz}{dt} = v_z(t) dtdz=vz(t)

其中 v x ( t ) v_x(t) vx(t) v y ( t ) v_y(t) vy(t) v z ( t ) v_z(t) vz(t) 分别表示潜水艇在三个方向上的速度。

  1. 动力学模型:
  • 失去推进力: 考虑潜水艇可能失去推进力的情况。这可能是由于机械故障、燃料耗尽等原因。
  • 旋转: 如果潜水艇可以旋转,考虑旋转对其运动的影响。

例如:  d v x d t = − k ⋅ v x ( t ) \text{例如: } \frac{dv_x}{dt} = -k \cdot v_x(t) 例如dtdvx=kvx(t)

其中 k k k 是与失去推进力相关的参数。

  1. 不确定性的引入:
  • 随机过程: 引入随机过程来表示外部环境的不确定性。这可以包括洋流的随机性、水密度的不确定性等。
  • 模型参数的不确定性: 考虑动力学模型中的参数不确定性。

d x d t = f x ( x , y , z , t ) + ϵ x ( t ) \frac{dx}{dt} = f_x(x, y, z, t) + \epsilon_x(t) dtdx=fx(x,y,z,t)+ϵx(t)
d y d t = f y ( x , y , z , t ) + ϵ y ( t ) \frac{dy}{dt} = f_y(x, y, z, t) + \epsilon_y(t) dtdy=fy(x,y,z,t)+ϵy(t)
d z d t = f z ( x , y , z , t ) + ϵ z ( t ) \frac{dz}{dt} = f_z(x, y, z, t) + \epsilon_z(t) dtdz=fz(x,y,z,t)+ϵz(t)

其中 ϵ x ( t ) \epsilon_x(t) ϵx(t) ϵ y ( t ) \epsilon_y(t) ϵy(t) ϵ z ( t ) \epsilon_z(t) ϵz(t) 是表示不确定性的随机过程。

  1. 通信模型:
  • 位置信息发送事件: 建模潜水艇何时能够发送位置信息给主船。这可能涉及到通信设备的限制、潜水深度的限制等。
  • 通信事件函数 g ( t ) g(t) g(t): 该函数可能取决于时间、深度、或其他相关因素。

例如:  g ( t ) = { 1 如果通信事件发生 0 否则 \text{例如: } g(t) = \begin{cases} 1 & \text{如果通信事件发生} \\ 0 & \text{否则} \end{cases} 例如g(t)={10如果通信事件发生否则

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D# 潜水艇位置模型
def submarine_model(x, y, z, t):# 位置动力学模型,这里假设简单的线性运动dx_dt = 0.1dy_dt = 0.2dz_dt = -0.05return dx_dt, dy_dt, dz_dt# 通信事件模型
def communication_event(t):# 简化为时间的函数,这里假设每隔一段时间发送一次位置信息if t % 10 == 0:return 1else:return 0# 模拟潜水艇运动
def simulate_submarine_motion(total_time):time_points = np.arange(0, total_time, 1)positions = np.zeros((len(time_points), 3))for i, t in enumerate(time_points):dx_dt, dy_dt, dz_dt = submarine_model(positions[i, 0], positions[i, 1], positions[i, 2], t)positions[i + 1, 0] = positions[i, 0] + dx_dtpositions[i + 1, 1] = positions[i, 1] + dy_dtpositions[i + 1, 2] = positions[i, 2] + dz_dt# 模拟通信事件if communication_event(t):print(f"Time {t}: Sending position - x: {positions[i, 0]}, y: {positions[i, 1]}, z: {positions[i, 2]}")return time_points, positions# 三维可视化
def plot_submarine_motion(time_points, positions):fig = plt.figure()ax = fig.add_subplot(111, projection='3d')ax.plot3D(positions[:, 0], positions[:, 1], positions[:, 2], label='Submarine Motion', linewidth=2)ax.scatter(positions[:, 0], positions[:, 1], positions[:, 2], color='red', marker='o', label='Communication Events')#见完整版

问题二

我们需要进一步考虑一些因素,包括设备的效果、搜索模式、起始点选择以及时间分布等。

1. 设备选择和性能:

设备性能: P ( E i ) P(E_i) P(Ei)

设备成本: C ( E i ) C(E_i) C(Ei)

2. 设备部署策略:

搜索模式选择: P ( M ) P(M) P(M)

起始点确定: P ( S ) P(S) P(S)

3. 搜索设备效果建模:

设备检测概率: P ( D ∣ E i , M ) P(D|E_i, M) P(DEi,M)

设备未检测到的概率: P ( ¬ D ∣ E i , M ) = 1 − P ( D ∣ E i , M ) P(\neg D|E_i, M) = 1 - P(D|E_i, M) P(¬DEi,M)=1P(DEi,M)

4. 搜救时间和效果评估:

时间建模: P ( T ) P(T) P(T)

搜救成功概率: P ( R ∣ E i , M , T , S ) P(R|E_i, M, T, S) P(REi,M,T,S)

P ( R ∣ E i , M , T , S ) = P ( D ∣ E i , M ) ⋅ P ( S ) ⋅ ( 1 − ∏ t = 1 T P ( ¬ D ∣ E i , M , t ) ) P(R|E_i, M, T, S) = P(D|E_i, M) \cdot P(S) \cdot \left(1 - \prod_{t=1}^{T} P(\neg D|E_i, M, t)\right) P(REi,M,T,S)=P(DEi,M)P(S)(1t=1TP(¬DEi,M,t))

P ( ¬ D ∣ E i , M , t ) = ∏ j = 1 k P ( ¬ D j ∣ E i , M , t ) P(\neg D|E_i, M, t) = \prod_{j=1}^{k} P(\neg D_j|E_i, M, t) P(¬DEi,M,t)=j=1kP(¬DjEi,M,t) (多个设备未检测到的联合概率)

5. 总体评估:

总体搜救成功概率: P ( R ) = ∑ i = 1 n P ( R ∣ E i , M , T , S ) ⋅ P ( E i ) ⋅ P ( M ) P(R) = \sum_{i=1}^{n} P(R|E_i, M, T, S) \cdot P(E_i) \cdot P(M) P(R)=i=1nP(REi,M,T,S)P(Ei)P(M)

import random# 设备性能
def device_performance(device):# 假设性能是随机的,实际情况需要根据实际数据或模型确定return random.uniform(0.5, 1.0)# 设备成本
def device_cost(device):# 假设成本是随机的,实际情况需要根据实际数据或模型确定return random.uniform(1000, 5000)# 设备选择和性能
devices = ["Sonar", "Camera", "Laser"]
device_probabilities = {device: device_performance(device) for device in devices}# 设备部署策略
search_modes = ["Spiral", "Grid"]
search_mode_probability = {"Spiral": 0.7, "Grid": 0.3}# 起始点选择
start_point_probability = 0.8# 时间建模
def time_model():# 假设时间是随机的,实际情况需要根据实际数据或模型确定return random.uniform(1, 10)# 设备检测概率建模
def detection_probability(device, search_mode):# 这里使用了随机值,实际情况需要根据实际数据或模型确定return device_probabilities[device] * random.uniform(0.5, 1.0)# 搜救成功概率建模
def rescue_probability(device, search_mode, time, start_point):detection_prob = detection_probability(device, search_mode)# 计算多个设备未检测到的联合概率undetected_prob = 1.0for t in range(1, int(time) + 1):undetected_prob *= (1 - detection_probability(device, search_mode))return detection_prob * start_point_probability * (1 - undetected_prob)#见完整版

问题三

建模思路整合:

在问题三中,我们需要将搜救模型扩展到考虑其他旅游目的地以及多潜水艇在同一区域的协同搜救情况。以下是整合后的建模思路:

1. 适应其他旅游目的地:

位置变化模型:
P ( L new ∣ L old , G ) P(L_{\text{new}} | L_{\text{old}}, G) P(LnewLold,G)

解释: 此模型考虑了地理因素 G G G 对潜水艇位置的影响,使模型具有适应不同旅游目的地的能力。

模型调整和公式变化:
P ( R ∣ L , E , M , T , S ) P(R | L, E, M, T, S) P(RL,E,M,T,S)

解释: 原有搜救模型被扩展,引入了位置信息 L L L,考虑到不同目的地可能需要调整设备性能、搜索模式等参数。

2. 多潜水艇移动:

位置变化模型(考虑速度和方向):
P ( L new i ∣ L old i , V i , Θ i , G ) P(L_{\text{new}_i} | L_{\text{old}_i}, V_i, \Theta_i, G) P(LnewiLoldi,Vi,Θi,G)

解释: 考虑了速度 V V V、方向 Θ \Theta Θ 和地理因素 G G G 的情况下,描述了第 i i i 艘潜水艇位置变化的概率。

通信协同:
P ( C success i ∣ L i , L j , P comm ) P(C_{\text{success}_i} | L_i, L_j, P_{\text{comm}}) P(CsuccessiLi,Lj,Pcomm)

解释: 该公式表示在给定通信设备参数 P comm P_{\text{comm}} Pcomm 的情况下,第 i i i 艘潜水艇和其他潜水艇的协同通信成功概率。协同通信对于避免碰撞和提高搜索效率至关重要。

3. 总体评估:

多潜水艇协同搜救总体概率:
P ( 总体搜救成功 ) = ∑ i = 1 n P ( R i ∣ L i , E , M , T , S ) ⋅ P ( L new i ∣ L old i , V i , Θ i , G ) ⋅ P ( C success i ∣ L i , L j , P comm ) P(\text{总体搜救成功}) = \sum_{i=1}^{n} P(R_i | L_i, E, M, T, S) \cdot P(L_{\text{new}_i} | L_{\text{old}_i}, V_i, \Theta_i, G) \cdot P(C_{\text{success}_i} | L_i, L_j, P_{\text{comm}}) P(总体搜救成功)=i=1nP(RiLi,E,M,T,S)P(LnewiLoldi,Vi,Θi,G)P(CsuccessiLi,Lj,Pcomm)

解释: 该公式综合考虑了多艘潜水艇的搜救成功概率、位置变化概率和协同通信概率。通过对所有潜水艇的贡献进行求和,得到总体协同搜救成功的概率。

这一整体建模思路允许模型适应不同的旅游目的地,并考虑多潜水艇在同一区域的协同搜救情况。

import random# 适应其他旅游目的地
def position_change_probability(new_position, old_position, geography_factors):# 模拟位置变化概率,实际应用中需要基于实际数据或模型return random.uniform(0.1, 0.9)# 搜救模型
def search_and_rescue_probability(location, equipment, search_mode, time, start_point):# 模拟搜救成功概率,实际应用中需要基于实际数据或模型return random.uniform(0.1, 0.9)# 多潜水艇移动
def position_change_model(new_position, old_position, speed, direction, geography_factors):# 模拟位置变化概率,实际应用中需要基于实际数据或模型return random.uniform(0.1, 0.9)# 通信协同
def communication_cooperation_probability(location_i, location_j, communication_params):# 模拟通信协同成功概率,实际应用中需要基于实际数据或模型return random.uniform(0.1, 0.9)# 多潜水艇协同搜救总体概率
def total_rescue_probability(num_submarines, equipment, search_mode, time, start_point, communication_params):total_probability = 0for i in range(num_submarines):# 适应其他旅游目的地position_change_prob = position_change_probability(new_position, old_position, geography_factors)# 搜救模型search_rescue_prob = search_and_rescue_probability(location, equipment, search_mode, time, start_point)# 多潜水艇移动position_change_prob_multi_sub = position_change_model(new_position, old_position, speed, direction, geography_factors)# 通信协同communication_cooperation_prob = communication_cooperation_probability(location_i, location_j, communication_params)# 多潜水艇协同搜救总体概率total_probability += search_rescue_prob * position_change_prob_multi_sub * communication_cooperation_probreturn total_probability# 示例调用
num_submarines = 3
equipment = "Sonar"
search_mode = "Spiral"
time = 5
start_point = (0, 0)
communication_params = {"range": 100, "frequency": "UHF"}
geography_factors = {"depth": 500, "current_speed": 2}# 填充实际数据或模型参数
new_position = (random.uniform(0, 100), random.uniform(0, 100))
old_position = (random.uniform(0, 100), random.uniform(0, 100))
speed = random.uniform(1, 5)#见完整版

问题四

问题四涉及如何将模型扩展以考虑其他旅游目的地(例如加勒比海),以及多个潜水艇在相同区域的情况。下面是详细的建模思路:

1. 适应其他旅游目的地:

位置变化模型:

P ( L new ∣ L old , G ) P(L_{\text{new}} | L_{\text{old}}, G) P(LnewLold,G)

解释: 这个公式表示在考虑地理因素 G G G 的情况下,潜水艇从旧位置 L old L_{\text{old}} Lold 移动到新位置 L new L_{\text{new}} Lnew 的概率。考虑到不同的旅游目的地可能有不同的地理特征,例如加勒比海与爱奥尼亚海,模型需要考虑不同的地理因素。

模型调整和公式变化:

P ( R ∣ L , E , M , T , S ) P(R | L, E, M, T, S) P(RL,E,M,T,S)

解释: 这个公式是原有搜救模型的扩展,包括了位置信息 L L L。在不同目的地,地理环境的变化可能会影响设备性能、搜索模式等,因此模型需要相应调整。这可能包括设备对不同海域的适应性、搜索策略的调整等。

2. 多潜水艇移动:

位置变化模型(考虑速度和方向):

P ( L new i ∣ L old i , V i , Θ i , G ) P(L_{\text{new}_i} | L_{\text{old}_i}, V_i, \Theta_i, G) P(LnewiLoldi,Vi,Θi,G)

解释: 这个公式表示在考虑速度 V V V、方向 Θ \Theta Θ 和地理因素 G G G 的情况下,第 i i i 艘潜水艇从旧位置 L old i L_{\text{old}_i} Loldi 移动到新位置 L new i L_{\text{new}_i} Lnewi 的概率。考虑到多艘潜水艇可能相互影响,速度和方向可能需要根据协同效应进行调整。

通信协同:

P ( C success i ∣ L i , L j , P comm ) P(C_{\text{success}_i} | L_i, L_j, P_{\text{comm}}) P(CsuccessiLi,Lj,Pcomm)

解释: 这个公式表示在给定通信设备参数 P comm P_{\text{comm}} Pcomm 的情况下,第 i i i 艘潜水艇和其他潜水艇的协同通信成功的概率。协同通信对于避免碰撞和提高搜索效率非常重要。

3. 总体评估:

多潜水艇协同搜救总体概率:

P ( 总体搜救成功 ) = ∑ i = 1 n P ( R i ∣ L i , E , M , T , S ) ⋅ P ( L new i ∣ L old i , V i , Θ i , G ) ⋅ P ( C success i ∣ L i , L j , P comm ) P(\text{总体搜救成功}) = \sum_{i=1}^{n} P(R_i | L_i, E, M, T, S) \cdot P(L_{\text{new}_i} | L_{\text{old}_i}, V_i, \Theta_i, G) \cdot P(C_{\text{success}_i} | L_i, L_j, P_{\text{comm}}) P(总体搜救成功)=i=1nP(RiLi,E,M,T,S)P(LnewiLoldi,Vi,Θi,G)P(CsuccessiLi,Lj,Pcomm)

解释: 这个公式整合了多艘潜水艇的搜救成功概率、位置变化概率和协同通信概率。通过对所有潜水艇的贡献进行求和,得到总体协同搜救成功的概率。这个概率可以帮助评估多潜水艇协同搜救的效果。

4. 适应多个潜水艇和多个目的地:

位置变化模型(考虑多潜水艇和多个目的地):

P ( L new i ∣ L old i , V i , Θ i , G d ) P(L_{\text{new}_i} | L_{\text{old}_i}, V_i, \Theta_i, G_d) P(LnewiLoldi,Vi,Θi,Gd)

解释: 这个公式在原有位置变化模型的基础上,考虑了不同目的地 d d d 对潜水艇位置变化的影响。可能需要额外的参数来区分不同目的地的地理特征。

多潜水艇协同通信:

P ( C success i ∣ L i , L j , P comm ) P(C_{\text{success}_i} | L_i, L_j, P_{\text{comm}}) P(CsuccessiLi,Lj,Pcomm)

解释: 在协同通信模型中,可能需要考虑多潜水艇之间的相互作用,以及它们在不同目的地中的通信效果。

import random# 适应其他旅游目的地
def position_change_probability(new_position, old_position, geography_factors):# 模拟位置变化概率,实际应用中需要基于实际数据或模型depth_difference = abs(geography_factors["depth"] - new_position[1])  # 模拟深度差异current_speed = geography_factors["current_speed"]  # 模拟海流速度# 模型调整:深度差异和海流速度对位置变化的影响probability = 0.7 - 0.005 * depth_difference + 0.01 * current_speedreturn max(0, min(1, probability))  # 保证概率在[0, 1]范围内# 多潜水艇移动
def position_change_model(new_position, old_position, speed, direction, geography_factors):# 模拟位置变化概率,实际应用中需要基于实际数据或模型depth_difference = abs(geography_factors["depth"] - new_position[1])  # 模拟深度差异current_speed = geography_factors["current_speed"]  # 模拟海流速度# 模型调整:深度差异和海流速度对位置变化的影响probability = 0.8 - 0.006 * depth_difference + 0.008 * current_speedreturn max(0, min(1, probability))  # 保证概率在[0, 1]范围内# 通信协同
def communication_cooperation_probability(location_i, location_j, communication_params):# 模拟通信协同成功概率,实际应用中需要基于实际数据或模型distance = ((location_i[0] - location_j[0]) ** 2 + (location_i[1] - location_j[1]) ** 2) ** 0.5# 模型调整:距离对通信协同的影响probability = 0.9 - 0.005 * distancereturn max(0, min(1, probability))  # 保证概率在[0, 1]范围内# 多潜水艇协同搜救总体概率
def total_rescue_probability(num_submarines, equipment, search_mode, time, start_point, communication_params, destination_factors):total_probability = 0for i in range(num_submarines):# 适应其他旅游目的地position_change_prob = position_change_probability(new_position, old_position, destination_factors)# 多潜水艇移动position_change_prob_multi_sub = position_change_model(new_position, old_position, speed, direction, destination_factors)# 通信协同communication_cooperation_prob = communication_cooperation_probability(location_i, location_j, communication_params)# 多潜水艇协同搜救总体概率total_probability += position_change_prob_multi_sub * communication_cooperation_probreturn total_probability# 示例调用
num_submarines = 3
equipment = "Sonar"
search_mode = "Spiral"
time = 5
start_point = (0, 0)
communication_params = {"range": 100, "frequency": "UHF"}
destination_factors = {"depth": 500, "current_speed": 2}# 填充实际数据或模型参数
new_position = (random.uniform(0, 100), random.uniform(0, 100))
old_position = (random.uniform(0, 100), random.uniform(0, 100))#见完整版

更多内容具体可以看看我的下方名片!里面包含有认证杯一手资料与分析!
另外在赛中,我们也会陪大家一起解析认证杯的一些方向
关注 CS数模 团队,数模不迷路~

这篇关于2024年美赛 (B题MCM)| 潜水艇 |数学建模完整代码+建模过程全解全析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/670252

相关文章

使用 Java 代码完成PPT转换为长图片的操作

Java 代码完成 PPT 转换为长图片 1、确保已经安装了Apache POI库。如果使用Maven,可以在pom.xml文件中添加以下依赖: <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>5.2.0</version></dependency><dependency><

Parallels Desktop19虚拟机电脑版下载安装Windows详细图文教程2024最新

Parallels Desktop是一款Mac虚拟机软件,可以在Mac上运行Windows系统,它是Mac上最优秀的虚拟机软件之一。用户无需重启即可在Mac上同时运行Mac OS和Windows应用程序,且两者之间能够无缝切换,对此,用户甚至无需设置双系统。此外,它还支持各种主流操作系统,如Windows 10、Ubuntu和其他Linux发行版、Android等。通过安装安卓系统,用户可以直接在

穷人想要改命,是选择打工还是创业? 2024创业项目小成本!2024轻资产创业!2024风口行业!2024普通人做什么行业赚钱?

今日话题穷人想要改命,是选择打工还是创业? 改命的方式就是跳进水里,忍受呛水,学会游泳,这个过程越年轻实现越好,就像小鹰往山崖下跳,要么学会飞,要么就狠狠的被摔死。打工思维和创业思维是两种完全不同维度的思维,在打工和创业之间是有真空期的,这个真空期就是你的那段无人理解,无人帮忙,独自苦熬,在黑暗中扎根成长的日子。这段苦日子一定要经历。打工思维都在稳定安逸,因为打工挣的是老板的钱,不过久而久之,你

在配置ROS分布式/主从机过程中遇到的报错解决和命令需求

报错:ssh: connect to host *** port 22: Network is unreachable 原因:网断了 解决:重启虚拟机或手动连接或命令重启网络连接 sudo service network-manager restart 报错:Unit network.service not found. 原因:命令错了 报错:ROS错误:远程打开不了窗口 QX

裸机云服务器哪个好?2024年十大最佳裸机服务器提供商

目前比较好的裸机云服务器有:Liquid Web、Cherry Servers、Hivelocity、Scaleway、Amazon、INAP、RedSwitches、OpenMetal、Oracle、Vultr,也是被评选为2024年十大最佳裸机服务器提供商。 裸机云与传统的云服务器解决方案不同,裸机服务器提供100%专用的硬件和软件资源,这使得它们更加个性化、一致和安全。考虑到这

学生管理系统代码

学生管理系统代码 好好看,好好学,知识点的部分看不懂就多查。 内容很多,仔细看。 #include <stdio.h>#include <stdlib.h>#define M 100#define N 10//定义学生相关信息结构体typedef struct stu{char sn[13];char name[9];char sex;float corse[N];} stu;//

VulnHub靶机 DC-9 靶机 详细渗透过程

VulnHub靶机 DC-9 打靶实战 详细渗透过程 目录 VulnHub靶机 DC-9 打靶实战 详细渗透过程一、将靶机配置导入到虚拟机当中二、渗透测试主机发现端口扫描Web渗透SQL注入登入后台文件包含SSH爆破提权 一、将靶机配置导入到虚拟机当中 靶机地址: https://www.vulnhub.com/entry/dc-9,412/ 二、渗透测试 主

大模型日报2024-04-27

大模型日报   2024-04-27   大模型资讯   AI未来趋势:检索增强型生成(RAG)技术融合语言与搜索   摘要: 随着专家暗示大型语言模型(LLMs)的技术发展接近极限,检索增强型生成(RAG)成为关注焦点。RAG通过结合传统的语言模型和搜索引擎功能,能够提升模型处理信息和生成回答的能力,为AI的发展开辟新方向。   微软发布迄今最小的AI模型Phi-3-mini

快速排序平均情况下时间复杂度计算过程:

就平均情况而言,快速排序是目前被认为最好的一种内部排序方法,其时间复杂度在平均情况下是nlogn,在最坏的情况下(有序时)时间复杂度是o(n^2)。下面来分析时间复杂度的计算过程: 平均情况下:T(n)=2*T(n/2)+n;      第一次划分                                =2*(2*T(n/4)+n/2)+n;     第二次划分       =2*(

开发工具-pycharm的代码自动部署服务器以及服务端python配置、项目开发环境一键启动服务

文章目录 一、pycharm的ssh配置1.本地生成ssh密钥2.密钥配置到远端服务器(1-1) 有权限ssh访问到服务器(1-2) 无权限ssh访问到服务器(1-3) 没有办法通过以上形式上传到服务器(2) 配置到authorized_keys自动访问 3.pycharm中配置ssh(1) 选择File中的settings(1) 选择Tools中的SSH Configurations(3)