电力系统可靠性评估MATLAB实现:蒙特卡洛模拟与LOLE/EENS指标解析
简介这是一份电力系统可靠性评估的MATLAB实现代码包面向电力工程专业学生、科研人员及需要开展可靠性分析的工程师提供从元件故障建模、概率计算到系统可靠性指标评估的完整编程示范。包内共20个文件以17个.m源码文件为主辅以2个.asv自动备份和1个readme.txt说明文档压缩包仅19KB轻量易用。已有3552人学习下载配套的readme给出了代码结构、执行步骤与注意事项代码涵盖可靠性模型构建、故障概率计算、负荷分配、状态估计及SAIFI/SAIDI/ASAI等关键指标求解还涉及MATLAB矩阵计算与算法优化技巧。通过学习这份代码读者既能理解电力系统可靠性评估的理论框架也能快速上手MATLAB在电力系统中的实际应用是一份理论结合实践的高性价比学习资料。1. 电力系统可靠性评估在算什么先搞清楚这包代码值不值得跑一份“电力系统可靠性评估(matlab实现)”的资源包里面通常是一组脚本加示例系统数据。可靠性评估和潮流计算不一样它不是在解某个确定性的方程而是在回答一组概率问题一年8760小时里由于机组随机停运、线路故障系统平均要砍多少负荷、停多久。评估结果以LOLE和EENS为核心指标是电源规划与网架改造方案比选的依据。这套方法对刚接触可靠性课题的研究生以及需要做供电可靠性分析的一线工程师都很有用。判断代码值不值得跑关键看它走的是哪条技术路线、覆盖哪些指标、能不能复现——这三件事搞清楚了剩下的就是改参数、调样本量。2. 评估方法二选一枚举法在哪个规模失效蒙特卡洛为什么是主角可靠性评估的数学引擎有两条路线几乎所有评估代码都会落在其中一条上解析枚举和随机模拟。选型不对代码在小系统上看着正常一放大规模就慢到没法用选对了评估精度和运行时间都能兼顾。这一章先说清楚两条路线的边界再给一套不读全部源码就能判断代码归属的速检方法。2.1 枚举法的状态空间增长曲线小系统精确规模一大就打表打到死解析法的思路是把系统里所有可能出现的元件状态组合全部列出来逐一计算概率和失负荷量最后累加。假设系统有n个二状态元件组合数是2的n次方。n等于10时有1024种组合MATLAB枚举一遍非常快n等于20时超过100万种开始吃力n等于30时约10亿种直接不可行。现实电网光发电机就不止30台所以枚举法通常只用来做小规模系统的精确计算或者作为蒙特卡洛仿真的校验基准。下面是一个三机系统的枚举主循环阅读别人枚举代码时可以把它当骨架参考%% 三机系统枚举全部状态计算LOLP gen [60, 0.010; ... % 容量MW, 强迫停运率FOR 100, 0.020; ... 120, 0.030]; peakLoad 200; % 峰值负荷MW ng size(gen, 1); nState 2^ng; % 总共8种组合 states zeros(nState, ng); for s 0:nState-1 states(s1, :) bitget(s, 1:ng); % 1表示运行0表示停运 end % 状态概率 各元件运行/停运概率的连乘 FOR gen(:, 2); stateProb prod(states .* (1-FOR) (1-states) .* FOR, 2); % 状态可用容量 运行机组的容量之和 stateCap states * gen(:, 1); % 失负荷概率是所有容量小于负荷的状态概率之和 LOLP_enum sum(stateProb(stateCap peakLoad)); fprintf(LOLP(枚举) %.4f\n, LOLP_enum);这里容易被绕进去的地方是bitget的返回序列我约定1表示该机组运行。stateProb每一行由该行各元件状态概率连乘得到比如第2位是1、其余为0对应概率就是(1-FOR2)*FOR1*FOR3。如果你拿到的代码做的是双层循环累加而不是prod连乘结果一样只是写法更工程化。枚举法最怕的是不做状态修剪把“无论如何也不会失负荷”的高容量状态也全算一遍这时可以按可用容量排序后提前跳出循环来优化。2.2 蒙特卡洛抽样的两种口味非序贯与序贯当系统规模超过枚举法能承受的数量级主流做法就切换成蒙特卡洛模拟。蒙特卡洛又分两派。非序贯抽样也叫状态抽样它把每个元件看成一个服从伯努利分布的随机变量用一次均匀随机数判断元件本次处于运行还是停运对每个采样状态计算失负荷量最后把指标做算术平均。这种方法实现简单、收敛快适合计算LOLP和EENS这类期望值指标。序贯抽样则按时间推进先抽样每个元件的无故障持续时间和修复时间再用事件序列合成系统状态时序。它的好处是保留了事件先后顺序能直接计算停电频率和平均持续时长这类与时间序列强相关的指标缺点是计算量和存储明显更大程序结构也更复杂。常见实现会维护一个“下一事件时间”列表每一步只处理最早发生状态切换的元件而不是每步重新抽样所有元件——这个特征可以用来快速识别代码类型。2.3 不用读完全部源码三个函数断面判断代码路线拿到不熟悉的评估代码从第一行读到最后一行的代价太高。我一般会先搜索脚本里的关键词三分钟判断路线。第一看主循环只要出现rand、randi配合for k 1:Nsim大概率是非序贯蒙特卡洛。第二看是否有exprnd、时间推进变量和事件排序这是序贯抽样的标志。第三看是否调用了nchoosek、dec2bin、bitget或嵌套循环枚举组合那基本是枚举法。还有一种信号是函数命名很多代码会在文件名里带seq、nonseq、enum后缀。我把这个速检法整理成一张判定表代码特征判定路线适用场景randfor k1:Nsim非序贯蒙特卡洛大规模系统、期望指标exprnd 时间推进变量序贯蒙特卡洛需要频率/持续时间指标nchoosek/bitget/ 枚举全组合解析枚举小规模系统、精确计算fmincon/linprog潮流约束优化发输电组合评估最后一行是可靠性评估里常见的扩展方向因为负荷削减往往被建模成最优削减问题这会在第5章展开。先把这张表存下来看任何代码包时第一步就是定位主循环和抽样函数。3. 搭一套最小可跑的蒙特卡洛评估数据矩阵、状态抽样、缺电统计就算不依赖别人给的包自己从零写一套非序贯蒙特卡洛评估也不过几百行。这一章的目标是让你能独立搭出最小可跑版本并且知道每个数是怎么算出来的为后续改代码打底。3.1 把发电机参数组织成矩阵容量、FOR与修复率的坐标系可靠性参数至少有三类容量单位是MW强迫停运率FOR是无量纲概率以及可选的修复时间单位是小时。在MATLAB里的常见做法是用一个ng x 3矩阵承载数据每一行是一台机组各列含义固定。%% 机组参数矩阵第1列容量(MW)第2列强迫停运率FOR gen [60, 0.010; ... 100, 0.020; ... 120, 0.030]; peakLoad 200; % 评估场景的峰值负荷为什么用矩阵不用结构体因为蒙特卡洛的随机数生成和矩阵运算都按列做gen(:, 2)可以直接参与比较和向量化运算。如果你手里的数据是Excel读进来的readmatrix读进来后建议立刻统一成这个约定。第三列如果放MTTR就要记得FOR与MTTR的关系是FOR MTTR/(MTTFMTTR)这个口径问题在避坑章节会专门讲。系统里若还有输电线路就再追加线路容量矩阵同样约定第1列为容量、第2列为FOR评估函数只认这两列。3.2 非序贯抽样的主循环一次抽样就是一次系统快照核心算法就是对每台机组生成一个均匀随机数与FOR比较得到运行状态然后累加可用容量算出当前快照的缺电功率。%% 非序贯蒙特卡洛估计LOLP、LOLE、EENS Nsim 50000; % 抽样次数越大方差越小 rng(2024); % 固定随机数种子结果可复现 loss zeros(Nsim, 1); % 预分配避免动态扩数组 ng size(gen, 1); for k 1:Nsim avail rand(ng, 1) gen(:, 2); % 1运行0停运 cap sum(gen(:, 1) .* avail); % 当前可用容量 loss(k) max(0, peakLoad - cap); % 缺电功率 end LOLP mean(loss 0); % 失负荷概率 LOLE LOLP * 8760; % 小时/年 EENS mean(loss) * 8760; % MWh/年 fprintf(LOLP%.4f\nLOLE%.2f h/yr\nEENS%.1f MWh/yr\n, LOLP, LOLE, EENS);这段代码有三个关键点。第一rand(ng,1)产生的是ng个相互独立的均匀随机数方向约定为“随机数大于FOR则可用”因为FOR本身是个很小的概率u FOR极大概率落在可用侧。第二loss 0是逻辑型数组mean对它取平均就等价于缺电概率这是MATLAB惯用法新手常在这里多写一层sum和除法结果也不错但没必要。第三EENS mean(loss) * 8760用的是“每个小时都承受峰值负荷”的简化假设工程里这偏保守下一节给出时序负荷的处理。3.3 把峰值负荷换成8760负荷时序指标量纲和运行时间一起变真实电网不是全年顶在峰值负荷上可靠性评估通常按8760个小时逐时统计。如果每个小时都做一次完整抽样代码会退化成双层循环运行时间很难接受。常见做法是把8760个负荷点聚合成K级负荷持续曲线每级负荷用对应小时数加权。%% 负荷持续曲线分K级避免8760小时全抽样 loadLevel [180, 190, 200]; % 各级负荷MW loadHours [5000, 2500, 1260]; % 对应小时数合计8760 LOLE 0; EENS 0; for i 1:length(loadLevel) L loadLevel(i); lossL zeros(Nsim, 1); for k 1:Nsim avail rand(ng, 1) gen(:, 2); cap sum(gen(:, 1) .* avail); lossL(k) max(0, L - cap); end LOLE LOLE mean(lossL 0) * loadHours(i); EENS EENS mean(lossL) * loadHours(i); end注意这里的单位换算每个负荷级别失负荷概率乘以该级别的小时数累加后LOLE自动变成小时/年EENS则始终保持MWh因为缺电功率的量纲是MW乘以小时得到MWh。如果直接把主循环里的peakLoad换成逐时负荷序列是更精细的做法但抽样量必须分配到每个负荷点才能保证精度。我一般会先用分级负荷跑通全流程确认指标不再异常跳变后再决定要不要升级成逐时抽样这个“先分级、再逐时”的顺序能省大量调试时间。3.4 把评估核心封装成函数参数入口和返回值这么设计能跑通的脚本要变成可复用的工具下一步是封装成函数。我习惯的参数入口是机组参数矩阵、负荷曲线数组、抽样次数、随机数种子。返回值则是结构体把LOLP、LOLE、EENS放在一起。function result nonSeqReliability(gen, loadLevel, loadHours, Nsim, seed) % 非序贯蒙特卡洛可靠性评估 % gen: ng行2列[容量MW, FOR] % loadLevel: K个负荷等级MW % loadHours: K个等级对应小时数 % Nsim: 每个负荷等级的抽样次数 % seed: 随机数种子 rng(seed); LOLE 0; EENS 0; for i 1:length(loadLevel) loss zeros(Nsim, 1); for k 1:Nsim avail rand(size(gen,1), 1) gen(:,2); cap sum(gen(:,1) .* avail); loss(k) max(0, loadLevel(i) - cap); end LOLE LOLE mean(loss 0) * loadHours(i); EENS EENS mean(loss) * loadHours(i); end result.LOLE LOLE; result.EENS EENS; result.LOLP LOLE / sum(loadHours); end函数式封装的好处是参数一目了然换系统数据、换负荷曲线都只改入口。这里的seed参数很关键写死在函数里不方便多次对比暴露出来之后你可以在外层循环里用不同种子做多次运行观察指标的波动范围。4. 指标口径决定结论可信度LOLE、EENS与频率类指标怎么取舍可靠性指标不是选得越多越好选错口径会让同一个系统得出方向相反的结论。这一章把报告里最常见的几个指标讲透再看哪些指标必须切换到序贯仿真才能得到。4.1 LOLP与LOLE概率值怎么折算成年小时数LOLP是某一次系统状态抽样中发生失负荷的概率是个无量纲的比值LOLE则是把它折算到一年的小时数。若负荷按年峰值且每小时独立抽样LOLE等于LOLP乘以8760。这两个指标是发电可靠性领域的标配但“一年8760小时”在非序贯抽样里只是一种折算约定不代表系统真的会连续缺失8760小时乘以LOLP这么久。做方案对比时LOLE差0.1小时/年在统计噪声范围内可能完全没区别所以报告里必须同时给出抽样误差边界。常见做法是把多次重复运行的标准差也列出来或者使用第5章里的变异系数判据告诉别人这个0.1是真实差异还是噪声。4.2 EENS缺电量期望的单位陷阱EENS衡量的是“缺了多少电量”单位是MWh每年。它比LOLE更直观也是经济性评估的输入量规划人员可以把EENS乘以单位缺电成本估算可靠性改善带来的经济收益。单位是这个指标最容易翻车的地方很多代码把每个小时的缺电功率直接累加不除以抽样次数结果虚高好几个数量级。正确做法是每个负荷级别下的缺电功率期望乘以对应小时数再累加缺电功率量纲是MW乘以小时才变成MWh。如果你看到结果里EENS大得离谱先检查是不是忘除了Nsim。4.3 频率与持续时间指标只有序贯抽样才能给出SAIFI系统平均停电频率、SAIDI系统平均停电持续时间等指标在配电可靠性评估里很常见统计依赖相邻停电事件之间的时间间隔和停电持续时间本身。非序贯抽样各次抽样彼此独立没有时间轴上的先后关系严格来说算不出频率类指标。如果手里的代码基于非序贯抽样却硬要输出SAIFI通常做法是把每个抽样点映射成固定时间步长再近似但这只是过渡严格的做法还是得回到序贯抽样。下面是一台机组序贯抽样的小片段展示“状态持续时间”怎么产生%% 单机组两状态序贯抽样示意 rng(42); MTTF 4000; % 平均无故障小时 MTTR 40; % 平均修复小时 t 0; up true; simDur 100000; % 模拟10万小时 eventDur []; while t simDur dt exprnd(up * MTTF (1-up) * MTTR); % 当前状态持续时间 eventDur [eventDur, dt]; t t dt; up ~up; % 切换状态 end代码里up * MTTF (1-up) * MTTR是在运行态取MTTF、停运态取MTTR的紧凑写法等价于if分支。exprnd生成指数分布随机数表示元件在某一状态的平均持续时间。这个片段很基础但它能解释为什么序贯抽样的循环总会看到两个变量一个记录当前状态一个记录模拟时间。扩展成多机系统时需要维护所有元件的下一事件时刻表复杂度明显上升这也是不少评估包只实现非序贯抽样的原因只在确需频率指标时才补序贯模块。三类指标适用的场景可以列成一张表指标物理含义单位需要的抽样方式LOLP失负荷概率无非序贯即可LOLE年失负荷期望小时小时/年非序贯折算EENS年缺供电量期望MWh/年非序贯即可SAIFI系统平均停电频率次/户·年序贯SAIDI系统平均停电持续时间小时/户·年序贯5. 评估结果不准的六个翻车点收敛噪声、参数口径与网络约束这一章是实打实的踩坑记录。每个问题都按“现象—原因—解决”展开对照你自己的代码排查。5.1 LOLE两次运行差一倍蒙特卡洛收敛性判据没做现象同一个数据文件昨天跑LOLE是3.2小时每年今天变成4.5小时每年重新运行脚本又变一个数。原因非序贯蒙特卡洛依赖随机数抽样次数不够时统计噪声很大而LOLE本身是一个小概率事件的期望相对波动更明显。解决一是固定随机数种子二是提高抽样次数三是在结果里带上变异系数。常用的判据是要求LOLP估计值的变异系数小于0.02beta_LOLE std(loss 0) / sqrt(Nsim) / (LOLP eps); if beta_LOLE 0.02 warning(抽样量不足LOLP变异系数%.3f, beta_LOLE); endeps用来防止LOLP为0时除零。实际调试时我会先用1万次抽样快速验证程序结构再用5万次以上出正式结果正式跑之前固定好种子并把种子号记进结果文件名这样别人才能复现你的数字。5.2 把故障率当成强迫停运率单位口径全乱现象数据表里写的是“每台机组每年故障0.5次”代码参数列名却叫FOR于是直接填了0.5。结果评估出来的系统可靠性严重异常有时甚至算出每小时都在停电。原因FOR是长期停运概率等于MTTR/(MTTFMTTR)和故障率λ不是一回事。数据给的是λ等于0.5次每年、平均修复时间10小时正确的FOR约为10/(8760/0.510)约等于0.00114而不是0.5。解决在参数表头部写明“FOR无量纲”不要用“故障率”这种有歧义的叫法能写预处理函数做单位换算更好。5.3 用峰值负荷算全年LOLE整体偏高现象报告的LOLE数值远高于公开渠道公布的同类系统可靠性水平。原因整个8760小时都用峰值负荷去评估忽略了绝大多数时间负荷远低于峰值失负荷概率被严重放大。解决把负荷降成持续曲线只保留峰荷附近的几个负荷点比如95%峰值以上的几百小时单独评估其余时间默认不失负荷。要做更细的评估就直接加载8760时序曲线小系统上完全可行大系统再考虑分块抽样。5.4 抽样矩阵一次性建太大内存先崩了现象系统500台机组、抽样数100万写成U rand(500, 1000000)后报Out of memory。原因这个矩阵要占约4GB内存double类型没法稀疏。解决分块抽样每次只抽10万列用累积变量统计Nsim 1000000; chunk 100000; % 每次只抽10万次 LOLE_sum 0; for idx 1:chunk:Nsim n min(chunk, Nsim - idx 1); U rand(ng, n); loss max(0, peakLoad - sum(gen(:,1) .* (U gen(:,2)), 1)); LOLE_sum LOLE_sum sum(loss 0); end LOLP LOLE_sum / Nsim;这样每次分配几MB峰值占用小两个数量级结果与一次性抽样完全等价。注意sum(...,1)输出的是1×n行向量loss 0的逻辑值求和就是失负荷次数最后除以总抽样数。5.5 只比总容量、不管输电约束评估结果过度乐观现象两区域间只有一条500MW联络线区域A本地负荷600MW、本地电源却只有300MW系统总容量明明够评估却显示不失负荷。原因评估代码把失负荷判断简化成了“全网可用总容量大于全网负荷”没有检查区域间的输电断面。解决在状态抽样后补一个最优负荷削减计算把最小削减量建模成线性规划或者先做一个简化版给评估函数加一个“可用联络容量”参数区域失负荷量取本地缺额与可输送盈余的较小值。后者虽然粗略但能避免最离谱的乐观结论。6. 让评估结论经得起追问公共随机数、锚定校验与结果落盘可靠性评估的结论要拿去支撑决策至少要经得起三句追问随机数是不是固定了误差边界是多少别人能不能复现出来这一章讲我惯用的三个手段。6.1 用公共随机数让不同方案之间的差异真正暴露比较两个规划方案时如果各自独立抽样LOLE差值会叠加两套随机噪声真实差异很容易被淹没。公共随机数的做法是先抽样一次随机矩阵让所有方案共用这样随机噪声在差值里基本抵消。Nsim 50000; rng(7); U rand(ng, Nsim); % 公共随机矩阵 for plan 1:2 if plan 1 genPlan gen; % 原方案 else genPlan genNew; % 增加一台机组后的方案 end lossPlan max(0, peakLoad - sum(genPlan(:,1) .* (U genPlan(:,2)), 1)); LOLE(plan) mean(lossPlan 0) * 8760; end两个方案机组数和FOR不同但共用同一组U相当于每次抽样面对的随机事件完全同步。这个方法既能用于蒙特卡洛也适用于多个改造方案的批量比选。缺点是两个方案机组数不一致时需要把随机矩阵扩到最大机组数少的那个方案多出来的行保持无用状态即可。6.2 用经典公开算例做锚定校验没有标准答案的评估程序算不上可靠。我每写一个新的评估代码都会先用一个极小算例做理论核对再用公开标准算例做锚定。做法是把标准算例里的机组容量、FOR、负荷曲线喂进代码看输出的LOLE和EENS是否落在该算例公认结果附近。偏差大就先查FOR与失效率是否混用只差几个百分点再查抽样数和收敛判据。这个步骤虽然花时间但能把“自己觉得自己写对了”变成“别人和我跑出来一致”。6.3 把种子、样本数、数据版本一起落盘被同事或评审问到“这个LOLE怎么来的”时最大的后悔药就是保存完整复现信息。我在脚本末尾统一做三件事打印收敛变异系数、保存随机数状态、把关键参数写进结果文件rngSave rng; % 保存当前随机数状态 save(rel_result.mat, LOLE, EENS, Nsim, rngSave, ... gen, loadLevel, caseTag);参数里的caseTag是场景标签比如“基准方案_2024”避免多个方案文件互相覆盖。有这个习惯后任何人拿着一份LOLE数字来找你你都能在几分钟内复原出完全一致的结果如果只存一个最终数值中间某个参数被改掉这个数字就成了孤证。可靠性评估真正的难点不在MATLAB语法而在每一步的口径选择枚举还是抽样、峰荷还是时序、独立抽样还是公共随机数。这些选择决定了结果能不能站得住脚。我每跑一套数据都会先记下种子、样本数和变异系数再谈结论这个习惯挡掉了不少返工希望帮到你。本文还有配套的精品资源点击获取

相关新闻

工业智能体入门:从大语言模型到设备预测性维护Demo全解析

工业智能体入门:从大语言模型到设备预测性维护Demo全解析

很多程序员朋友私下问我:大语言模型都火成这样了,怎么我每天写的还是 if-else?尤其是有工业背景的,厂里老班长凭耳朵一听就知道设备不对劲,我们的系统却只会按阈值报警。这个“老师傅经验”和“机器智能”之间的缺口&a…

2026/10/14 20:00:08 阅读更多 →
XGBoost从原理到实战:结构化数据首选算法的调参指南

XGBoost从原理到实战:结构化数据首选算法的调参指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 19:59:07 阅读更多 →
傅里叶级数本质:函数的频域听诊器与工程分解法

傅里叶级数本质:函数的频域听诊器与工程分解法

1. 这不是“背公式”的章节,而是理解函数“听诊器”的起点很多人翻开《数学分析》第15章,看到傅里叶级数四个字,第一反应是:又要记一堆三角函数积分、又要算a₀、aₙ、bₙ、又要判断收敛性……然后默默合上书,转头去刷…

2026/10/14 19:59:07 阅读更多 →

最新新闻

yolov8-face 核心算子全解析:NMS、边界框格式转换与掩码处理的源码级指南

yolov8-face 核心算子全解析:NMS、边界框格式转换与掩码处理的源码级指南

人工智能计算机视觉深度学习 【免费下载链接】yolov8-face yolov8 face detection with landmark 项目地址: https://gitcode.com/gh_mirrors/yo/yolov8-face 点击查看 免费下载 本文是 ops.md 参考文档的深度展开,以 ultralytics/yolo/utils/ops.py 为…

2026/10/14 20:49:14 阅读更多 →
自学嵌入式第二天(C语言篇——数据类型)

自学嵌入式第二天(C语言篇——数据类型)

琐碎的敲代码内功。(以为很简单 ,结果全是坑)1.C语言提供的数据类型2.整数类型常量:在程序运行过程中,其值不能被改变的量变量:在程序运行过程中,其值能被改变的量(1)整型…

2026/10/14 20:49:14 阅读更多 →
openJiuwen 记忆引擎基础模型:MemInfo 单条记忆信息结构全解

openJiuwen 记忆引擎基础模型:MemInfo 单条记忆信息结构全解

人工智能AI AgentAgent 框架工具调用Agent 工作流RAGMCP Clients强化学习 【免费下载链接】agent-core-java openJiuwen agent core Java是 openJiuwen Core的 Java版本,提供AI Agent开发、运行、调优与演进相关的全套SDK能力。 项目地址: https://gitco…

2026/10/14 20:49:14 阅读更多 →
模拟退火求解二维装箱问题:原理、实现与工程调优

模拟退火求解二维装箱问题:原理、实现与工程调优

模拟退火算法求解装箱问题,我第一次真正上手,是在一个托盘排样项目里。需求方只说了一句话:把尺寸不一的纸箱尽量多地放进托盘,允许90度旋转,不许压坏。我当时觉得,这就是矩形排样,先求个面积下…

2026/10/14 20:49:14 阅读更多 →
51单片机DHT11温湿度采集实战:从仿真到实物的完整拆解

51单片机DHT11温湿度采集实战:从仿真到实物的完整拆解

简介:一套以51单片机为核心的温湿度采集监控完整工程,面向电子爱好者、嵌入式初学者及课程设计学生。资料基于Keil平台,由C语言编写,实现温湿度采集(SHT10传感器)、日历时钟(DS1302)…

2026/10/14 20:49:14 阅读更多 →
Towards Automated Regulatory Compliance Verification in Financial Auditing with Large Language Mo...

Towards Automated Regulatory Compliance Verification in Financial Auditing with Large Language Mo...

文章主要内容总结 本文聚焦于利用大型语言模型(LLMs)实现财务审计中监管合规性的自动验证,旨在解决传统审计中人工验证合规性的低效问题。研究对比了开源LLMs(如Llama-2系列)与专有LLMs(如OpenAI的GPT系列)在合规性检测中的性能,使用了普华永道(PwC)提供的两个自定义…

2026/10/14 20:48:13 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →