AGTMS 项目

AGTMS:自动化模板管理系统
AGTMS是一个基于SpringCloud和Vue.js的自定义配置对象管理系统,支持多种数据库和RESTful方式的数据获取,包括Oracle、MySQL等。系统包含多个模块如Web服务、网关服务及前端页面,支持自动化测试和远程调用示例。

Auto-Generate Template Management System

AGTMS 是一个基于 Spring CloudVue.js 的自定义配置对象管理系统,支持 OracleMySQLMariaDBSQL ServerPostgreSQLMongoDBRESTful 等方式获取数据。

项目地址

欢迎 starfork
Github: https://github.com/Saisimon/AGTMS
Gitee: https://gitee.com/saisimon/AGTMS

项目结构

.
├── agtms-admin         Spring Boot Admin 服务 (可选)(默认端口:7890, 默认用户:agtms, 密码:agtms7890)
├── agtms-autoconfigure 自动配置支持类库
├── agtms-autotest      自动化测试
├── agtms-example       远程调用示例服务 (默认端口:7899)
├── agtms-parent 
│   ├── agtms-api       内部接口类库
│   ├── agtms-config    配置类库
│   ├── agtms-core      核心类库
│   ├── agtms-jpa       JPA 实现支持类库 (默认为 H2,支持 Oracle、MySQL、MariaDB、SQL Server、PostgreSQL 数据库)
│   ├── agtms-mongodb   MongoDB 实现支持类库 (可选)
│   ├── agtms-redis     Redis 支持类库 (可选)
│   ├── agtms-remote    远程调用实现支持类库 (可选)
│   └── agtms-web       Web 服务 (默认端口:7892, 默认用户:admin, 密码:123456)
├── agtms-record        集成测试报告聚合模块
├── agtms-vue           前端页面 (默认端口:8080)
├── agtms-zuul          Zuul 网关服务 (默认端口:7891)
├── data                Docker 相关数据
│   └── web
|       ├── config      Web 服务额外配置
|       ├── files       Web 服务文件(图片、导入、导出)路径
|       └── libs        Web 服务额外 jar 库路径
├── .env                Docker Compose 环境变量配置
├── docker-compose.yml  Docker Compose 配置
├── README.md           README 文件
├── start.cmd           一键启动脚本 (Windows)
├── stop.cmd            停止脚本 (Windows)
├── start               一键启动脚本 (Unix)
└── stop                停止脚本 (Unix)

先决条件

  1. JRE(JDK) 8+
  2. Node.js
  3. Apache ZooKeeper
  4. RAM 4G+

  1. Docker

安装并启动

一键启动

默认使用 H2 内存数据库,每次重启数据会重制。要想保存数据,请自行配置数据库连接

  1. 准备 Zookeeper 并配置 hosts
  • /etc/hosts (Unix)
  • c:\windows\system32\drivers\etc\hosts (Windows)
<ZooKeeper IP>   zookeeperserver
  1. 执行启动脚本
  • start.cmd 默认会杀掉占用 7890、7891、7892端口的进程,请确认以后再执行操作
# Unix
./start

# Windows
start.cmd
  1. 访问
http://localhost:8080
  1. 日志
data
├── admin 
|   └── agtms-admin.log   Spring Boot Admin 服务日志
├── web 
|   └── agtms-web.log     Web 服务日志
└── zuul
    └── agtms-zuul.log    网关日志

分步启动

默认使用 H2 内存数据库,每次重启数据会重制。要想保存数据,请自行配置数据库连接

  1. 准备 Zookeeper 并配置 hosts
  • /etc/hosts (Unix)
  • c:\windows\system32\drivers\etc\hosts (Windows)
<ZooKeeper IP>   zookeeperserver
  1. 打包
# Unix
./mvnw clean package -Ddockerfile.skip=true

# Windows
mvnw.cmd clean package -Ddockerfile.skip=true
  1. 启动Web 服务 (agtms-web)
java -jar agtms-parent/agtms-web/target/agtms-web.jar
  1. 启动网关服务 (agtms-zuul)
java -jar agtms-zuul/target/agtms-zuul.jar
  1. 启动前端页面 (agtms-vue)
cd agtms-vue
npm install
npm run serve
  1. 访问
http://localhost:8080
  1. 启动 Spring Boot Admin 服务 (agtms-admin)
java -jar agtms-admin/target/agtms-admin.jar
  1. 日志
data
├── admin 
|   └── agtms-admin.log   Spring Boot Admin 服务日志
├── web 
|   └── agtms-web.log     Web 服务日志
└── zuul
    └── agtms-zuul.log    网关服务日志

Docker 容器启动

  1. 安装 Docker CE 或者 Docker EE,请参考官方文档下载安装
  2. 安装 Docker Compose,请参考官方文档下载安装
  3. 编译 Java 项目并生成 Docker 镜像
# Unix
./mvnw clean package

# Windows
mvnw.cmd clean package
  1. data/web/libs 路径下添加对应数据库驱动 jar
  • 默认使用 MySQL 5.7
# mysql-connector-java-8.0.16.jar
wget -P data/web/libs http://central.maven.org/maven2/mysql/mysql-connector-java/8.0.16/mysql-connector-java-8.0.16.jar
  1. 启动容器
  • WEB_CONFIG_HOMEWeb 服务额外配置,默认为 ./data/web/config
  • WEB_LIBS_HOMEWeb 服务额外 jar 库路径,默认为 ./data/web/libs
  • REVISION:版本号,默认为最新版本
# Docker Compose
docker-compose up -d

# Docker Swarm
docker stack deploy -c docker-compose.yml agtms
  1. 访问
http://localhost:8080

远程调用示例

  1. 准备 Zookeeper 并配置 hosts
  • /etc/hosts (Unix)
  • c:\windows\system32\drivers\etc\hosts (Windows)
<ZooKeeper IP>   zookeeperserver
  1. 启动 agtms 服务
# Unix
./start

# Windows
start.cmd
  1. 启动 agtms-example 服务
java -jar agtms-example/target/agtms-example.jar
  1. 访问
http://localhost:8080

自动化测试

Chrome

  1. 下载与 Chrome 浏览器对应版本的 Chrome Driver,并解压缩
  2. 配置 Chrome Driver 路径
  • agtms-autotest/src/main/resources/autotest.properties
auto.test.chrome.driver=/Users/saisimon/Downloads/chromedriver
  1. 运行测试用例
  • agtms-autotest/src/test/java/net/saisimon/agtms/autotest/ChromeTest

Firefox

  1. 下载最新版本的 Gecko Driver,并解压缩
  2. 配置 Gecko Driver 路径
  • agtms-autotest/src/main/resources/autotest.properties
auto.test.firefox.driver=/Users/saisimon/Downloads/geckodriver
  1. 运行测试用例
  • agtms-autotest/src/test/java/net/saisimon/agtms/autotest/FirefoxTest
MATLAB代码实现了一个基于多种智能优化算法优化RBF神经网络的回归预测模型,其核心是通过智能优化算法自动寻找最优的RBF扩展参数(spread),以提升预测精度。 1.主要功能 多算法优化RBF网络:使用多种智能优化算法优化RBF神经网络的核心参数spread。 回归预测:对输入特征进行回归预测,适用于连续值输出问题。 性能对比:对比不同优化算法在训练集和测试集上的预测性能,绘制适应度曲线、预测对比图、误差指标柱状图等。 2.算法步骤 数据准备:导入数据,随机打乱,划分训练集和测试集(默认7:3)。 数据归一化:使用mapminmax将输入和输出归一化到[0,1]区间。 标准RBF建模:使用固定spread=100建立基准RBF模型。 智能优化循环: 调用优化算法(从指定文件夹中读取算法文件)优化spread参数。 使用优化后的spread重新训练RBF网络。 评估预测结果,保存性能指标。 结果可视化: 绘制适应度曲线、训练集/测试集预测对比图。 绘制误差指标(MAE、RMSE、MAPE、MBE)柱状图。 十种智能优化算法分别是: GWO:灰狼算法 HBA:蜜獾算法 IAO:改进天鹰优化算法,改进①:Tent混沌映射种群初始化,改进②:自适应权重 MFO:飞蛾扑火算法 MPA:海洋捕食者算法 NGO:北方苍鹰算法 OOA:鱼鹰优化算法 RTH:红尾鹰算法 WOA:鲸鱼算法 ZOA:斑马算法
基于ILP的最优PMU放置优化研究(Matlab代码实现)内容概要:本文围绕基于整数线性规划(ILP)的最优PMU(相量测量单元)放置优化展开研究,旨在通过数学优化方法确定电力系统中PMU的最佳安装位置,以实现系统完全可观测的同时最小化设备成本。研究介绍了PMU在电力系统状态估计中的关键作用,构建了以最小化PMU数量为目标的ILP数学模型,并详细阐述了约束条件的建立,如系统可观测性约束等。文中提供了完整的Matlab代码实现,利用YALMIP工具箱和合适的求解器(如CPLEX或Gurobi)进行求解,验证了该方法的有效性和实用性。; 适合人群:具备电力系统基础知识、优化理论背景以及Matlab编程能力的高校研究生、科研人员及电力系统相关领域的工程师。; 使用场景及目标:① 解决电力系统状态估计中PMU的最优布点问题,降低系统监测成本;② 学习和掌握如何将实际工程问题转化为整数线性规划模型,并利用Matlab进行求解;③ 为智能电网的广域测量系统(WAMS)建设提供理论依据和技术支持。; 阅读建议:此资源以理论结合实践的方式,不仅提供了严谨的数学模型推导,更侧重于Matlab代码的实现。读者应在理解ILP基本原理和电力系统可观测性概念的基础上,仔细阅读并调试所提供的代码,尝试在不同规模的电网模型(如IEEE标准节点系统)上进行测试,以加深对优化算法和电力系统监控的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值