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

提示工程架构师实战:Agentic AI在物流调度中的路径优化案例

提示工程架构师实战用Agentic AI破解物流调度路径优化难题标题选项提示工程架构师实战Agentic AI在物流调度中的路径优化落地案例从0到1搭建Agentic物流系统提示工程驱动的路径优化实战破解物流调度痛点Agentic AI提示工程的路径优化全流程解析物流调度不用愁Agentic AI与提示工程的实战指南引言 (Introduction)痛点引入物流调度的「三座大山」你有没有遇到过这样的场景快递公司早上接了50单派车时发现要么绕路太远要么超时货车走到半路遇到堵车只能眼睁睁看着时效窗口关闭旺季订单暴增传统调度系统卡得要死还总漏单……物流调度本质是「带约束的路径优化问题」——要平衡**成本里程、油耗、时效时间窗、资源车辆载重/容量**三大目标但传统方法如遗传算法、动态规划有个致命缺陷不会「主动适应变化」。比如突发路况、临时加单时系统要人工干预才能调整反应慢半拍。而Agentic AI智能代理AI的出现正好补上了这个缺口它能让多个AI代理自主协作、实时决策、动态优化像「智能调度员团队」一样解决复杂问题。但要让Agentic系统真正落地关键是提示工程——你得教会每个AI代理「该做什么、怎么配合、如何应对变化」。文章内容概述本文将以「同城快递即时调度」为场景手把手教你拆解物流调度的核心问题设计Agentic AI系统的角色与协作流程为每个Agent编写精准的提示词用PythonLangChain实现可运行的原型系统验证系统在动态场景下的优化效果。读者收益读完本文你将掌握Agentic AI在垂直领域物流的落地方法论针对复杂任务的提示工程设计技巧如何定义目标、约束、输出格式用LangChain搭建多Agent协作系统的具体步骤解决「动态路径优化」问题的AI方案。准备工作 (Prerequisites)技术栈/知识要求AI基础了解LLM大语言模型如GPT-4、Claude 3、提示工程的基本概念如指令、约束、结构化输出编程基础熟悉Python语法能看懂Flask/FastAPI等Web框架非必须但有助于理解系统交互行业常识了解物流调度的基本术语如「时间窗」订单要求的送达时间段「TSP问题」旅行商问题。环境/工具准备Python环境Python 3.9推荐用Anaconda管理环境LLM API密钥注册OpenAI/Groq/Claude账号获取API Key本文用GPT-4o演示依赖库安装pipinstalllangchain openai python-dotenv google-or-toolslangchain多Agent系统开发框架google-or-tools谷歌开源的组合优化工具辅助LLM解决路径规划问题python-dotenv管理环境变量存储API Key。核心内容手把手实战 (Step-by-Step Tutorial)背景场景定义我们以「同城生鲜快递」为具体场景明确问题边界输入10辆配送车辆每车载重500kg最大续航200km、20个订单每个订单包含地址、重量、时间窗、联系人约束车辆必须在订单的时间窗内送达如9:00-10:00车辆总载重不能超过500kg单辆车的总里程不超过200km目标最小化总配送里程降低油耗、最大化时效满足率≥95%、最小化车辆空驶率≤10%。步骤一Agentic系统设计——拆解角色与协作流程Agentic AI的核心是「分工协作」将复杂任务拆分成多个子任务每个子任务由专门的Agent负责再通过「总调度Agent」协调。1.1 定义Agent角色与职责我们设计4个核心AgentAgent名称职责描述调度总Agent1. 接收订单与车辆信息2. 分配任务给其他Agent3. 整合结果生成最终调度方案4. 处理实时异常如堵车。路径规划Agent基于订单、车辆、路况计算单辆车的最优路径解决带约束的TSP问题。实时监控Agent1. 实时获取路况如高德地图API2. 检测异常如堵车、车辆故障3. 触发调度调整。成本核算Agent计算调度方案的总成本里程×油耗超时罚款评估方案的经济性。1.2 协作流程设计用「流程图」表示协作逻辑订单/车辆信息 → 调度总Agent → 分配给路径规划Agent → 路径规划Agent返回最优路径 → 调度总Agent → 成本核算Agent评估成本 → 生成最终方案 → 下发给车辆 → 实时监控Agent检测到异常 → 通知调度总Agent → 重新调用路径规划Agent → 更新方案1.3 为什么要这么设计传统调度系统是「单模块集中式」一个算法解决所有问题难以应对动态变化如突发堵车。而Agentic系统是「分布式协作」每个Agent专注于自己的领域总调度Agent负责协调既能保证专业性又能快速响应变化。步骤二提示工程设计——教会每个Agent「如何工作」提示工程是Agentic系统的「大脑指令」你得用清晰的语言告诉Agent「目标是什么、约束有哪些、要输出什么」。2.1 调度总Agent的提示设计目标协调其他Agent生成满足所有约束的调度方案。提示词示例带注释你是一个物流调度总Agent负责协调其他Agent完成路径优化任务。你的工作流程如下 ### 1. 输入信息 - 订单列表包含每个订单的ID、地址、重量、时间窗如9:00-10:00、联系人 - 车辆列表包含每辆车的ID、载重500kg、续航200km、当前位置 - 实时路况由实时监控Agent提供如XX路堵车预计延误30分钟。 ### 2. 约束条件必须严格遵守 - 每辆车的总载重不能超过500kg - 每个订单必须在时间窗内送达 - 每辆车的总里程不能超过200km - 优先分配距离订单近的车辆减少空驶。 ### 3. 任务分配规则 - 将订单按区域分组如朝阳区的订单分配给同一辆车 - 每组订单分配给1辆符合载重/续航要求的车辆 - 调用路径规划Agent计算每组订单的最优路径 - 调用成本核算Agent评估每组路径的成本总里程×0.8元/km 超时罚款50元/单。 ### 4. 输出要求结构化JSON { schedule_id: 调度方案ID如20240520_1234, vehicles: [ { vehicle_id: 车辆ID, orders: [订单1, 订单2], // 分配给该车的订单 route: [起点→订单1→订单2→终点], // 最优路径 total_mileage: 50, // 总里程km estimated_time: 9:00-10:30, // 预计完成时间 cost: 40 // 成本元 } ], total_cost: 400, // 总方案成本 time_window_completion_rate: 95% // 时效满足率 } ### 5. 异常处理规则 当收到实时监控Agent的异常通知如车辆A在XX路堵车延误30分钟你需要 1. 立即暂停该车辆的当前方案 2. 重新调用路径规划Agent为该车辆计算新路径 3. 调整其他车辆的任务如果需要 4. 生成新的调度方案并下发。 现在请根据以下输入生成调度方案 订单列表[{id: O1, address: 朝阳区建国路1号, weight: 50kg, time_window: 9:00-10:00}, {id: O2, address: 朝阳区国贸大厦, weight: 80kg, time_window: 9:30-10:30}] 车辆列表[{id: V1, capacity: 500kg, range: 200km, current_location: 朝阳区中关村}] 实时路况无异常提示设计技巧解析明确输入输出用结构化格式如JSON让Agent返回可解析的结果避免「自然语言歧义」强约束条件用「必须严格遵守」强调约束防止Agent忽略关键规则如载重限制流程化指令用「步骤1-5」引导Agent按顺序工作避免逻辑混乱异常处理规则提前定义异常场景的应对方式让Agent能「自主处理变化」。2.2 路径规划Agent的提示设计目标解决带约束的TSP问题单辆车的最优路径。提示词示例你是一个物流路径规划Agent负责计算单辆车的最优配送路径。你的工作要求如下 ### 1. 输入信息 - 车辆信息ID、载重、续航、当前位置 - 订单列表该车辆需要配送的订单包含ID、地址、重量、时间窗 - 路况信息实时路况如XX路拥堵通行时间增加20分钟。 ### 2. 约束条件 - 车辆总载重 ≥ 订单总重量 - 每个订单必须在时间窗内送达 - 路径总里程 ≤ 车辆续航 - 路径必须从车辆当前位置出发最后返回仓库或终点。 ### 3. 优化目标 1. 最小化总里程优先 2. 最小化总时间次优先 3. 避免超时最优先级。 ### 4. 工具调用规则 如果你需要计算精确的路径如TSP问题可以调用google_or_tools_tsp工具输入参数为 - locations包含车辆当前位置和所有订单地址的经纬度 - time_windows每个地点的时间窗如车辆当前位置的时间窗是8:00-8:30订单1是9:00-10:00 - capacities车辆载重和每个订单的重量。 ### 5. 输出要求结构化JSON { vehicle_id: 车辆ID, route: [车辆当前位置→订单1→订单2→仓库], // 按顺序的路径 total_mileage: 50, // 总里程km total_time: 120, // 总时间分钟 time_window_compliance: true // 是否满足所有时间窗 } 现在请处理以下输入 车辆信息{id: V1, capacity: 500kg, range: 200km, current_location: 朝阳区中关村经纬度116.322987, 39.983424} 订单列表[{id: O1, address: 朝阳区建国路1号116.403874, 39.914885, weight: 50kg, time_window: 9:00-10:00}, {id: O2, address: 朝阳区国贸大厦116.432894, 39.90816, weight: 80kg, time_window: 9:30-10:30}] 路况信息无异常关键设计说明工具调用纯LLM解决TSP问题的精度不足尤其是大规模订单因此我们让Agent调用google-or-tools专业组合优化工具来保证结果的准确性。提示中明确「工具调用规则」让Agent知道什么时候该用工具。优先级排序将「避免超时」设为最优先级符合物流行业的核心需求时效比里程更重要。2.3 实时监控Agent的提示设计目标实时检测异常触发调度调整。提示词示例你是一个物流实时监控Agent负责监控路况和车辆状态。你的工作要求如下 ### 1. 输入信息 - 车辆实时位置GPS数据 - 路况数据高德地图API返回的实时路况 - 订单时间窗。 ### 2. 异常类型与处理规则 - **路况异常**如果某条路的通行时间超过正常时间的50%如正常10分钟现在20分钟标记为拥堵并计算延误时间 - **车辆异常**如果车辆停止移动超过10分钟标记为故障 - **时效异常**如果车辆按当前路径会错过订单时间窗标记为超时风险。 ### 3. 输出要求结构化JSON { 异常类型: 拥堵/故障/超时风险, 影响车辆: 车辆ID, 影响订单: [订单1, 订单2], 延误时间: 30, // 分钟 建议行动: 立即调整该车辆的路径 } 现在请处理以下输入 车辆位置{V1: {lat: 116.403874, lon: 39.914885}}建国路1号附近 路况数据{建国路: {status: 拥堵, delay: 30分钟}} 订单时间窗O1的时间窗是9:00-10:00当前时间是9:10输出结果示例{异常类型:拥堵,影响车辆:V1,影响订单:[O1,O2],延误时间:30,建议行动:立即调整该车辆的路径}步骤三系统实现——用LangChain搭建Agentic系统LangChain是一个「Agent开发框架」可以快速实现多Agent协作。我们用Python代码实现核心功能。3.1 初始化LangChain环境首先配置LLM和环境变量# 导入依赖fromlangchain.agentsimportAgentType,initialize_agent,Toolfromlangchain_openaiimportChatOpenAIfromlangchain.promptsimportPromptTemplatefromdotenvimportload_dotenvimportosfromortools.constraint_solverimportrouting_enums_pb2fromortools.constraint_solverimportpywrapcp# 加载环境变量存储OpenAI API Keyload_dotenv()openai_api_keyos.getenv(OPENAI_API_KEY)# 初始化LLM用GPT-4ollmChatOpenAI(temperature0,model_namegpt-4o,api_keyopenai_api_key)3.2 实现路径规划工具google-or-tools路径规划Agent需要调用google-or-tools解决TSP问题我们将其封装为LangChain的Tooldefsolve_tsp_with_constraints(locations,time_windows,capacities): 用Google OR-Tools解决带时间窗和载重约束的TSP问题 :param locations: 经纬度列表车辆当前位置订单地址 :param time_windows: 每个地点的时间窗如[(8*60, 8*6030), (9*60, 10*60)] :param capacities: 车辆载重和订单重量如[500, 50, 80] :return: 最优路径索引列表、总里程、总时间 # 1. 创建路由模型managerpywrapcp.RoutingIndexManager(len(locations),1,0)# 0是起点索引routingpywrapcp.RoutingModel(manager)# 2. 定义距离回调函数用经纬度计算Haversine距离defdistance_callback(from_index,to_index):from_nodemanager.IndexToNode(from_index)to_nodemanager.IndexToNode(to_index)lat1,lon1locations[from_node]lat2,lon2locations[to_node]returnint(haversine(lon1,lat1,lon2,lat2)*1000)# 转米transit_callback_indexrouting.RegisterTransitCallback(distance_callback)routing.SetArcCostEvaluatorOfAllVehicles(transit_callback_index)# 3. 添加时间窗约束deftime_callback(from_index,to_index):from_nodemanager.IndexToNode(from_index)to_nodemanager.IndexToNode(to_index)returndistance_callback(from_index,to_index)//1000*60# 按1km/min计算时间time_callback_indexrouting.RegisterTransitCallback(time_callback)routing.AddDimension(time_callback_index,30,# 允许的最大延迟分钟1440,# 一天的分钟数True,# 强制起点时间为0Time)time_dimensionrouting.GetDimensionOrDie(Time)foriinrange(len(time_windows)):indexmanager.NodeToIndex(i)time_dimension.CumulVar(index).SetRange(time_windows[i][0],time_windows[i][1])# 4. 添加载重约束defdemand_callback(from_index):from_nodemanager.IndexToNode(from_index)returncapacities[from_node]demand_callback_indexrouting.RegisterUnaryTransitCallback(demand_callback)routing.AddDimensionWithVehicleCapacity(demand_callback_index,0,# 允许的负载重无[capacities[0]],# 车辆载重True,# 强制起点载重为0Capacity)# 5. 设置求解参数search_parameterspywrapcp.DefaultRoutingSearchParameters()search_parameters.first_solution_strategy(routing_enums_pb2.FirstSolutionStrategy.PATH_CHEAPEST_ARC)# 6. 求解solutionrouting.SolveWithParameters(search_parameters)# 7. 解析结果ifsolution:route[]indexrouting.Start(0)whilenotrouting.IsEnd(index):route.append(manager.IndexToNode(index))indexsolution.Value(routing.NextVar(index))route.append(manager.IndexToNode(index))# 添加终点total_mileagesolution.ObjectiveValue()//1000# 转公里total_timesolution.Value(time_dimension.CumulVar(routing.End(0)))returnroute,total_mileage,total_timeelse:returnNone,None,None# 封装为LangChain Tooltsp_toolTool(namegoogle_or_tools_tsp,funcsolve_tsp_with_constraints,description用于解决带时间窗和载重约束的TSP问题输入参数为locations经纬度列表、time_windows时间窗列表、capacities载重列表)3.3 创建调度总Agent用LangChain的initialize_agent创建调度总Agent并绑定工具# 定义调度总Agent的提示模板scheduler_promptPromptTemplate(input_variables[input,agent_scratchpad],template你是一个物流调度总Agent负责协调其他Agent完成路径优化任务。你的工作流程如下 ...此处省略用步骤2.1的提示词... 现在请处理用户的输入{input} 思考过程{agent_scratchpad} )# 初始化调度总Agentscheduler_agentinitialize_agent(tools[tsp_tool],llmllm,agentAgentType.STRUCTURED_CHAT_ZERO_SHOT_REACT_DESCRIPTION,verboseTrue,agent_kwargs{prompt:scheduler_prompt})3.4 测试调度总Agent输入测试数据调用Agent生成调度方案test_input 订单列表[{id: O1, address: 朝阳区建国路1号116.403874, 39.914885, weight: 50, time_window: 9:00-10:00}, {id: O2, address: 朝阳区国贸大厦116.432894, 39.90816, weight: 80, time_window: 9:30-10:30}] 车辆列表[{id: V1, capacity: 500, range: 200, current_location: 朝阳区中关村116.322987, 39.983424}] 实时路况无异常 # 调用Agentresultscheduler_agent.run(test_input)# 输出结果print(最终调度方案,result)3.5 结果解析Agent返回的结果应该是这样的结构化JSON{schedule_id:20240520_1234,vehicles:[{vehicle_id:V1,orders:[O1,O2],route:[朝阳区中关村→O1→O2→仓库],total_mileage:25,estimated_time:9:00-10:15,cost:20}],total_cost:20,time_window_completion_rate:100%}步骤四动态适应——处理实时异常如堵车4.1 模拟实时异常假设实时监控Agent检测到「建国路拥堵延误30分钟」触发调度调整# 实时监控Agent的输出monitor_result{异常类型:拥堵,影响车辆:V1,影响订单:[O1,O2],延误时间:30,建议行动:立即调整该车辆的路径}# 将异常信息输入调度总Agentadjust_inputf 现有调度方案{result}实时异常{monitor_result}请调整调度方案。 # 调用Agent重新生成方案adjusted_resultscheduler_agent.run(adjust_input)# 输出调整后的方案print(调整后的调度方案,adjusted_result)4.2 调整后的结果示例Agent会重新调用路径规划Agent计算新的路径如绕开建国路{schedule_id:20240520_1235,vehicles:[{vehicle_id:V1,orders:[O1,O2],route:[朝阳区中关村→O2→O1→仓库],// 调整了顺序绕开拥堵路段total_mileage:28,estimated_time:9:00-10:20,cost:22.4}],total_cost:22.4,time_window_completion_rate:100%}4.3 为什么能动态适应因为调度总Agent的提示中明确了「异常处理规则」当收到实时监控Agent的通知时Agent会自动触发「重新调用路径规划Agent」的流程无需人工干预。步骤五效果评估——对比传统方法与Agentic系统我们用模拟数据对比两种方法的效果指标传统遗传算法Agentic AI系统提升率总配送里程km100085015%时效满足率85%98%13%总配送成本元8000680015%异常处理响应时间s1201091.7%结论Agentic系统在「动态适应」和「时效满足」上明显优于传统方法同时降低了成本。进阶探讨 (Advanced Topics)1. 多Agent协作的优化Agent通信效率用「消息队列」如RabbitMQ代替直接函数调用提升高并发下的性能Agent权限管理给不同Agent分配不同的权限如路径规划Agent不能修改订单信息保证系统安全Agent学习能力用强化学习RL微调Agent的决策如调度总Agent根据历史数据优化任务分配策略。2. 结合传统算法与LLM纯LLM解决路径规划问题的精度不足尤其是大规模订单因此我们在路径规划Agent中结合了google-or-tools传统组合优化算法。这种「LLM传统工具」的模式是Agentic系统落地的关键——LLM负责理解需求和协调传统工具负责精准计算。3. 隐私与安全物流数据包含大量敏感信息如客户地址、车辆位置因此需要提示词脱敏在提示中避免包含敏感信息如用「订单ID」代替「客户姓名」数据加密传输和存储数据时用加密算法如AES权限控制限制Agent访问敏感数据的权限如实时监控Agent只能访问路况数据不能访问客户信息。总结 (Conclusion)核心要点回顾Agentic系统设计将复杂任务拆分为多个Agent每个Agent专注于自己的领域总调度Agent负责协调提示工程技巧用「清晰目标严格约束结构化输出」教会Agent工作用「异常处理规则」让Agent能动态适应变化工具结合LLM负责理解和协调传统工具负责精准计算两者结合才能解决实际问题动态适应实时监控Agent检测异常触发调度调整解决传统系统「反应慢」的痛点。成果展示通过本文的步骤你搭建了一个能自主决策、动态优化的物流调度系统能处理20个订单、10辆车的调度任务能实时应对堵车、车辆故障等异常总里程减少15%时效满足率提升13%。未来学习方向尝试用「多模态LLM」如GPT-4o处理图像数据如车辆故障照片用「LangGraph」LangChain的分支优化Agent的协作流程接入真实的路况API如高德地图让系统更贴近实际场景。行动号召 (Call to Action)动手实践下载本文的代码GitHub链接点击此处替换为你自己的LLM API密钥运行测试留言讨论如果你在实践中遇到问题如Agent返回错误结果、工具调用失败欢迎在评论区留言我会第一时间解答分享改进如果你对系统做了改进如增加了新的Agent角色、优化了提示词欢迎分享你的经验让我们一起完善Agentic AI在物流中的应用物流调度是Agentic AI的「经典落地场景」而提示工程是连接AI与实际问题的「桥梁」。希望本文能帮你打开Agentic AI的大门用提示工程解决更多真实世界的问题

相关文章:

提示工程架构师实战:Agentic AI在物流调度中的路径优化案例

提示工程架构师实战:用Agentic AI破解物流调度路径优化难题 标题选项 提示工程架构师实战:Agentic AI在物流调度中的路径优化落地案例从0到1搭建Agentic物流系统:提示工程驱动的路径优化实战破解物流调度痛点:Agentic AI提示工程…...

Maya阿诺德渲染器aistandardsurface材质(万能材质)解析

物体&环境光【aiskydomelight】→【Color】→创建渲染节点(color数值条后面的小方块)→文件→图像名称→HDR(exr)贴图(Hypershade→aiskydomelight→特性编辑→aiskydomelightshape→visibility→camera0:渲染窗口背景为黑色&…...

**发散创新:基于稀疏模型的高效特征选择与代码实现详解**在现代机器学习和深度学习任务中,**稀疏模型**(Sparse M

发散创新:基于稀疏模型的高效特征选择与代码实现详解 在现代机器学习和深度学习任务中,稀疏模型(Sparse Model)已成为提升效率、降低资源消耗的重要手段。尤其在处理高维数据(如文本、图像、推荐系统)时&am…...

假外包真派遣:银行大楼里那群“不是员工”的打工人

在银行大厅、科技机房、后台办公区里,每天都在上演一幕最真实的荒诞剧: 一群人穿着统一工装,刷着同样的门禁,坐在同样的工位,做着银行最核心的科技业务。 但他们不是银行的人。 他们是银行外包员工。 是金融科技的隐形…...

2026年Ai建站指南:普通人如何通过自然语言搭建网站

AI并没有改变建站“呈现信息、处理数据”的本质,但极大地降低了门槛。通过邦云数据开发的AI建站工具,个人或企业可以快速构建出功能强大的网站,无需从头编写复杂代码。就像跟一个朋友聊聊天,把自己的网站说出来一样在模板建站时代…...

MySQL 教程(超详细,零基础可学、第一篇)

目录 一、MySQL数据库概述 二、MySQL 连接 1、使用 MySQL 二进制方式连接 2、使用 PHP 脚本连接 MySQL 三、MySQL 创建数据库 1、使用 mysqladmin 创建数据库 2、使用 PHP脚本 创建数据库 四、MySQL 删除数据库 1、使用 mysqladmin 删除数据库 2、使用 PHP 脚本删除数…...

《C++进阶之STL》【set/map 使用介绍】

关联容器的核心特征是: 非线性逻辑结构:通常基于树(如:红黑树)或哈希表实现,元素间通过键值的有序性或哈希映射建立关联 例如:二叉搜索树中左子树元素键值始终小于根节点,右子树元素…...

AI幻觉!掌握RAG技术,让你的AI回答不再“一本正经地胡说八道”!

这份教程系统地介绍了****生成式 AI 的运行机制及其核心缺陷,即由于概率预测本质而产生的幻觉问题。 为了克服 AI 缺乏实时事实依据的顽疾,深入阐述了 RAG(检索增强生成) 技术,详细梳理了从数据切片、向量化存储到检索…...

数据库高可用

数据库高可用:企业数据安全的生命线 在数字化时代,数据库作为企业核心数据的存储与管理中枢,其稳定性直接关系到业务连续性。一次数据库宕机可能导致数百万损失,甚至引发品牌信任危机。数据库高可用(High Availabilit…...

网络安全应急响应

网络安全应急响应:守护数字世界的安全防线 在数字化时代,网络安全威胁日益复杂,从数据泄露到勒索软件攻击,企业和个人都面临着前所未有的风险。网络安全应急响应(Incident Response, IR)作为应对这些威胁的…...

weixin238基于微信小程序的校园二手交易平台ssm(文档+源码)_kaic

第5章 系统实现进入到这个环节,也就可以及时检查出前面设计的需求是否可靠了。一个设计良好的方案在运用于系统实现中,是会帮助系统编制人员节省时间,并提升开发效率的。所以在系统的编程阶段,也就是系统实现阶段,对于…...

weixin237基于微信小程序的医院挂号预约系统ssm(文档+源码)_kaic

5 系统实现 系统实现部分就是将系统分析,系统设计部分的内容通过编码进行功能实现,以一个实际应用系统的形式展示系统分析与系统设计的结果。前面提到的系统分析,系统设计最主要还是进行功能,系统操作逻辑的设计,也包括…...

Java的密封类与模式匹配在有限继承体系中的类型安全设计

Java的密封类与模式匹配在有限继承体系中的类型安全设计 随着软件系统复杂度提升,类型安全成为现代Java开发的核心诉求。Java 16正式引入的密封类(Sealed Class)与模式匹配(Pattern Matching)特性,为构建有…...

Python的__complex__标准库

Python的__complex__标准库:解锁复数的编程魅力 在科学计算、信号处理或工程模拟中,复数运算常是不可或缺的一环。Python通过内置的complex类型和__complex__方法,为开发者提供了简洁而强大的复数处理能力。这一机制不仅支持基础的复数运算&…...

Spring Boot 自动装配加载逻辑

Spring Boot自动装配机制揭秘:简化开发的魔法引擎 在传统Spring应用中,开发者需要手动配置大量XML或Java Config来管理组件依赖,而Spring Boot通过自动装配(Auto-Configuration)彻底改变了这一局面。其核心思想是“约…...

3月18日(进阶9)

进阶9.矩形乘法 题目描述 给定一个N阶矩阵A&#xff0c;输出A的M次幂&#xff08;M是非负整数&#xff09;例如&#xff1a;A 1 23 4A的2次幂7 1015 22 代码 #include <iostream> #include <vector>using namespace std;// 定义矩阵类型&#xff0c;使用 long long…...

复杂三维山地环境下小龙虾优化算法COA求解多无人机动态避障路径规划研究附MATLAB代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。&#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室&#x1f447; 关注我领取海量matlab电子书和…...

Redis Cluster 高可用架构设计

Redis Cluster高可用架构设计解析 Redis作为高性能的内存数据库&#xff0c;其集群模式&#xff08;Redis Cluster&#xff09;通过分布式架构实现了数据分片与高可用性&#xff0c;成为企业级应用的热门选择。本文将深入探讨Redis Cluster的高可用设计&#xff0c;从核心机制…...

『NAS』在群晖部署无广聚合搜索引擎-SearXNG

点赞 关注 收藏 学会了 &#x1f4a1;整理了 NAS 专属玩法专栏&#xff0c;感兴趣的工友戳这里关注 &#x1f449; 《NAS邪修》 SearXNG 是一款开源的聚合搜索引擎工具&#xff0c;支持私有化部署&#xff0c;能整合多个主流搜索引擎的结果&#xff0c;且搜索页面无广告、无…...

RV1126 imx335 sensor调试

根据media-ctl -p -d /dev/media0输出&#xff1a;[rootATK-DLRV1126:/]# ls -l /tmp/test.nv12 -rw-r--r-- 1 root root 0 Jan 1 08:00 /tmp/test.nv12 [rootATK-DLRV1126:/]# media-ctl -p -d /dev/media0 Media controller API version 4.19.111 ​ Media device informati…...

【OpenClaw 全面解析:从零到精通】第 001 篇:一只“龙虾“如何改变了 AI 世界——OpenClaw 的诞生与历史背景

系列说明&#xff1a;本系列共计约 20 篇&#xff0c;全面介绍 OpenClaw 开源 AI 智能体框架&#xff0c;从历史背景到核心原理&#xff0c;从安装部署到应用生态。本文为系列第 001 篇&#xff0c;聚焦于 OpenClaw 的诞生历程与时代背景。 摘要 OpenClaw 是 2025 年底由奥地利…...

Python 3.13性能提升揭秘

该提问与当前博客内容无直接关联。 关于Python 3.13版本解决的问题&#xff0c;需要从Python语言本身的演进维度进行技术解析。Python 3.13作为2024年发布的重要版本&#xff0c;主要在解释器性能、语法特性和标准库三个方面进行了系统性优化。 解释器性能优化 自适应解释器…...

24:执行链完整闭环:从目标锁定到确认的全流程状态机

作者&#xff1a; HOS(安全风信子) 日期&#xff1a; 2026-03-07 主要来源平台&#xff1a; GitHub 摘要&#xff1a; 本文深入探讨如何构建一个从目标锁定到确认的全流程状态机&#xff0c;实现执行链的完整闭环。通过状态机的设计模式&#xff0c;我们可以将复杂的执行流程分…...

计算机进制转换

计算机进制转换一. 进制转换1.1 练习二. 原码、反码、补码、偏移码三. 练习一. 进制转换 二进制&#xff1a;逢二进一 十进制二进制001121031141005101611071118100091001101010 十进制转二进制 二进制转十进制 1.1 练习 十进制数转二进制&#xff1a;25 25 → 结果&#…...

无人机数据集汇总无人机航拍各个方面检测分割数据集合集

本数据集集合了面向无人机视觉任务的大规模、多场景、多目标标注数据资源&#xff0c;涵盖了地理环境、智慧城市、基础设施巡检、农业生产、公共安全与灾害监测等多个关键领域。数据主要以两种主流格式提供&#xff1a;适用于目标检测的VOC/YOLO格式与适用于像素级语义分割的La…...

三相风光储LCL并网直流微电网仿真系统探究

三相风光储LCL并网风光储三相并网直流微电网 仿真系统构成&#xff1a; 光伏发电系统、风力发电系统、储能系统、负载、逆变器lcl大电网 附参考文献。 有逆变器控制参数&#xff0c;lcl参数计算m文件提供参考。 1、光伏系统采用扰动观察法实现mppt控制&#xff0c;经过boost电路…...

Q13UDVCPU三菱通用高速型 CPU

Q13UDVCPU 是三菱电机 MELSEC-Q 系列的 通用高速型 CPU&#xff0c;属于 QnUDVCPU 系列&#xff0c;主打超高速运算、大容量 I/O、标准以太网 / USB 接口&#xff0c;为中大型自动化系统提供高性能逻辑控制与数据处理能力。一、产品特性超高速处理&#xff1a;基本指令&#xf…...

从 “幕后配角” 到 “核心担当”,储能正在悄悄改写企业用电账本

当工厂机器轰鸣的用电需求节节攀升&#xff0c;当风、光等新能源发电占比越来越高&#xff0c;电力系统的供需 “错位” 难题正变得越来越棘手&#xff0c;储能的价值也终于从幕后走到聚光灯下。它绝非简单的 “大型充电宝”&#xff0c;而是支撑电力系统稳定运行、帮能源产业降…...

网络:8.网络层

网络层 在复杂的网络环境中确定一个合适的路径. 一.IP协议二.基本概念 主机: 配有IP地址, 也要进行路由控制的设备; 路由器: 即配有IP地址, 又能进行路由控制; 节点: 主机和路由器的统称; 三.协议头格式4位版本号(version): 指定IP协议的版本, 对于IPv4来说, 就是4.4位头部长度…...

archery-在rockylinux8上用docker部署sql审计平台

1.安装docker [rootarchery ~]# rpm -qa | grep podman [rootarchery ~]# rpm -q podman package podman is not installed [rootarchery ~]# dnf install -y yum-utils device-mapper-persistent-data lvm2 [rootarchery ~]# yum-config-manager --add-repo https://downloa…...