The invention belongs to the field of water resources informatization, and discloses an optimal dispatching system and method for a group of hydropower stations with front and back ends separated. The method includes generating the hydropower station group: generating the unit object first; then generating the unit object, which is saved in the plant object as an attribute of the plant object; finally generating the directed acyclic graph according to the power station topology structure to form the hydropower station group object; focusing on the service layer at the back end to transfer data; and specializing in the front end. Note in the UI layer to control front-end pages, rendering logic and system interaction. The invention extracts common methods and designs corresponding interfaces, and the new model algorithm only needs to be extended on this basis, which greatly enhances the flexibility of the program; the invention realizes the separation of front and back ends, has clear structure, convenient expansion, and has the advantages of simplicity, scalability and loose coupling.
【技术实现步骤摘要】
一种前后端分离的水电站群优化调度系统及方法
本专利技术属于水利信息化领域,尤其涉及一种前后端分离的水电站群优化调度系统及方法。具体涉及一种基于REST架构风格、前后端分离的水电站群优化调度系统设计。
技术介绍
目前,业内常用的现有技术是这样的:采用浏览器/应用服务器(B/S)架构构建应用系统,在系统开发过程中,利用Java跨平台语言并结合JavaScript、JSP、WebService等技术设计开发服务器端应用程序与客户端图形用户界面,并以MySQL和Tomcat作为数据库服务器与JavaWeb应用服务器。对于客户端用户来说,只需安装浏览器与Java运行环境即可操作该系统,而升级与日常维护等工作均在服务器端完成,与客户端无关,减少了用户工作量。随着我国水电建设的迅猛发展,水利事业的现代化和信息化进程全面推进,水电调度需要承担更复杂的调度任务,处理日益复杂的调度关系。水电站群优化调度系统是十分复杂的大型应用软件,涉及电站生产运行所需的水雨情测报、发电计划编制、运行结果分析评价等各个方面,其功能需求涵盖众多应用模块,如:基础信息管理、水文特性分析、降雨和径流预报、长中短期优化调度、厂内经济运行等。每一个应用模块与各种模型算法紧密相连,而每一个算法又与大量的业务信息相关联,不同应用模块的业务信息又存在不同程度的交叉。综上所述,现有技术存在的问题是:(1)传统的水电站群优化调度系统通常采用MVC架构模式,即将模型(Model)、视图(View)、控制器(Controller)三者分离,便于应用程序的设计和管理。但随着系统规模的不断扩大,视图依赖于模型的问题越来越 ...
【技术保护点】
1.一种前后端分离的水电站群优化调度系统,其特征在于,所述前后端分离的水电站群优化调度系统包括:后端单元,在服务器上运行,用于提供数据、处理业务逻辑;以Spring Boot微框架为基础,专注于服务层,涉及到数据库交互、实体的抽象与构建、模型算法的编写以及权限认证、日志管理的众多复杂且相互耦合的业务模块;采用Spring Data JPA进行数据库的连接,只编写持久层接口进行查询;调度实体、模型与算法的编写以面向对象程序设计为指导,由Spring IOC容器统一管理,按需分配;用户认证和用户授权通过Spring Security提供的用户登录认证和访问控制方法进行密码加密,页面权限;日志倾向于门面模式的Slf4j框架,并通过Spring AOP面向切面编程,把分散在各个应用模块的日志记录功能统一处理;前端单元,在浏览器上运行,用于接收数据、返回数据,处理渲染逻辑;在启动时只加载单个HTML页面,并通过动态更新完成与用户的交互任务;采用React、Dva以及Ant Design的技术栈,专注于UI层,前端页面的控制和渲染逻辑、系统交互和用户体验;利用React声明式的、基于组件的特点,进 ...
【技术特征摘要】
1.一种前后端分离的水电站群优化调度系统,其特征在于,所述前后端分离的水电站群优化调度系统包括:后端单元,在服务器上运行,用于提供数据、处理业务逻辑;以SpringBoot微框架为基础,专注于服务层,涉及到数据库交互、实体的抽象与构建、模型算法的编写以及权限认证、日志管理的众多复杂且相互耦合的业务模块;采用SpringDataJPA进行数据库的连接,只编写持久层接口进行查询;调度实体、模型与算法的编写以面向对象程序设计为指导,由SpringIOC容器统一管理,按需分配;用户认证和用户授权通过SpringSecurity提供的用户登录认证和访问控制方法进行密码加密,页面权限;日志倾向于门面模式的Slf4j框架,并通过SpringAOP面向切面编程,把分散在各个应用模块的日志记录功能统一处理;前端单元,在浏览器上运行,用于接收数据、返回数据,处理渲染逻辑;在启动时只加载单个HTML页面,并通过动态更新完成与用户的交互任务;采用React、Dva以及AntDesign的技术栈,专注于UI层,前端页面的控制和渲染逻辑、系统交互和用户体验;利用React声明式的、基于组件的特点,进行前端页面的开发,并通过虚拟DOM、反应式的单向数据绑定;采用Dva管理状态,从状态到组件的单向数据流转。2.如权利要求1所述的前后端分离的水电站群优化调度系统,其特征在于,后端单元包括:数据库,依据存储数据的用途,将所有库表分为四大类,分别为以“basic_”开头的基础数据存储表,用于存储电站、机组的基础数据,包括但不限于水位库容曲线、尾水位下泄流量曲线、机组NHQ曲线等;以“real_”开头的实际运行数据存储表,用于存储电站机组实际运行的数据,以月、日或小时进行分类,分别存储;以“result_”开头的方案结果存储表,用于存储调度结果;以“others”开头的用户及其他信息存储表,用于存储调度系统用户信息及其他信息。这种设计既满足数据库表的设计规范要求,也有利于库表的快速查询与维护。Spring模块,采用依赖注入的方式进行资源集中管理,通过内置Tomcat、Jetty容器,利用Java配置方式,进行开箱即用、自动配置;机组模块,用于按照类型进行分类,每种类型只产生一个共享对象;机组对象中含有NHQ曲线、预想出力曲线的基础数据;电站与电站群模块,通过有向无环图(DirectedAcyclicGraph)对混联水电站群进行拓扑结构排序,给出获取直接上游电站、下游相关电站的方法,模型算法模块,包括:优化问题类模块,用于定义问题方法名称、决策变量、目标函数以及约束条件的个数基本信息,并提供产生结果和适应度评价的方法;还用于创建长期优化调度问题和短期优化调度问题;计算结果类模块,用于定义设置和获取变量值、目标函数值的方法,还用于提供拷贝的方法;在数学规划法计算时,作为初始解或者最终解;智能算法求解时,Solution的大小由种群的规模决定;还用于提供长期调度结果与短期调度结果;前端单元,包括:SPA模块,只包含单个页面的应用程序,用于启动时只加载单个HTML页面,并通过动态更新来完成与用户的交互任务;React模块,用于以某种方式组织代码,进行预测、调试;还用于通过组合的方式创建更复杂的应用;还用于利用Node.js在服务端重用代码,或者通过ReactNative创建移动端手机应用;Dva模块,用于解决组件之间的通信、数据与视图的串联、路由与...
【专利技术属性】
技术研发人员:莫莉,廖想,高新稳,彭璐,邹义博,舒生茂,
申请(专利权)人:华中科技大学,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。