石 松
(特力惠信息科技股份有限公司 大数据与AI事业部,福建 福州 350002)
以问题为导向、以数据驱动为核心的决策支持系统在国家和社会治理中的重要性日益增强。决策问题求解本质上是一个面向决策目标,融合多数据、多模型、多指标的分析计算过程。随着大数据和AI技术的发展,决策涉及的数据、模型、指标将越来越广泛,而基于分布式技术构建的运行环境能够支持海量、多源、多模、多态的数据在复杂决策分析模型下的计算,从而大幅度地提升了决策的实时性与现势性[1-2]。在这样的技术环境中,人们对满足个性化且能够实现按需定制的决策支持系统的需求越来越强烈,这是由于:
(1)不同用户具有不同的决策思维,导致决策过程存在个体差异。不同的专业背景用户对同一个主题有不同的决策思维,即决策思维的不确定性。这种不确定性包括决策对象、决策目标以及所使用的分析要素的不确定性。由于不同决策者对同一问题有不同的思维方式,因此需要不同的决策对象、决策要素和分析模型,而现在多数决策支持系统都是基于固定专题进行预设,不能满足不同用户的多样性决策需求。
(2)对于同一决策单元不同的决策者需要配置不同的决策要素。一个决策过程通常都是由若干决策单元组成的,一个决策单元的基本分析要素包括数据、指标、模型、规则与可视化图表。决策过程的每一个单元可能都需要用到不同的决策要素,而目前多数决策支持系统都是将各类要素在后台通过业务逻辑开发实现。
由此可见,在大数据与AI引领的技术变革中,决策支持系统虽然有了更为广阔的发展空间,但上述问题的存在却制约了决策支持系统的进一步发展和深入应用,迫切需要得到解决。
如果从人们对事物思维过程认知的角度出发,决策过程本质上可以抽象为一个流程构建、配置及运行过程。如果再进一步从个性化需求的角度出发,又可以把决策过程进一步看成为面向不同用户提供的动态且不确定性的业务流程[3]。因此,基于决策过程流程化的特征,很自然地考虑引入工作流技术,通过工作流来映射和配置决策过程是解决上述问题的关键钥匙。
工作流技术在现代管理工程中发挥着极其重要的作用,它描述与表达的是任务与活动间的各种逻辑关系[4]。决策过程可以看作工作流建模的过程。目前工作流建模有三种主流方法。第一种是以业务过程为中心,比如Petri网、UML活动图[5],这类建模方法将业务流程描述成以固定控制流执行,但是忽略了流程环节中对数据的管理。第二种是以对象为中心的建模方法,例如文献[6]提出了Proclets用于工作流建模,也仍然没有强调业务流中的数据部分。第三种是以数据为中心的建模方法,文献[7]提出将工作流建模方法由一组互相连接的业务实体组成,不同的业务实体之间必须通过共同的活动来交互,这种紧耦合的方式不足在于,随着工作流规模的不断增长,流程将变得越来越复杂和难以理解,限制了工作流的可扩展性;文献[8]提出了创建业务对象的工作流模型的方法,但对象间的通信机制比较复杂,且流程节点结构不适用于定制性的决策支持需求。
针对上述问题,本文提出一种支持按需定制的大数据决策支持工作流对象模型,引入工作流作为决策主线,采用面向对象设计方法,将决策的基本要素(包括数据、指标、模型、业务规则、可视化图表)与流程节点组成决策运行对象,对象之间以松耦合方式联接,同时对这种工作流模型的运行环境进行了总体设计及开发实证。
在大数据辅助决策工作流模型设计中,一个工作流由多个决策单元组成,如图1所示。每个决策单元视作一个决策对象,每个决策对象包括数据、指标、模型、规则、可视化图表五大属性,从而能够吸收对象化设计的优点,实现对象属性的自定义、可扩展。决策对象是工作流中的任何一个相对独立的有业务意义的决策计算单元。每个决策对象可以被创建、处理、暂定、终止。且每个决策对象均拥有一个全局的ID,以便于工作流对各决策对象实现统一管理。基于决策对象的重要性,本节首先对决策对象进行形式化定义。
图1 决策工作流样例
定义1:决策对象。一个决策对象由一个五元组(N,ID,A,∑,S)构成,其中,N为该决策对象的名称;ID为该决策对象的ID号;A为决策分析要素集合;∑为工作任务集合,即代表这个决策对象业务意义;S为该对象的生命周期状态模型。在设计时应尽可能确保决策对象是一个可相对独立运行的单元,以降低对象间通信复杂度。
定义2:决策分析要素。决策对象属性是一个五元组(D,M,I,R,V),能够支持扩展,增加其他要素。其中D代表这个流程环节需要的数据;M代表这个决策对象要实施的决策模型;I代表这个决策对象要用到的指标集;R代表这个决策对象要用到的规则集;V代表这个决策对象计算结果的可视化图形表达。
定义3:决策对象任务。决策对象任务是一个五元组(Tn,Tid,I,O,e)。Tn代表任务名称;Tid代表任务全局唯一id号;I⊆A为该任务的输入数据;O⊆A为决策对象的输出数据;e为该任务相关联的事件集合。
定义4:决策对象生命周期。对象生命周期是一个四元组(S,A,E,T),S是该对象的状态集合,S={S1,S2,S3,…,SN};A为动作集合,A={A1,A2,…,An};E为事件集合,E={E1,E2,…,En};T为任务集合,T={T1,T2,…,Tn}。在A的作用下,发生E,E驱动T,T的结束导致S变化,即A→E→T→S。本文中的对象状态包括创建、执行、暂停、完成四种,状态之间可以在满足特定条件下进行转移,转移定义为r={x,condition,y},其中x代表起始状态,condition代表状态转移的条件,y代表目的状态。
在上述对决策工作流模型各要素进行形式化定义的基础上,考虑到大数据条件的决策可能面临数据量大、指标众多、分析模型复杂的情境,为了提升计算性能,笔者进一步设计了分布式计算环境下的工作流运行逻辑。
如图2所示,决策工作流模型的运行逻辑设计如下:
(1)由用户根据需求定义决策主题。
(2)系统根据决策主题,通过语义相似性分析算法,从数据库中抽取出与该决策主题相关的数据,这里的数据源可以涉及多种数据类型,例如关系型数据、非关系型数据、流式数据、空间数据等,形成本专题决策所需的数据集。
(3)在步骤(2)的基础上,同样通过语义相似性分析算法,抽取出与该决策主题相关的指标集,分析模型、分析规则并指定这一对象可视化图表。
(4)基于主流的工作流引擎activity构建决策工作流,将对象属性集与每个决策流程节点构成决策对象,同时根据需要建立对象间的控制(如串联、并联、选择等),从而形成完整的决策工作流。
(5)将上述基于activity构建的决策工作流以文件的形式提交到分布式存储与计算环境中运行,解析文件后,按照工作流的顺序完成各对象节点的执行、实现上下游节点(对象)间的数据通信以及各节点计算结果的可视化。
图2 决策工作流模型的运行逻辑
为了能够有效支撑决策工作流执行,笔者设计了如图3所示的大数据运行环境。
图3 决策对象工作流执行环境
如图3所示,决策对象工作流执行环境分为4层,至下而上分别是:
(1)数据层:用于提供决策所需的数据,包括空间数据、非空间数据、指标库、模型库、业务规则库等。
(2)计算能力层:在分布式并行计算的基础上,进一步提供流计算、内存计算、在线/离线计算的能力。整个执行环境搭建在基础大数据平台之上,充分利用了Hadoop/Spark/Flink提供的批处理计算和流式计算能力。
(3)决策分析层:决策分析层有三个工作重点:一是决策流程设计,第二个是根据设计的决策流程完成决策工作流装配,第三个是决策工作流加载并运行。决策过程文件是指将设计好的流程以作业的形式提交工作流引擎进行运行。
(4)应用层:应用层为决策分析层的计算结果提供统计分析、预测/预警、可视化展示等分析服务。
上述设计思想和技术方法在笔者主持开发的国土资源大数据决策支持平台成功进行了技术验证。目前,该平台已经集成了800余项国土资源管理指标、50种以上的通用模型(包括将Apache Spark MLib算法库中的分类、聚类、回归等算法进行
接口适应性改造后予以集成)、15种以上的土地专业模型、10种以上的空间分析模型(如叠加分析、缓冲分析、最邻近分析等)。下文以国土空间规划决策中最典型的应用场景——项目建设用地选址决策为例来说明。
建设项目用地选址是土地规划分析中的典型应用,选址的目的是在一个目标区域的闲置地中选出最适合该项目建设用地的地块。这个过程涉及的空间数据量大、指标及业务规则多(如是否符合目标区域的土地总体规划,是否和目标区域的耕地保护红线冲突等)。其决策工作流程设计如图4所示。
图4 项目建设选址工作流构建
以多规控制线分析这个决策对象为例,该决策对象涉及的相关数据和属性如表1所示。
表1 多规控制线分析决策对象属性表
图5是多规控制线分析决策对象的执行过程,图6是多规控制线决策分析对象的分析结果,计算出了多个可供选择的侯选地块。上述决策对象涉及的土地面积约86 000公倾,利用大数据分布式计算技术实现了快速的空间叠加分析。系统部署在由6台服务器组成的集群,每台服务器的配置是:16核CPU;32 GB内存;1 TB硬盘。其中所使用的所有空间分析模型基于ARCGIS10.7的Geo Analysis大数据分析组件开发,完成该对象分析的时间约为30 s,如果使用单台服务器完成此过程约需425 s,体现出了分布式计算的并行优势。
图5 多规控制线分析决策对象分析过程
图6 多规控制线分析决策对象分析结果
本文针对传统的决策支持系统中分析要素融合能力不强、决策分析模式难以满足按需定制的决策需求等问题,提出一种支持按需定制的大数据决策工作流对象模型,对该对象模型结构进行了形式化描述,并对其运行逻辑和执行环境进行了总体设计。而后,以土地规划中建设用地选址分析这一典型场景计算进行了应用示范,结果表明这种方法具有良好的灵活性与可扩展性,对于按需定制的决策支持系统设计和开发具有较大的借鉴意义。