单目标应用:基于沙丁鱼优化算法(Sardine optimization algorithm,SOA)的微电网优化调度MATLAB
一、沙丁鱼优化算法
沙丁鱼优化算法(Sardine optimization algorithm,SOA)由Zhang HongGuang等人于2023年提出,该算法模拟沙丁鱼的生存策略,具有搜索能力强,求解精度高等特点。
沙丁鱼主要以浮游生物为食,这些生物包括细菌、腔肠动物、软体动物、原生动物、十足目、幼小藤壶、鱼卵、甲藻、桡足类等。沙丁鱼的季节饵料组成会随着水文条件的变化而改变。在上升流剧烈的时期,饵料组成以浮游植物为主;而在上升流微弱的时期,饵料组成则以浮游动物为主。沙丁鱼是一种滤食动物,它们通过鳃过滤海水,捕获通过鳃的浮游生物。此外,沙丁鱼拥有一双透镜眼,这极大地提高了它们的视力和图像亮度,因此它们能够利用视力追踪在水中过滤的猎物。除了像大多数鱼类一样借助快速的游动逃避捕食者外,沙丁鱼还利用群体行为来躲避捕猎者。例如,当遇到捕食沙丁鱼的海豚时,沙丁鱼会聚成大群来对抗海豚的捕食。在没有外部威胁或障碍物时,鱼群通常会聚成接近球形的形态,以便协同躲避。



参考文献:
[1]Zhang, H., Tang, M., Liu, Y. et al. Sardine Optimization Algorithm with Agile Locality and Globality Strategies for Real Optimization Problems. Arab J Sci Eng 48, 9787–9825 (2023). Sardine Optimization Algorithm with Agile Locality and Globality Strategies for Real Optimization Problems | SpringerLink
二、微网系统运行优化模型
微电网优化模型介绍:
微电网多目标优化调度模型简介_IT猿手的博客-CSDN博客
三、SOA求解微电网优化
(1)部分代码
close all;
clear ;
clc;
global P_load; %电负荷
global WT;%风电
global PV;%光伏
%%
TestProblem=1;
[lb,ub,dim,fobj] = GetFunInfo(TestProblem);
SearchAgents_no=50; % Number of search agents
Max_iteration=50; % Maximum number of iterations
[Xbest,Best_score,Convergence_curve]=SOA(SearchAgents_no,Max_iteration,lb,ub,dim,fobj);%% 画结果图
figure(1)
semilogy(Convergence_curve,'b-','linewidth',2);
legend('SOA');
xlabel('迭代次数')
ylabel('运行成本与环境保护成本之和')
(2)部分结果





四、完整MATLAB代码
相关文章:
单目标应用:基于沙丁鱼优化算法(Sardine optimization algorithm,SOA)的微电网优化调度MATLAB
一、沙丁鱼优化算法 沙丁鱼优化算法(Sardine optimization algorithm,SOA)由Zhang HongGuang等人于2023年提出,该算法模拟沙丁鱼的生存策略,具有搜索能力强,求解精度高等特点。 沙丁鱼主要以浮游生物为食,这些生物包括细菌、腔肠…...
基于Halo搭建个人博客
准备 云服务器 安装Docker 开启8090端口 步骤 拉取Halo镜像 docker pull halohub/halo:2.1.0 制作容器并启动 docker run -it -d --name halo -p 8090:8090 -v ~/.halo2:/root/.halo2 halohub/halo:2.1.0 --halo.external-urlhttp://服务器ip:8090/ --halo.security.in…...
DPDK系列之三十一DPDK的并行机制简介
一、并行机制 什么是并行机制?这个很多开发者的眼中,其实是模糊的。可能说起来头头是道,但是细一查究竟,发现都是飘在空中的东西。在前面的“多核和多CPU编程”中,对并行机制已经进行了较深入的分析,这里只…...
【Java】复制数组的四种方式
1. System.arraycopy() 用来将一个数组的(一部分)内容复制到另一个数组里面去。 定义: void arraycopy(Object src, int srcPos, Object dest, int destPos, int length);例: int[] arr1 { 1, 2, 3, 4, 5 }; int[] arr2 new…...
设计模式5、原型模式 Prototype
解释说明:使用原型实例指定待创建对象的类型,并且通过复制这个原型阿里创建型的对象 UML 结构图: 抽象原型(Prototype):规定了具体原型对象必须实现的clone()方法 具体原型(ConcretePrototype&…...
驱动挂载物理页代码示例
驱动挂载物理页代码示例 使用的实验环境为32位xp系统在101012分页模式下 此实验用于测试对分页模式的掌握程度 代码思路如下: 获取目标进程的cr3在目标进程中申请新的物理页拆分新申请的物理页的线性地址通过差分出的内容获取pte将pte写入到要挂载的线性地址的p…...
【新版】系统架构设计师 - 层次式架构设计理论与实践
个人总结,仅供参考,欢迎加好友一起讨论 文章目录 架构 - 层次式架构设计理论与实践考点摘要层次式体系结构概述表现层框架设计MVC模式MVP模式MVVM模式使用XML设计表现层表现层中UIP设计思想 中间层架构设计业务逻辑层工作流设计业务逻辑层设计 数据访问层…...
大数据Flink(九十):Lookup Join(维表 Join)
文章目录 Lookup Join(维表 Join) Lookup Join(维表 Join) Lookup Join 定义(支持 Batch\Streaming):Lookup Join 其实就是维表 Join,比如拿离线数仓来说,常常会有用户画像,设备画像等数据,而对应到实时数仓场景中,这种实时获取外部缓存的 Join 就叫做维表 Join。…...
Docker方式创建MySQL8的MGR集群
目录 一、MGR简述二、安装环境及要求2.1 系统版本2.2 网络要求 三、安装步骤3.1 创建容器3.2 创建用户3.3 安装插件3. 4 启动集群3.5 加入集群 四、查看集群查看 MGR 组成员列表查看 MGR 组成员拓扑信息 五、其他说明集群配置要求集群配置限制集群相关变量和状态 一、MGR简述 …...
问 ChatGPT 关于GPT的事情:扩展篇
一、GPT预训练有什么节省显存和算力的技巧吗?我如何拿四块A100完成175B模型的预训练? 对于GPT预训练,有一些技巧可以帮助节省显存和算力。以下是一些常用的技巧: 按批次截断:在较长的文本序列中,将其切割…...
Spring Boot 集成 MinIO 实现文件上传、下载和删除
MinIO 是一种开源的对象存储服务,它基于云原生架构构建,并提供了高性能、易于扩展和安全的存储解决方案。 一.安装和配置 MinIO 服务器 为了演示方便,本文采用Windows安装 1.在官方网站下载MinIO 安装文件,地址:ht…...
Polygon Miden交易模型:Actor模式 + ZKP => 并行 + 隐私
1. 引言 前序博客: Polygon Miden:扩展以太坊功能集的ZK-optimized rollupPolygon Miden zkRollup中的UTXO账户混合状态模型 Polygon Miden为: ZK-optimized rollup由客户端生成证明完善Polygon ZK系列解决方案,致力于成为网络…...
Java流的体系结构(二)
文章目录 一、对象流的使用1.概念2.序列化机制3.代码案例:序列化过程:将内存中的java对象保存到磁盘中或通过通络传输出去4.反序列化,将磁盘文件中的对象还原为内存中的一个java对象 二、RandomAccessFile的使用1.说明2.代码案例 提示&#x…...
python计算阶层
阶层(Factorial)是指从1到一个正整数n的所有整数相乘,即n! 1 2 3 … n。下面是Python代码计算阶层: def factorial(n):"""计算阶层:param n: 正整数:return: n的阶层"""if n 1 or n 0:retu…...
前端架构师之01_ES6_基础
1 初识ES6 简单来说,ECMAScript是JavaScript语言的国际标准,JavaScript是实现ECMAScript标准的脚本语言。 2011年,ECMA国际标准化组织在发布ECMAScript 5.1版本之后,就开始着手制定第6版规范。 存在的问题:这个版本…...
银行卡号识别
# 导入工具包 from imutils import contours import numpy as np import argparse import cv2 import myutils# 设置参数 # ap = argparse.ArgumentParser() # ap.add_argument("-i", "--image", required=True, # help="path to input image")…...
【Idea】idea、datagrip设置输入法
https://github.com/RikudouPatrickstar/JetBrainsRuntime-for-Linux-x64/releases/tag/jbr-release-17.0.6b829.5https://github.com/RikudouPatrickstar/JetBrainsRuntime-for-Linux-x64/releases/tag/jbr-release-17.0.6b829.5 下载后解压并重命名为 jbr, 然后替换对应 ide…...
回归预测 | MATLAB实现基于RF-Adaboost随机森林结合AdaBoost多输入单输出回归预测
回归预测 | MATLAB实现基于RF-Adaboost随机森林结合AdaBoost多输入单输出回归预测 目录 回归预测 | MATLAB实现基于RF-Adaboost随机森林结合AdaBoost多输入单输出回归预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.MATLAB实现基于RF-Adaboost随机森林结合…...
最小生成树 | 市政道路拓宽预算的优化 (Minimum Spanning Tree)
任务描述: 市政投资拓宽市区道路,本着执政为民,节省纳税人钱的目的,论证是否有必要对每一条路都施工拓宽? 这是一个连问带答的好问题。项目制学习可以上下半场,上半场头脑风暴节省投资的所有可行的思路&a…...
Java实现使用多线程,实现复制文件到另一个目录,起不一样的名字,创建100万个数据
目录 1 需求2 实现 1 需求 我现在有一个300MB 的文件,想要根据这个文件,创建100万个大小一样的,名称不一样,如何实现,如何比较快点实现 2 实现 1 先准备好这个文件 2 准备好目录 3 写代码 private static void crea…...
大模型“读“懂你的秘密:Tokenize分词技术全解析!
本文深入探讨了大模型如何处理文本输入。核心流程为文本经过Tokenize分词,转为token,再映射为token ID并转化为embedding向量。介绍了三种基础分词粒度:按词切、按字符切、按子词切,并详细解析了四种常见tokenizer方法:…...
10分钟轻松搞定Android Studio中文界面:社区维护版完整配置指南
10分钟轻松搞定Android Studio中文界面:社区维护版完整配置指南 【免费下载链接】AndroidStudioChineseLanguagePack AndroidStudio中文插件(官方修改版本) 项目地址: https://gitcode.com/gh_mirrors/an/AndroidStudioChineseLanguagePack 还在为…...
HubSpot如何通过联盟计划快速增长?内容驱动型联盟营销的成功案例解析
在 SaaS 获客成本(CAC)不断攀升的今天,HubSpot 的增长奇迹始终是行业研究的焦点。除了教科书级的「集客营销(Inbound Marketing)」,其 HubSpot Affiliate Program(联盟营销计划)更是…...
自我提升智能体的自进化原理和实践
自我提升智能体skill赋予了AI助手从错误中反思、学习并自动繁衍新通用技能的持续进化能力。 1 实际案例 帮我运行测试,看看为什么登录模块失败。 流程如下: 第一步,任务开始前,Hook 触发 activator.sh(通过 UserPromptSubmit 触发)。它不会输出一大堆规则,只是提醒 AI 一…...
开源免费Web搜索工具openclaw-free-web-search:原理、部署与实战调优
1. 项目概述:一个开源、免费的Web搜索工具最近在折腾一些需要实时信息查询的小项目,比如新闻聚合、舆情监控或者简单的市场调研,发现直接调用商业搜索引擎的API要么有调用限制,要么费用不菲。就在这个当口,我注意到了G…...
STM32模拟I2C驱动TCS34725实现环境光与颜色识别
1. 环境光与颜色识别的硬件搭档 当我们需要让设备感知周围环境的光线强弱,或者识别物体的具体颜色时,TCS34725这颗传感器绝对是性价比之选。它不仅能测量环境光强度,还能通过RGB三原色的比例来判断颜色,这在智能家居和工业检测中特…...
基于PM波谱的二级海浪三维数值建模与可视化仿真
摘要:海浪的数值建模与三维可视化仿真在海洋工程、船舶设计及海上作业安全评估等领域具有重要的应用价值。针对二级海况(有义波高约 1.0 m、风速约7 m/s)条件下的不规则海浪模拟需求,本文提出了一种基于Pierson-Moskowitz…...
HS2-HF_Patch深度解析:Honey Select 2终极增强补丁实战指南
HS2-HF_Patch深度解析:Honey Select 2终极增强补丁实战指南 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF_Patch是一款专为Honey Select 2游…...
AI 驱动多态钓鱼攻击机理与行为防御体系研究
摘要 生成式 AI 技术推动网络钓鱼从规模化群发转向实时动态变异的多态化攻击模式,以每 15–20 秒生成唯一邮件、链接与附件,彻底颠覆基于重复特征与静态规则的传统防御逻辑。Cofense 2025 年威胁数据显示,76% 的恶意 URL 具备唯一性、82% 的恶…...
别再IO模拟SPI了!STM32F103驱动AD9833信号发生器,库函数SPI配置避坑全记录
STM32硬件SPI驱动AD9833信号发生器的深度避坑指南 在嵌入式开发中,SPI通信是最常用的外设接口之一。许多开发者习惯使用GPIO模拟SPI时序,认为这样更灵活可控。但当我们面对AD9833这类对时序要求严格的芯片时,IO模拟的弊端就会暴露无遗——信号…...
