竞赛思享会 | 2024年第十届数维杯国际数学建模挑战赛D题【代码+演示】
Hello,这里是Easy数模!以下idea仅供参考,无偿分享!
题目背景
本题旨在通过对中国特定城市的房产、人口、经济、服务设施等数据进行分析,评估其在应对人口老龄化、负增长趋势和极端气候事件中的韧性与可持续发展能力。主要目标包括未来房价和房屋存量预测、服务水平量化分析、韧性与可持续发展能力评估,以及根据分析结果为城市未来发展提供规划建议。
问题总览
这四个问题可以按不同类型的分析任务进行概括,具体如下:
1. 问题 (1):未来房价预测与房屋存量估计
类型:预测与估计问题
该问题涉及未来趋势的预测(如房价)和当前状态的估计(如房屋存量),可以通过时间序列分析、回归模型等方法进行解决。它关注对未来市场的预测,为后续的城市发展和政策制定提供参考。
2. 问题 (2):服务水平量化分析
类型:聚类分析与特征提取
该问题关注对现有服务水平的聚类以及特征的提取。它主要是一个数据聚类和特征分析问题,涉及到对不同服务设施的覆盖度、密度等指标的计算,并提取城市服务的共性和个性,找到城市在各方面的优势和劣势。
3. 问题 (3):城市韧性和可持续发展能力评估
类型:评估与优化问题
该问题关注城市在极端气候和紧急事件中的韧性表现,以及在可持续发展方面的能力。它属于评估问题,同时包含一定的优化成分(在预算限制下制定投资计划),可通过构建指标体系、建立资源分配模型等方式来量化并优化城市的韧性与可持续发展能力。
4. 问题 (4):未来发展规划
类型:规划与决策问题
该问题要求制定一个未来发展的具体规划,属于决策与规划问题。它基于前面问题的分析结果,进一步明确投资方向、预算和预期成效,为城市的长远发展提供指导性建议。
总结
- 问题 (1):预测与估计
- 问题 (2):聚类分析与特征提取
- 问题 (3):评估与优化
- 问题 (4):规划与决策
题目解析及解题思路
问题 (1):房价预测与房屋存量估计(预测问题)
目标:预测未来房价走势,估算当前房屋存量。
数据来源:
- 已提供的City 1和City 2的房产销售信息数据(附件1和2)
- 可收集的互联网数据(如人口、GDP等)
数据总览
附件1和附件2(两个城市的房产信息):
- 字段:
- Community Number:小区编号
- Price (USD):房价(美元)
- Total number of households:总住户数
- Greening rate:绿化率
- Floor area ratio:容积率
- Building type:建筑类型(多层、中层、高层等)
- Parking space:停车位信息(总数和车位比)
- Property management fee(/m²/month USD):物业管理费
- above-ground/underground parking fee(/month USD):地上/地下停车费
- property type:房产类型
- citycode 和 adcode:城市代码和地区代码
- lon 和 lat:经纬度
- X 和 Y:坐标转换值
数据特征:
- 包含房价、住户数、绿化率、容积率等多维度的房产和小区信息,有助于进行房价预测、服务水平评估以及后续韧性与可持续发展能力分析。
解题思路:
- 数据预处理:清洗并结构化房产数据,提取关键特征如区域、房价、面积等。
- 特征选取:引入人口、GDP、收入水平、城镇化率等影响房价的宏观经济特征。
- 预测模型:
- 时间序列模型:如ARIMA模型,用于预测房价的时间变化趋势。
- 机器学习模型:如多元回归、随机森林或XGBoost模型,通过房产和经济特征变量预测未来房价。
- 房屋存量估计:
- 使用房产销售信息估算当前房屋市场的供给量。
- 结合人口密度和住宅用地面积数据,估算当前房屋存量。
- 如果可以获得历年住房数据,还可基于住房建成率和出售率进行时间动态估算。
可行性挑战:
- 需要补充人口、经济等数据并进行清洗,以保证预测准确性。
- 需要调整模型参数以适应城市不同的区域特征,避免“一刀切”模式。
1. 数据探索性分析
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns# Load the data
file_path_1 = '/content/Appendix 1.xlsx'
data_1 = pd.read_excel(file_path_1)# Display basic information about the data
print("Data Overview:")
print(data_1.info())# Display basic statistics
print("\nBasic Statistical Information:")
print(data_1.describe())# Check for missing values
print("\nMissing Values:")
print(data_1.isnull().sum())# Distribution of 'Price (USD)'
plt.figure(figsize=(10, 6))
sns.histplot(data_1['Price (USD)'].dropna(), kde=True)
plt.title('Distribution of Price (USD)')
plt.xlabel('Price (USD)')
plt.ylabel('Frequency')
plt.show()# Distribution of 'Total number of households'
plt.figure(figsize=(10, 6))
sns.histplot(data_1['Total number of households'].dropna(), kde=True)
plt.title('Distribution of Total Number of Households')
plt.xlabel('Total number of households')
plt.ylabel('Frequency')
plt.show()# Distribution of 'Greening rate'
plt.figure(figsize=(10, 6))
sns.histplot(data_1['Greening rate'].dropna(), kde=True)
plt.title('Distribution of Greening Rate')
plt.xlabel('Greening rate')
plt.ylabel('Frequency')
plt.show()# Relationship between 'Building type' and 'Price (USD)'
plt.figure(figsize=(12, 8))
sns.boxplot(x='Building type', y='Price (USD)', data=data_1)
plt.xticks(rotation=45)
plt.title('Price (USD) Distribution by Building Type')
plt.xlabel('Building type')
plt.ylabel('Price (USD)')
plt.show()# Relationship between 'Floor area ratio' and 'Price (USD)'
plt.figure(figsize=(10, 6))
sns.scatterplot(x='Floor area ratio', y='Price (USD)', data=data_1)
plt.title('Relationship between Floor Area Ratio and Price (USD)')
plt.xlabel('Floor area ratio')
plt.ylabel('Price (USD)')
plt.show()# Calculate and visualize the correlation matrix for numeric columns only
plt.figure(figsize=(12, 8))
numeric_data = data_1.select_dtypes(include=['float64', 'int64']) # Select only numeric columns
correlation_matrix = numeric_data.corr()
sns.heatmap(correlation_matrix, annot=True, cmap='coolwarm', square=True)
plt.title('Correlation Matrix of Numeric Variables')
plt.show()
以下是对附件1数据的详细探索性分析结果:
- 房价分布:
- 从房价的分布图中可以看出,房价呈现右偏分布,大部分房价集中在10,000美元以下。这意味着大部分房产的价格处于较为实惠的范围内,但也有少部分房产价格较高(达到30,000美元甚至更高),拉高了整体的价格范围。
- 这种右偏的价格分布表明,在某些区域可能存在少量高端房产,这些房产的价格远高于平均水平。高价房产可能位于市中心、学区房、或是配套设施更完善的区域,从而推高了价格。
- 总体来看,大多数房产的价格集中在5,000至15,000美元之间,可能代表了市场的主流房价水平。
- 总住户数量分布:
- 总住户数量的分布也呈现出右偏,绝大多数小区的住户数较少,主要集中在1,000户以下,但也有少量小区住户数超过4,000户甚至达到7,000户以上。
- 小区住户数量的分布情况可能反映了城市中不同类型住宅区的存在:低住户数的小区可能是小型或低密度住宅区,如独栋住宅、别墅区等,而高住户数的小区可能是大型高密度住宅开发区,如公寓楼群或住宅综合体。
- 这种差异说明该城市的住宅类型多样化,可能存在不同的人群定位和住宅需求。
- 绿化率分布:
- 从绿化率的分布可以看到,大多数房产的绿化率集中在0.2到0.3之间,这可能是由城市规划的标准所决定的,确保住宅区有一定的绿色空间。
- 另外,绿化率在0.5及以上的房产相对较少。这类高绿化率的房产可能集中在生态住宅区、豪华小区或是高端住宅区中,通常这些区域会有更好的绿色环境以提升居住质量。
- 总体来看,绿化率较高的小区可能有更高的市场吸引力,因为绿色空间通常与生活质量的提升相关联。
- 建筑类型与房价的关系:
- 从箱线图中可以看出,不同建筑类型的房价分布差异显著。例如,“超高层”建筑的房价范围最广,价格波动较大,这可能是因为超高层建筑中的楼层位置和景观差异会影响价格,顶层或高层的价格往往较高。
- “多层”和“中层”建筑的房价较为集中且相对较低,表明这些建筑类型可能是普通居民住宅的主流选择,价格较为亲民且较为稳定。
- 此外,建筑类型的多样性也说明了不同人群的需求,例如,家庭可能更倾向于选择低层或中层的多层建筑,而年轻专业人士可能更青睐配套设施更齐全的高层或超高层公寓。
- 容积率与房价的关系:
- 从散点图可以看出,容积率与房价之间存在一定的负相关关系,即容积率越高的房产,房价往往越低。这种关系可以理解为,容积率高的区域往往意味着更高的建筑密度和更少的开放空间,通常与中低端住宅区相关。
- 容积率低的房产通常价格较高,可能是因为低容积率的开发项目往往具有更多的绿色空间、开放视野和更高的生活质量,例如低密度的高档住宅区或别墅区。
- 因此,容积率可以作为房产定位的一个重要参考因素,低容积率的房产可能更适合定位为高端市场,而高容积率的房产适合满足中低收入人群的居住需求。
- 相关性矩阵分析:
- 相关性矩阵显示出各变量之间的关系。以下是一些值得注意的相关性:
- 总住户数与地上停车费之间存在一定的正相关性,这表明在住户数较多的小区,停车需求也较大,从而影响停车费用。
- 绿化率与容积率之间存在一定的负相关性,这表明高密度的住宅区往往绿化率较低,而低密度的住宅区有更大的空间用于绿色环境。
- **地理坐标(经纬度)**显示出一些集群性,表明数据中不同房产可能位于不同的地理区域,可以进一步探索其地理位置与房价的关系。
总结
这些探索性分析结果提供了房产市场的整体概况,可以总结出:
- 房价和总住户数量呈现明显的右偏分布。
- 不同建筑类型和容积率对房价有显著影响,反映出不同住宅的市场定位。
- 绿化率和容积率之间的关系揭示了城市规划和住宅质量的关联。
这些见解可以为后续的建模和预测提供基础,尤其是在考虑不同区域、建筑类型和容积率等特征对房价的影响时。
2.数据预处理
- 填充了数值和类别变量的缺失值。
- 提取并转换了停车位信息。
- 转换并填充了物业管理费用。
- 删除了缺失率较高的列。
- 进行了One-Hot编码以便后续建模。
import pandas as pd
import numpy as np# Load data
file_path_1 = '/content/Appendix 1.xlsx'
data_1 = pd.read_excel(file_path_1)# Fill missing values
data_1['Price (USD)'].fillna(data_1['Price (USD)'].median(), inplace=True)
data_1['Total number of households'].fillna(data_1['Total number of households'].median(), inplace=True)
data_1['Greening rate'].fillna(data_1['Greening rate'].median(), inplace=True)
data_1['Floor area ratio'].fillna(data_1['Floor area ratio'].median(), inplace=True)
data_1['Building type'].fillna(data_1['Building type'].mode()[0], inplace=True)
data_1['property type'].fillna(data_1['property type'].mode()[0], inplace=True)# Handle 'parking space' by extracting total spaces and ratio
data_1['Total parking spaces'] = data_1['parking space'].str.extract(r'(\d+)', expand=False).astype(float)
data_1['Parking space ratio'] = data_1['parking space'].str.extract(r'\((1:\d+.\d+)\)', expand=False)
data_1.drop(columns=['parking space'], inplace=True) # Drop the original column# Handle 'Property management fee(/m²/month USD)' by converting ranges to median
data_1['Property management fee(/m²/month USD)'] = data_1['Property management fee(/m²/month USD)'].apply(lambda x: np.mean([float(i) for i in str(x).split('-')]) if isinstance(x, str) and '-' in x else x
)
data_1['Property management fee(/m²/month USD)'] = data_1['Property management fee(/m²/month USD)'].astype(float)
data_1['Property management fee(/m²/month USD)'].fillna(data_1['Property management fee(/m²/month USD)'].median(), inplace=True)# Drop columns with high missing values if necessary
data_1.drop(columns=['underground parking fee(/month USD)'], inplace=True)# One-Hot Encode categorical variables
data_1 = pd.get_dummies(data_1, columns=['Building type', 'property type'], drop_first=True)# Check final data
print("Processed Data Types:")
print(data_1.dtypes)
print("\nMissing Values After Processing:")
print(data_1.isnull().sum())
# Convert 'Parking space ratio' to numerical format
data_1['Parking space ratio'] = data_1['Parking space ratio'].str.extract(r'1:(\d+\.\d+)', expand=False).astype(float)# Fill missing values for remaining columns
data_1['above-ground parking fee(/month USD)'].fillna(data_1['above-ground parking fee(/month USD)'].median(), inplace=True)
data_1['Total parking spaces'].fillna(data_1['Total parking spaces'].median(), inplace=True)
data_1['Parking space ratio'].fillna(data_1['Parking space ratio'].median(), inplace=True)# Final check for missing values
print("\nFinal Missing Values After Processing:")
print(data_1.isnull().sum())
3.特征工程筛选
进行特征重要性分析和SHAP分析有助于理解各个特征对房价的影响。我们可以使用随机森林回归模型来评估特征重要性,因为随机森林可以自然地输出每个特征对预测结果的重要性。这里将可视化每个特征的重要性。
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestRegressor
from sklearn.model_selection import train_test_split# 分离特征和目标变量
X = data_1.drop(columns=['Price (USD)'])
y = data_1['Price (USD)']# 分割数据集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# 训练随机森林模型
model = RandomForestRegressor(random_state=42)
model.fit(X_train, y_train)# 获取特征重要性
feature_importances = model.feature_importances_
features = X.columns# 可视化特征重要性
plt.figure(figsize=(10, 8))
plt.barh(features, feature_importances)
plt.xlabel("Feature Importance")
plt.ylabel("Features")
plt.title("Feature Importance Analysis using Random Forest")
plt.show()
根据特征重要性图,我们可以看到一些特征的重要性接近于零或很低,因此可以考虑排除这些对房价预测影响不大的特征,以简化模型,提升计算效率。以下特征可以考虑排除:
- 建筑类型中的许多组合:例如 Building type_super high-rise、Building type_multi-story | mid-rise | super high-rise 等等,这些类别的特征重要性非常低。
- 物业类型中的部分类别:例如 property type_other、property type_hotel、property type_self-built 等类别对预测影响较小。
- 其他类别变量:citycode、adcode,这些特征对预测的影响也非常小,可以考虑排除。
排除这些变量后,我们可以重新进行SHAP分析,聚焦于对房价预测有显著影响的特征,以便更清晰地理解特征对预测的影响。
import pandas as pd
import numpy as np
import shap
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestRegressor
from sklearn.model_selection import train_test_split# 重新筛选特征,排除不重要的特征
selected_features = data_1.drop(columns=['Building type_super high-rise', 'Building type_multi-story | mid-rise | super high-rise','Building type_multi-story | mid-rise | high-rise', 'Building type_multi-story | high-rise | super high-rise','property type_other', 'property type_hotel', 'property type_self-built','citycode', 'adcode'
])# 分离特征和目标变量
X_selected = selected_features.drop(columns=['Price (USD)'])
y_selected = selected_features['Price (USD)']# 分割数据集
X_train, X_test, y_train, y_test = train_test_split(X_selected, y_selected, test_size=0.2, random_state=42)# 训练随机森林模型
model = RandomForestRegressor(random_state=42)
model.fit(X_train, y_train)# 使用已经训练好的模型进行SHAP值分析
explainer = shap.TreeExplainer(model)
shap_values = explainer.shap_values(X_test)# 可视化SHAP值的整体影响(特征重要性)
plt.figure(figsize=(10, 8))
shap.summary_plot(shap_values, X_test, plot_type="bar")# 可视化SHAP值的分布(每个特征对预测的影响)
shap.summary_plot(shap_values, X_test)
4.预测模型(准备采用之前推文的模型)
等待更新,不早了,先睡了!
问题 (2):服务水平量化分析 (聚类分析)
目标:量化City 1和City 2各行业的服务水平,提取城市的共性和个性特征,分析各自的优势与劣势。
数据来源:
- 附件3和4提供的基本服务POI(Point of Interest)数据。
解题思路:
- POI数据处理:
- 按照POI数据的行业分类(如医疗、教育、公共设施等)进行整理,提取出服务设施的地理分布和数量。
- 服务水平量化指标:
- 设施密度:每个行业的服务设施在特定区域内的密度,反映服务的覆盖率。
- 可达性:基于设施的分布和人口分布,评估居民到达这些服务设施的便捷性(可以使用GIS工具计算)。
- 服务多样性:统计不同类型服务设施的多样性,反映服务的全面性。
- 共性与个性分析:
- 通过聚类分析或主成分分析,对服务设施特征进行降维,识别两城市在服务水平上的共性与差异。
- 优势与劣势:
- 利用得分模型,对比两城市在不同服务领域的表现,找到各自的优势(如教育资源丰富、医疗设施充足)和不足(如缺乏公共娱乐设施等)。
可行性挑战:
- POI数据的完整性和精度会影响分析结果,需确保数据准确性。
- 地理分布分析涉及GIS工具操作,需较强的空间数据处理能力。
问题 (3):城市韧性与可持续发展能力评估(评价问题)
目标:评估两个城市应对极端天气和紧急事件的韧性,量化可持续发展能力,识别具体的弱点及未来投资重点。
数据来源:
- 附件3和4中的POI数据,以及在互联网上获取的有关城市基础设施和气候风险的数据。
解题思路:
- 韧性评估指标:
- 应急响应设施:包括医院、消防站、避难所等数量与分布。
- 基础设施耐久性:评估关键基础设施(如交通、电力、水利设施)的抗风险能力。
- 社会支持网络:例如社区中心、志愿者组织等的数量与活跃度,增强居民在灾害中的自助能力。
- 可持续发展能力量化:
- 建立一套综合指标体系,包括经济、社会和环境维度。
- 计算每个指标的得分,得分越高代表该城市在该指标上的表现越优。
- 短期与长期投资计划:
- 短期投资:主要聚焦在提升基础设施韧性、加强应急响应设施,如增加消防站数量、加强社区防灾教育等。
- 长期投资:关注环境治理、可持续能源和智慧城市建设,制定绿地扩展、公共交通优化等长期规划。
- 财务约束下的优化:
- 使用线性规划或资源分配模型,以“有限资金下最大化韧性与可持续性得分”为目标,合理分配预算。
可行性挑战:
- 需找到适合的韧性评估框架,并调整适应城市实际情况。
- 需要结合外部环境(如经济压力、政策支持),对投资回报进行合理预估。
问题 (4):未来发展规划(规划与决策问题)
目标:根据上述分析结果,制定City 1和City 2的未来发展规划,明确投资方向、金额和预期的智能城市发展提升效果。
解题思路:
- 发展规划框架:
- 将规划分为“基础设施”、“社会服务”、“环境可持续性”、“智能城市建设”四大类,每类明确未来发展方向。
- 投资预算:
- 对各个领域设定具体的投资金额及用途,例如智能交通系统、绿色建筑、智慧医疗设备等。
- 发展效果预测:
- 使用量化指标预测投资后的成效,如基础设施完备度、应急响应时间缩短、服务水平提升等。
- 撰写规划报告:
- 简洁明了地阐述发展规划,确保内容不超过两页,包括城市建设的主要方向、每个领域的投资重点以及对应的预期效果。
可行性挑战:
- 需精简规划内容,确保报告简明扼要。
- 需要合理量化预期效果,便于未来评估成效。
相关文章:
竞赛思享会 | 2024年第十届数维杯国际数学建模挑战赛D题【代码+演示】
Hello,这里是Easy数模!以下idea仅供参考,无偿分享! 题目背景 本题旨在通过对中国特定城市的房产、人口、经济、服务设施等数据进行分析,评估其在应对人口老龄化、负增长趋势和极端气候事件中的韧性与可持续发展能力。…...
vim 使用技巧
使用技巧 正常模式(Normal Mode)插入模式(Insert Mode)命令模式(Command Mode) vim常用三种模式包括正常模式,插入模式,命令模式。 正常模式(Normal Mode) 进…...
CSS-flex布局
flex常用语法 display: flex 父级元素相关 flex-direction 主轴方向【水平方向(默认)、垂直方向】justify-content 主轴上的对齐方式【flex-end结束对齐、space-between两端对齐、center】align-items 交叉轴的对齐方式【center、flex-end】flex-wrap…...
小R的随机播放顺序
问题描述 小R有一个特殊的随机播放规则。他首先播放歌单中的第一首歌,播放后将其从歌单中移除。如果歌单中还有歌曲,则会将当前第一首歌移到最后一首。这个过程会一直重复,直到歌单中没有任何歌曲。 例如,给定歌单 [5, 3, 2, 1,…...
docker常见命令
1.启动容器 docker run 运行容器 docker run -d 守护线程运行容器 docker run -p 80:80 指定端口运行容器,左侧为服务器端口,右侧为容器端口 docker run --rm 停止容器后销毁 docker --name 指定容器名称 2.停止容器 docker stop (id/name) …...
C语言-指针作为函数返回值及二级指针
1、指针作为函数返回值 c语言允许函数的返回值是一个指针(地址)我们将这样的函数称为指针函数,下面的例子定义一了一个函数strlong(),用来返回两个字符串中较长的一个: 1. #include <stdio…...
kotlin
参考资料: 参考资料 1、kotlin编译原理是先编译为class文件,再在java 虚拟机上执行2、变量 var 1 变量 val 2 常量 kotlin存在类型推导机制 var c:Int 1kotlin不存在基本类型,将全部使用对象类型3、函数 fun test(){}fun add(a:Int,b Int…...
【STM32】USART串口数据包
数据包的作用是将一个个单独的数据打包起来,方便进行多字节的数据通信 数据包格式 HEX数据包 文本数据包 数据包接收 HEX数据包接收(固定包长) 文本数据包接收(可变包长) 串口收发HEX数据包 接线图 Serial模块 se…...
开源TTS语音克隆神器GPT-SoVITS_V2版本地整合包部署与远程使用生成音频
文章目录 前言1.GPT-SoVITS V2下载2.本地运行GPT-SoVITS V23.简单使用演示4.安装内网穿透工具4.1 创建远程连接公网地址 5. 固定远程访问公网地址 前言 本文主要介绍如何在Windows系统电脑使用整合包一键部署开源TTS语音克隆神器GPT-SoVITS,并结合cpolar内网穿透工…...
echarts 图表resize() 报错Cannot read properties of undefined (reading ‘type‘)
原因是我使用了this.trainChart来接收数据,应该使用let或者var定义trainChart,就不会出现错误了。 错误代码如下: 原本 定义的echarts export default {data() {return {: null}} }现在 var trainChart null export default { }...
寻的制导律:从理论到应用的全景展示(下)
寻的制导律:从理论到应用的全景展示(下) 第六章 制导系统设计与实现 在制导系统的设计与实现过程中,系统需求分析、硬件与软件架构设计以及实现与测试方法是关键的三个环节。通过系统化的方法论,可以确保制导系统在复…...
ChatGPT 与其他 AI 技术在短视频营销中的技术应用与协同策略
摘要: 本文深入探讨了 ChatGPT 及其他 AI 技术在短视频营销中的应用。从技术层面剖析了这些技术如何助力短视频内容创作、个性化推荐、用户互动以及营销效果评估等多方面,通过具体方法分析、数据引用与大模型工具介绍,旨在为短视频营销领域提…...
使用PSpice进行第一个电路的仿真
1、单击【开始】菜单,选择【OrCAD Capture CIS Lite】。 2、单击【File】>【New】>【Project】。 3、①填入Name下面的文本框(提示:项目名称不要出现汉字); ②选择【Analog or Mixed A/D】; ③单击【…...
SparkSQL 对 SQL 查询的优化静态优化和动态优化两大部分介绍
SparkSQL 对 SQL 查询的优化主要分为 静态优化 和 动态优化 两大部分,其中静态优化主要在查询编译时进行,而动态优化则是在查询执行过程中进行。SparkSQL 的优化包括了多种技术,例如 RBO(基于规则的优化)、CBO…...
Android 网络请求(二)OKHttp网络通信
学习笔记 OkHttp 是一个非常强大且流行的 HTTP 客户端库,广泛用于 Android 开发中进行网络请求。与 HttpURLConnection 相比,OkHttp 提供了更简单、更高效的 API,特别是在处理复杂的 HTTP 请求时。 如何使用 OkHttp 进行网络请求 以下是使…...
游戏引擎学习第15天
视频参考:https://www.bilibili.com/video/BV1mbUBY7E24 关于游戏中文件输入输出(IO)操作的讨论。主要分为两类: 只读资产的加载 这部分主要涉及游戏中用于展示和运行的只读资源,例如音乐、音效、美术资源(如 3D 模型和…...
【机器学习】聚类算法原理详解
聚类算法 性能度量: 外部指标 jaccard系数(简称JC)FM指数(简称FMI)Rand指数(简称RI) 内部指标 DB指数(简称DBI)Dunn指数(简称DI) 距离计算&am…...
android 使用MediaPlayer实现音乐播放--基础介绍
Android 多媒体框架支持播放各种常见媒体类型,因此 可轻松地将音频、视频和图片集成到您的应用中。你可以播放音频或 从存储在应用资源(原始资源)的媒体文件(原始资源)中获取独立文件 或从通过网络连接到达的数据流中&…...
【人工智能】PyTorch、TensorFlow 和 Keras 全面解析与对比:深度学习框架的终极指南
文章目录 PyTorch 全面解析2.1 PyTorch 的发展历程2.2 PyTorch 的核心特点2.3 PyTorch 的应用场景 TensorFlow 全面解析3.1 TensorFlow 的发展历程3.2 TensorFlow 的核心特点3.3 TensorFlow 的应用场景 Keras 全面解析4.1 Keras 的发展历程4.2 Keras 的核心特点4.3 Keras 的应用…...
transformer.js(二):关于pipe管道的一切
前面的章节 transformer.js(一):这个前端大模型运行框架的可运行环境、使用方式、代码示例以及适合与不适合的场景介绍了transformer.js的应用场景。 pipe 管道(Pipeline) 作为 Transformer.js 的核心功能之一…...
django宠物服务管理系统
摘 要 宠物服务管理系统是一种专门为宠物主人和宠物服务提供商设计的软件。它可以帮助用户快速找到附近的宠物医院、宠物美容店、宠物寄养中心等服务提供商,并预订相关服务。该系统还提供了一系列实用的功能。通过使用宠物服务管理系统,用户可以更加方便…...
设计模式的学习思路
学习设计模式确实需要一定的时间和实践,尤其是对于刚入门的人来说,因为一开始可能会感到有些混淆,尤其是当多个设计模式看起来有相似之处时。本博客是博主学习设计模式的思路历程,大家可以一起学习进步。设计模式学习-CSDN博客 1…...
PgSQL即时编译JIT | 第1期 | JIT初识
PgSQL即时编译JIT | 第1期 | JIT初识 JIT是Just-In-Time的缩写,也就是说程序在执行的时候生成可以执行的代码,然后执行它。在介绍JIT之前,需要说下两种执行方式:解释执行和编译执行。其中解释执行是通过解释器,将代码逐…...
比rsync更强大的文件同步工具rclone
背景 多个复制,拷贝,同步文件场景,最大规模的是每次几千万规模的小文件需要从云上对象存储中拉取到本地。其他的诸如定期数据备份,单次性数据备份。 rsync是单线程的,开源的mrsync是多线程的,但适用范围没…...
【eNSP】OSPF、RIP与静态路由互通实验(四)
OSPF、RIP与静态路由互通实验 实验目的实验要求实验步骤步骤 1:配置R1、R2、R3、R4、R5、R6、R7的端口ip步骤 2:配置R1、R2、R3的OSPF动态路由协议步骤 3:配置R3、R4、R5的RIP动态路由协议步骤 4:配置R3作为边界路由器,…...
MODBUS TCP转CANOpen网关
Modbus TCP转CANopen网关 型号:SG-TCP-COE-210 产品用途 本网关可以实现将CANOpen接口设备连接到MODBUS TCP网络中;并且用户不需要了解具体的CANOpen和Modbus TCP 协议即可实现将CANOpen设备挂载到MODBUS TCP接口的 PLC上,并和CANOpen设备…...
Figure 02迎重大升级!!人形机器人独角兽[Figure AI]商业化加速
11月19日知名人形机器人独角兽公司【Figure AI】发布公司汽车巨头【宝马】最新合作进展,旗下人形机器人Figure 02在生产线上的性能得到了显著提升,机器人组成自主舰队,依托端到端技术,速度提高了400%,执行任务成功率提…...
Linux tcpdump 详解教程
简介 tcpdump 是一款在 Linux 平台上广泛使用的网络抓包工具。它可以捕获整个 TCP/IP 协议族的数据包,并支持对网络层、协议、主机、端口等进行过滤。tcpdump 提供了强大的过滤功能,允许使用 and、or、not 等逻辑语句来筛选数据包,非常适合用…...
o1的风又吹到多模态,直接吹翻了GPT-4o-mini
开源LLaVA-o1:一个设计用于进行自主多阶段推理的新型VLM。与思维链提示不同,LLaVA-o1独立地参与到总结、视觉解释、逻辑推理和结论生成的顺序阶段。 LLaVA-o1超过了一些更大甚至是闭源模型的性能,例如Gemini-1.5-pro、GPT-4o-mini和Llama-3.…...
记录下,用油猴Tampermonkey监听所有请求,绕过seesion
油猴Tampermonkey监听所有请求,绕过seesion 前因后果脚本编写 前因后果 原因是要白嫖一个网站的接口,这个接口的页面入口被隐藏掉了,不能通过页面调用,幸好之前有想过逆向破解通过账号密码模拟登录后拿到token,请求该…...
Golang语言整合jwt+gin框架实现token
1.下载jwt go get -u github.com/dgrijalva/jwt-go2.新建生成token和解析token文件 2.1 新建common文件夹和jwtConfig文件夹 新建jwtconfig.go文件 2.2 jwtconfig.go文件代码 /* Time : 2021/8/2 下午3:03 Author : mrxuexi File : main Software: GoLand */ package jwtC…...
SpringBootTest启动时出现循环依赖问题
在公司项目开发中由于SpringBoot启动类配置了setAllowCircularReferences为true在特定的业务逻辑下需要该配置,但我们需要使用SpringBootTest单元测试的时候引入我们开发的配置文件发现不生效, 解决方法: SpringBootTest(properties "…...
微信小程序——01开发前的准备和开发工具
一、踏上小程序开发之旅前的准备 (一)小程序账号注册 开启注册流程 首先,在浏览器中打开 “微信公众平台”(微信公众平台)。进入平台后,你会看到右上角有一个 “立即注册” 按钮,点击它&#x…...
华为欧拉系统使用U盘制作引导安装华为欧拉操作系统
今天记录一下通过U盘来安装华为欧拉操作系统 华为欧拉操作系统是国产的一个类似于Centos的Linus系统 具体实现操作步骤: 先在官网下载欧拉系统镜像点击跳转到下载 准备好一个大于16g的U盘 ,用于制作U盘启动 下载一个引导程序制作工具,我使用…...
【Java 集合】Collections 空列表细节处理
问题 如下代码,虽然定义为非空 NonNull,但依然会返回空对象,导致调用侧被检测为空引用。 实际上不是Collections的问题是三目运算符返回了null对象。 import java.util.Collections;NonNullprivate List<String> getInfo() {IccReco…...
2021 年 3 月青少年软编等考 C 语言三级真题解析
目录 T1. 找和为 K 的两个元素思路分析T2. Minecraft思路分析T3. 踩方格思路分析T4. 苹果消消乐思路分析T5. 流感传染思路分析T1. 找和为 K 的两个元素 在一个长度为 n ( n < 1000 ) n\ (n < 1000) n (n<1000) 的整数序列中,判断是否存在某两个元素之和为 k k k…...
【PyTorch】Pytorch中torch.nn.Conv1d函数详解
1. 函数定义 torch.nn.Conv1d 是 PyTorch 中用于一维卷积操作的类。定义如下: 官方文档:https://pytorch.ac.cn/docs/stable/generated/torch.nn.Conv1d.html#torch.nn.Conv1d torch.nn.Conv1d(in_channels, out_channels, kernel_size, stride1,paddi…...
Linux运维篇-iscsi存储搭建
目录 概念实验介绍环境准备存储端软件安装使用targetcli来管理iSCSI共享存储 客户端软件安装连接存储 概念 iSCSI是一种在Internet协议上,特别是以太网上进行数据块传输的标准,它是一种基于IP Storage理论的存储技术,该技术是将存储行业广泛…...
通过shell脚本分析部署nginx网络服务
题目: 1.接收用户部署的服务名称 2.判断服务是否安装 已安装;自定义网站配置路径为/www;并创建共享目录和网页文件;重启服务 没有安装;安装对应的软件包 3.测试 判断服务是否成功运行; 已运行&am…...
Cyberchef使用功能之-多种压缩/解压缩操作对比
cyberchef的compression操作大类中有大量的压缩和解压缩操作,每种操作的功能和区别是什么,本章将进行讲解,作为我的专栏《Cyberchef 从入门到精通教程》中的一篇,详见这里。 关于文件格式和压缩算法的理论部分在之前的文章《压缩…...
【http】http协议状态码
目录 1. 说明2. 信息性状态码3. 成功状态码4. 重定向状态码5. 客户端错误状态码6. 服务器错误状态码 1. 说明 1.HTTP协议状态码是指在HTTP通信过程中,服务器向客户端返回的三位数值的数字代码,用于表示服务器对请求的处理结果和状态。2.这些状态码由三个…...
tcpdump交叉编译
TCPDUMP在Libpcap上开发。 首先需要编译libcap。 网上那么多教程,下载地址都只给了一个英文的官网首页, 你尽可以试试,从里面找到下载地址都要费半天时间。 \color{red}网上那么多教程,下载地址都只给了一个英文的官网首页&#…...
Python 脚本程序加密
文章目录 前言编译成 .pyc 文件编译成可执行文件PyInstallerNuitka PyArmor加密 Python 脚本生成可执行文件设置授权管理规则 前言 Python 脚本程序加密推荐。 编译成 .pyc 文件 .pyc 文件是 Python 源码文件 (.py) 编译后的二进制文件,能提高加载速度࿰…...
记录一次mysql的一些操作,mysql的docker,mysql备份,mysql表复制
我是用的是mysql的docker容器版本。 1、使用mysql的docker容器版本 1.1 启动 docker run --name <docker_name> \-e MYSQL_ROOT_PASSWORD<password> \-v /datavolume2/mysql:/var/lib/mysql \-p 3306:3306 \-d hub.atomgit.com/arm64v8/mysqldocker_name是启动后…...
Slate文档编辑器-WrapNode数据结构与操作变换
Slate文档编辑器-WrapNode数据结构与操作变换 在之前我们聊到了一些关于slate富文本引擎的基本概念,并且对基于slate实现文档编辑器的一些插件化能力设计、类型拓展、具体方案等作了探讨,那么接下来我们更专注于文档编辑器的细节,由浅入深聊…...
2024信创数据库TOP30之蚂蚁集团OceanBase
数据库作为存储、管理和分析这些数据的关键工具,其地位自然不言而喻。随着信息技术的日新月异,数据库技术也在不断演进,以满足日益复杂多变的市场需求。近日,备受瞩目的“2024信创数据库TOP30”榜单由DBC联合CIW/CIS权威发布&…...
Unity类银河战士恶魔城学习总结(P130 SkillTree UI 技能树)
【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili 教程源地址:https://www.udemy.com/course/2d-rpg-alexdev/教程源地址:https://www.udemy.com/course/2d-rpg-alexdev/ 本章节实现了技能树的UI设置 UI_SKillTreeSlot.cs 这段代码定义了…...
Web服务器
简介 www是world wide web的缩写,也就是全球信息广播的意思。通常说的上网就是使用www来查询用户 所需要的信息。www可以结合文字、图形、影像以及声音等多媒体,并通过可以让鼠标单击超链接的方 式将信息以Internet传递到世界各处去。 与其他服务器类似…...
.net将List<实体1>的数据转到List<实体2>
比如说有两个实体Class,如下: //实体1 public class People {public string Name {get;set;}public int Age {get;set;} } //实体2 public class Student {public string Name {get;set;}public int Age {get;set;}public string ClassRoom {get;set;}/…...
django从入门到精通(五)——表单与模型
好的,下面将详细介绍 Django 的表单与模型,包括它们的定义、使用、如何在 Django Admin 中结合使用,以及相关的字段类型和验证机制。 Django 模型与表单 1. Django 模型 Django 模型是一个 Python 类,用于定义数据库中的数据结…...