update for haodan
This commit is contained in:
parent
76a19bb6ac
commit
7d4654a882
|
@ -16,28 +16,9 @@
|
|||
为了便于使用与推广,程序设计语言的设计与实现通常要遵守一定的规则。同时,不同应用的涌现也推动了多种程序设计语言的提出与发展。
|
||||
|
||||
\subsubsection{设计}
|
||||
一般说来,程序语言的设计应该遵守以下原则:
|
||||
\begin{itemize}
|
||||
\item 程序语言的构造方面:
|
||||
\begin{itemize}
|
||||
\item 易读性:能够使得书写的程序容易理解;
|
||||
\item 易写性:能够让程序员清晰、准确地表达计算意图;
|
||||
\item 通用性:若干结构可以组合成更通用的结构;
|
||||
\item 正交性(Orthogonality):语言构造的每种组合都是合法的;
|
||||
\item 一致性:相似的特点有相似的表示和行为;
|
||||
\end{itemize}
|
||||
\item 程序语言的实现方面:
|
||||
\begin{itemize}
|
||||
\item 易实现性:能够编写对应的转换器\index{转换器}或解释器\index{解释器};
|
||||
\item 可靠性:确保程序不会导致意外;
|
||||
\item 易维护性:能够很容易发现错误并纠正;
|
||||
\item 易扩展性:能够给用户提供加入新抽象设施的机制;
|
||||
\item 标准性(Standardability):利于程序在不同机器和系统间的移植。
|
||||
\end{itemize}
|
||||
\end{itemize}
|
||||
语言设计是上述几方面原则的综合权衡,在实践中有不同角度,体现不同的侧重点:从程序设计语言理论角度出发设计的语言十分关注语言语义的清晰性、灵活性、简洁性,往往直接反映了理论领域的创新成果,如Pascal、Ocaml、X10等;从系统软件与体系结构角度出发设计的语言,关注如何充分利用系统结构的特点来优化性能,如图形处理器支持的CUDA;从应用角度出发设计的语言关注与目标应用的契合度以及编程的便易性,如XML、PHP、Julia等。
|
||||
一个好的程序设计语言需要具备多种不同的质量属性。比如易读性(所编写的程序容易理解)、易写性(能够让程序员清晰、准确地表达计算意图)、通用性(具有良好的表达能力,能表达出所需的计算需求)、正交性(不同维度的语言元素可以自由组合)、一致性(相似的语法结构有相似的语义)、易实现性(容易开发出编译器和解释器)、可靠性(能尽量减少程序员的编程错误)、易维护性(添加新功能和修复缺陷比较容易)、可扩展性(允许用户定义新的语言成分)、标准性(利于程序在不同机器和系统间的移植)等等。
|
||||
|
||||
某些语言例如数据库查询语言SQL简洁地表示数据表格间的代数关系\index{代数关系},大幅简化了对数据库\index{数据库}的查询;深度学习编程框架\index{编程框架}TensorFlow~\cite{abadi2016tensorflow}、PyTorch等辅助编程者方便地生成神经网络结构\index{神经网络结构}并根据学习算法自动生成反向神经网络。这些语言或框架追求编程简单性,虽然简化了循环和递归这样的图灵可计算性的关键语句,但仍然反映了一定的程序设计模型\index{程序设计模型}。
|
||||
语言设计是上述几方面原则的综合权衡,在实践中有不同角度,体现不同的侧重点:从程序设计语言理论角度出发设计的语言十分关注语言语义的清晰性、灵活性、简洁性,往往直接反映了理论领域的创新成果,如Pascal、Ocaml、X10等;从系统软件与体系结构角度出发设计的语言,关注如何充分利用系统结构的特点来优化性能,如图形处理器支持的CUDA;从应用角度出发设计的语言关注与目标应用的契合度以及编程的便易性,如XML、PHP、Julia、SQL、TensorFlow、PyTorch等。
|
||||
|
||||
\subsubsection{实现}
|
||||
|
||||
|
|
|
@ -46,33 +46,33 @@
|
|||
\item 软件定义卫星应用的持续演化框架。其涵盖一系列软件系统演化机制和方法,需研究包含(1)领域特定的编程语言及运行时系统;(2)与编程语言系统适配的自适应计算卸载机制,以及代码自动生成与修复技术;(3)基于样例的API自动合成;(4)面向场景不确定性的管控逻辑自适应编排;(5)基于自主学习与数据驱动的管控目标自适应演化机制。
|
||||
\end{itemize}
|
||||
|
||||
\section{工业控制系统}
|
||||
工业控制系统指专用于或主要用于工业控制领域,为提高制造企业制造、生产管理水平和工业管理性能的系统软件,包括嵌入式工业软件、协同集成类软件、生产控制类软件、生产管理类软件等四大类。工业控制系统利用信息技术将工业过程的控制逻辑化、管理流程代码化,从而驱动装备和管理业务按照既定的逻辑自动高效地运行,并实现预先设定的功能。工业控制系统的应用可以提高产品价值、降低企业成本进而提升企业的核心竞争力,是现代工业装备的大脑,也成为支撑第四次工业革命的核心。
|
||||
\section{软件定义的流程工业控制系统}
|
||||
流程工业控制系统指专用于或主要用于流程工业控制领域,为提高制造企业制造、生产管理水平和工业管理性能的系统软件,包括嵌入式工业软件、协同集成类软件、生产控制类软件、生产管理类软件等四大类。流程工业控制系统利用信息技术将流程工业过程的控制逻辑化、管理流程代码化,从而驱动装备和管理业务按照既定的逻辑自动高效地运行,并实现预先设定的功能。流程工业控制系统的应用可以提高产品价值、降低企业成本进而提升企业的核心竞争力,是现代工业装备的大脑,也成为支撑第四次工业革命的核心。
|
||||
|
||||
过去工业领域已有很多信息化工作,但在新时代的背景下,工业控制系统需通过软件定义的方式,完成平台化的重构。这种软件定义的工业控制系统呈现出以下三方面的优势:(1)通过协同研发平台优化研发管理体系,以数据和流程的标准化,以及跨企业研发平台的建设思路为核心,优化研发管理体系;(2)通过对传统工艺的理解和改造,推广工业机器人在垂直行业的应用;(3)应用商业智能实现数据驱动企业发展,在商业智能系统中,实现全员统一查阅企业视图,全面预测数据,洞察驱动的业务流程最佳化,形成统一的基础架构预先构建的分析解决方案,演变成企业绩效管理系统。
|
||||
过去流程工业领域已有很多信息化工作,但在新时代的背景下,流程工业控制系统需通过软件定义的方式,完成平台化的重构。这种软件定义的流程工业控制系统呈现出以下三方面的优势:(1)通过协同研发平台优化研发管理体系,以数据和流程的标准化,以及跨企业研发平台的建设思路为核心,优化研发管理体系;(2)通过对传统工艺的理解和改造,推广工业机器人在垂直行业的应用;(3)应用商业智能实现数据驱动企业发展,在商业智能系统中,实现全员统一查阅企业视图,全面预测数据,洞察驱动的业务流程最佳化,形成统一的基础架构预先构建的分析解决方案,演变成企业绩效管理系统。
|
||||
|
||||
|
||||
\subsection{参考体系架构}
|
||||
工业控制系统的主要特点是:第一,机电仪控设备、生产设备、生产资源的虚拟化;第二,数据采集、过程控制、过程优化、生产调度、企业管理、经营决策的定制化;第三,工业应用开发、数据集成和分析服务的平台化。
|
||||
流程工业控制系统的主要特点是:第一,机电仪控设备、生产设备、生产资源的虚拟化;第二,数据采集、过程控制、过程优化、生产调度、企业管理、经营决策的定制化;第三,工业应用开发、数据集成和分析服务的平台化。
|
||||
|
||||
其系统架构如图\ref{fig2}所示。
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=\linewidth]{fig2-7/industry.png}
|
||||
\caption{软件定义工业控制系统}
|
||||
\caption{软件定义的流程工业控制系统}
|
||||
\label{fig2}
|
||||
\end{figure}
|
||||
\subsection{关键技术挑战}
|
||||
从软件系统的角度看,工业控制系统的特殊性体现在设备和生产资源的虚拟化和工业大数据采集和管理上,其中包括工业信息化数据、机器设备数据和产业链跨界数据等,其中数据的采集环境多样,数据采集具有很高的准确性和实时性要求,并且大部分数据具有时序特性。工业控制系统的主要挑战,来自于对上述四大类软件系统的合理重构,需要系统的角度进行资源的划分、能力的定义,需要抽象出制造过程的任务,形成可动态重组的业务逻辑单元,并支持按需业务重组和资源调度。具体挑战包括:
|
||||
从软件系统的角度看,流程工业控制系统的特殊性体现在设备和生产资源的虚拟化和工业大数据采集和管理上,其中包括工业信息化数据、机器设备数据和产业链跨界数据等,其中数据的采集环境多样,数据采集具有很高的准确性和实时性要求,并且大部分数据具有时序特性。流程工业控制系统的主要挑战,来自于对上述四大类软件系统的合理重构,需要系统的角度进行资源的划分、能力的定义,需要抽象出制造过程的任务,形成可动态重组的业务逻辑单元,并支持按需业务重组和资源调度。具体挑战包括:
|
||||
|
||||
\begin{itemize}
|
||||
\item 贯穿工业生产全过程的体系化的软件系统之系统:流程工业涉及多个方面,既涉及与企业价值相关的产品生产需求,又涉及原材料提取、传递及其通过物理、机械和/或化学方式转化成其他产品的过程。当工业生产的每个环节都配备传感和通信设备之后,为了实现智能制造,首先需要构建各个生产环节上的独立的信息系统和控制系统,比如生产管控系统、安全环保系统、供应链管理系统、能源管理系统、资产管理系统等。但如何汇聚这些独立的软件系统和物理设备,用统一的机制综合物流、能源流、资金流,形成工业生产全过程全方位的动态镜像,从而实现基于生产数据和管理数据多维度共享基础上的工业智能,不仅是软件技术和软件架构上的挑战,也是先进控制和管理上的挑战。
|
||||
\item 工业控制操作系统的安全性和系统失效的风险性:一方面,相对独立的工业控制系统越来越多地与开放的管理系统互联,在实现数据共享、智能决策的同时,也为工业控制系统安全带来隐患与威胁。这类系统中的控制协议,大多在开始设计时只考虑如何能满足要求的效率、实用性和可靠性,而忽略了安全性要求。如何增强工控系统的控制协议的安全性,成为建立并实施一体化工业软件系统之系统的最大忧患。另一方面,工业系统中包含了成千上万的物理设备,这些设备很多具有很高的损耗率和失效率,而这些常常导致巨大事故,其系统设计时的风险分析、运行时的失效监测数据实时准确采集、以及精确的风险预测和溯源分析等等,对软件系统的设计和运行支撑都带来挑战。
|
||||
\item 海量多维流数据的实时处理。工业控制操作系统需要面对的是超高的数据通量和低质乱序的传输,同时需要满足的需求又是高质全序查询与复杂分析。只要系统处于运行态,检测设备7天24小时不间断地产生数据,数据采集频率高而且量大。软件系统需要管理千万条时间序列数据,并以每秒百万至千万点的速度处理数据。更加困难的是,这些数据基本都是异构的而且从异地采集的,常常出现表头缺失、数据错列、数据缺失、数据串行等问题,需要高效正确的纠错算法,等等,这些都是系统设计和运行时的挑战性问题。
|
||||
\item 流程工业控制操作系统的安全性和系统失效的风险性:一方面,相对独立的流程工业控制系统越来越多地与开放的管理系统互联,在实现数据共享、智能决策的同时,也为流程工业控制系统安全带来隐患与威胁。这类系统中的控制协议,大多在开始设计时只考虑如何能满足要求的效率、实用性和可靠性,而忽略了安全性要求。如何增强工控系统的控制协议的安全性,成为建立并实施一体化流程工业软件系统之系统的最大忧患。另一方面,流程工业系统中包含了成千上万的物理设备,这些设备很多具有很高的损耗率和失效率,而这些常常导致巨大事故,其系统设计时的风险分析、运行时的失效监测数据实时准确采集、以及精确的风险预测和溯源分析等等,对软件系统的设计和运行支撑都带来挑战。
|
||||
\item 海量多维流数据的实时处理。流程工业控制操作系统需要面对的是超高的数据通量和低质乱序的传输,同时需要满足的需求又是高质全序查询与复杂分析。只要系统处于运行态,检测设备7天24小时不间断地产生数据,数据采集频率高而且量大。软件系统需要管理千万条时间序列数据,并以每秒百万至千万点的速度处理数据。更加困难的是,这些数据基本都是异构的而且从异地采集的,常常出现表头缺失、数据错列、数据缺失、数据串行等问题,需要高效正确的纠错算法,等等,这些都是系统设计和运行时的挑战性问题。
|
||||
\end{itemize}
|
||||
|
||||
\subsection{未来研究方向}
|
||||
工业控制系统的未来研究方向包括:
|
||||
流程工业控制系统的未来研究方向包括:
|
||||
\begin{itemize}
|
||||
\item 实时准确的信息感知和数据采集。工业生产过程优化调控和经营管理优化决策需要准确的信息,其难点是如何实现从原料供应、生产运行到产品销售全流程与全生命周期资源属性等的快速获取与信息集成。因此,原材料与产品属性的快速检测、物流流通轨迹的监测以及部分关键过程参量的在线检测是实现流程工业智能优化制造的前提和基础。
|
||||
\item 生产运行监测和动态优化决策。生产计划的不确定因素众多,原料采购价格和市场需求多变,给生产运行和经营管理的决策带来难题。核心要解决如何深度融合市场和装置运行特性知识进行管理模式的变革,以大数据、知识型工作自动化为代表的现代信息技术为制造过程计划和管理的优化决策带来了契机。
|
||||
|
@ -82,7 +82,7 @@
|
|||
\end{itemize}
|
||||
|
||||
|
||||
\section{智慧城市系统}
|
||||
\section{软件定义的智慧城市系统}
|
||||
智慧城市系统利用信息技术,将城市的系统和服务打通并集成,以提升资源运用的效率。智慧城市系统建设已经成为城市治理的必要需求,其驱动力在于需要突破地域、部门或系统的边界,促进城市信息空间、物理空间和社会空间的深度融合,从而向城市管理者提供城市规划管理的支持,优化城市管理和服务,提高城市治理水平,向市民提供泛在、周到的智能服务,改善市民生活质量。
|
||||
|
||||
智慧城市涉及交通出行、环保保护、应急处理、电子政务、医疗卫生、民生服务等众多领域,应用需求丰富,以往采取各个应用系统独立规划、独自建设的方式,造成了硬件``各为其主''、数据``互不往来''、软件``各自为政''的局面,不仅不利于软硬件资源的复用,也限制了跨部门、跨系统业的数据共享与业务系统,成为制约智慧城市发展的瓶颈。
|
||||
|
@ -118,7 +118,7 @@
|
|||
\item 城市规划仿真和突发事件管控。在城市大数据和多系统互操作的基础上,体系化地构建城市管理,特别是突发事件管控的模型库、预案库、策略库。研究多渠道城市运行管理事件关联分析、预警预报和综合决策技术,研究多系统协同指挥的流程及机制,研究基于跨系统城市功能协同的城市风险预测和推演技术,构建城市智能模拟/预测/推演平台;研究城市风险和灾害等不同情况下的城市危害与次生危害仿真模型,建立能支持突发公共事件风险的网络治理机制和城市群应急管理联动体制的平台。
|
||||
\end{itemize}
|
||||
|
||||
\section{无人自主系统}
|
||||
\section{软件定义的无人自主系统}
|
||||
|
||||
无人自主系统是机械装置、计算技术、传感器和软件的融合,包括无人地面车辆、无人飞行器、智能机器人等。其典型特征是能自主感知周边环境,通过内部搭载的计算部件理解环境状态并作出相应的行为决策,然后根据决策结果控制其机械装置执行相应的行为。以上各部分工作全部通过软件来协调完成。例如,无人地面车辆(UGV)是在地面上自主行驶的车辆,一般配备一组传感器以观察其周边环境,通过感知和决策自主决定其行为。
|
||||
|
||||
|
@ -215,5 +215,5 @@
|
|||
\end{itemize}
|
||||
|
||||
\section{本章小节}
|
||||
本章考察软件定义卫星、工业控制软、无人自治系统、智慧城市系统等4类领域应用软件,分别从这类系统的功能需求出发,按软件定义的视角,勾画出它们的三层体系架构,突出其软件系统向下管理和调度资源,向上实现应用逻辑编程以满足需求的核心作用,目的是建立基于软件定义的泛在软件系统的参考示范。本章另外还讨论了高性能CAE软件的功能特征和关键技术挑战。
|
||||
本章考察软件定义卫星、流程工业控制软件、无人自治系统、智慧城市系统等4类领域应用软件,分别从这类系统的功能需求出发,按软件定义的视角,勾画出它们的三层体系架构,突出其软件系统向下管理和调度资源,向上实现应用逻辑编程以满足需求的核心作用,目的是建立基于软件定义的泛在软件系统的参考示范。本章另外还讨论了高性能CAE软件的功能特征和关键技术挑战。
|
||||
|
||||
|
|
Loading…
Reference in New Issue