首页> 中国专利> 计算机辅助调度系统的人工智能应用

计算机辅助调度系统的人工智能应用

摘要

本发明的示例性实施方式提供了一种虚拟调度辅助系统,其中,部署了各种类型的智能代理(例如,作为新的CAD系统架构的一部分或者作为现有CAD系统的插件),以分析大量的历史操作数据并提供各种类型的调度辅助通知和推荐,这些调度辅助通知和推荐可以被调度方或CAD系统本身(例如,自主地)使用以做出调度决策。

著录项

  • 公开/公告号CN112567395A

    专利类型发明专利

  • 公开/公告日2021-03-26

    原文格式PDF

  • 申请/专利权人 鹰图公司;

    申请/专利号CN201980053820.8

  • 申请日2019-06-10

  • 分类号G06N5/04(20060101);G06N3/00(20060101);G06N3/08(20060101);G06N7/00(20060101);

  • 代理机构11127 北京三友知识产权代理有限公司;

  • 代理人王小东;黄纶伟

  • 地址 美国阿拉巴马州

  • 入库时间 2023-06-19 10:22:47

说明书

相关申请的交叉引用

本专利申请要求2018年6月12日提交的题为“Project LAMBDA”的美国临时专利申请No.62/683,754的权益,其全部内容通过引用而并入本文。

该专利申请的主题可以涉及共同拥有的于2016年12月20日提交的题为“COMPUTER-AIDED DISPATCH SYSTEMS AND METHOD UTILIZING BIOMETRICS TO ASSESSRESPONDER CONDITION AND SUITABILITY”的美国专利申请No.15/384,874并于2018年6月21日公布为美国专利申请公报No.US 2018/0174430的主题,其全部内容通过引用而并入本文。

技术领域

本发明涉及计算机辅助调度系统,更具体地,涉及利用人工智能来辅助做出调度决策的计算机辅助调度系统。

背景技术

在紧急情形下,时间是调度应急响应方的关键。应急响应方不仅必须能够迅速到达事件位置,而且必须能够调度正确类型的应急响应方来处理事件的特殊情况。例如,人质情形可能需要具有人质谈判技巧的应急响应方,而潜在的溺水情形可能需要具有水上救援技能的应急响应方。

计算机辅助调度(CAD)系统是运行专门软件的计算机系统,该专门软件针对以下各种类型的资产做出调度决策或者帮助调度方做出调度决策:举例来说,如人员(例如,警务人员、消防员、EMT和其他医疗专业人员、快递员、现场服务技术人员等)、车辆(例如,警车、消防车、救护车、医疗飞行直升机、船只、运载车辆(livery vehicle)等)、设备(例如,为应对特定事件或情形所需的特殊设备,诸如用于车祸方面的“救生钳(jaws of life)”)、以及设施(例如,可以处理特定类型患者的医院或其它医护设施)。为了方便,术语“小组(unit)”在本文中可以用于指代向事件调度的一个或更多个应急响应方以及相关设备(例如,警察小组可以包括特定警车以及正在使用该警车的一个或更多个警务人员)。

CAD系统通常收集并存储关于各种资产的大量信息,举例来说,如状态、可用性、位置、能力以及使用历史。CAD系统通常还收集并存储关于各紧急事件的信息,举例来说,如紧急事件的位置和类型等等。可以这样收集并存储此类信息:自动地(例如,通过多种基于计算机的通信系统中的任何一种)和/或通过收集信息并将该信息输入到CAD系统中的接线员。然后,CAD系统可以帮助调度方为应急响应方指派任务,例如,通过基于诸如以下各项的标准来推荐将哪个(哪些)应急人员和/或车辆指派给特定紧急事件:紧急情况的类型、应急响应方距紧急情况位置的距离、各个可用的应急响应方的状态(例如,特定的应急响应方当前是否正在应对紧急事件)、紧急事件的必需设备(例如,救生钳)、紧急事件的必需技能(例如,自杀谈判技巧、水上救援技能等)或者最小转弯(对于长梯消防车)等等。

在应对紧急事件之后,往往需要将一方运输至某一设施,举例来说,如医院或拘留中心。因此,除了跟踪应急人员和车辆外,一些CAD系统还收集并存储关于许多可用的设施中的各个设施的信息,举例来说,如设施的类型、设施的位置以及设施提供的服务(例如,普通急救与专业治疗)等等。然后,CAD系统可以帮助调度方将应急响应方指派给紧急事件然后指派至设施,例如,基于诸如以下各项的标准来进行设施推荐:患者或受害者所需救治的类型和严重性、可用的设施的能力以及可用的设施距紧急情况位置的接近度等等。例如,调度方通常更愿意将救护车指派至最近的医院,但在某些情况下,CAD系统可能会推荐距离较远的第二家医院(例如,最近的医院可能仅提供普通急救,而救护车内的患者可能需要只有距离更远的第二家医院能提供的诸如心脏救治的专业治疗)。

基于系统收集的大量数据(例如,作为处理所述情形的候选的各种人员、车辆、设备以及设施的当前处置和条件),调度决策不仅可能非常复杂,而且通常需要迅速做出此类调度决策。一般而言,使用指定的图形用户界面画面将来自呼叫的信息输入到CAD系统中,并且CAD系统可以处理所输入的信息以及系统中存储的其它信息,以向调度方进行推荐。这样的推荐通常基于由程序员特别编程的规则,例如,CAD系统可以推荐最近的救护车响应该事件并将患者运送至最近的医院。然而,在一些情况下,最近的救护车可能不是最佳的响应方(例如,医务人员没有接受过处理烧伤受害者的训练,或者救护车没有进行合适的配备来处理烧伤受害者),并且最近的医院可能不是治疗患者的最佳设施(例如,最近的医院可能无法接纳新来的患者,或者可能没有合适的人员可用来治疗烧伤受害者)。而且,CAD系统必须能够处理非常复杂的相关事件或不相关事件序列,举例来说,如发生在几天内的一连串盗窃案。再则,CAD系统可以采用基于规则的逻辑来向调度方提供推荐。

发明内容

根据本发明的一个实施方式,一种计算机辅助调度(CAD)系统包括:存储CAD数据的CAD数据库;以及至少一个服务器,所述至少一个服务器包括存储有代理主机子系统和通知子系统的有形非暂时性计算机可读介质。该代理主机子系统被配置成与多个智能代理(Intelligent Agent)进行通信,其中,各个智能代理皆被配置成,自主地执行CAD数据的不同的调度相关分析并基于这样的分析产生调度相关通知,而无需用户查询。该通知子系统被配置成,至少部分地基于从用户接收到的反馈,确定是否向该用户呈现来自给定智能代理的给定通知。

在各种另选实施方式中,该智能代理可以包括统计代理,该统计代理被配置成,检测CAD数据中的异常值并且在检测到异常值时产生通知。该统计代理可以包括机器学习异常值检测器,该机器学习异常值检测器被训练成对CAD数据中的异常值进行检测。

另外或者另选地,该智能代理可以包括关键词代理,当在事件中检测到至少一个指定关键词时,该关键词代理产生通知。

另外或者另选地,该智能代理可以包括模式代理,该模式代理被配置成,检测CAD数据中的模式并且当在事件中检测到模式时产生通知。

另外或者另选地,该智能代理可以包括事件匹配代理,该事件匹配代理被配置成,基于模糊逻辑分析来检测相似事件,并且当基于该模糊逻辑分析检测到相似事件时产生通知。该事件匹配代理可以包括机器学习模式检测器,该机器学习模式检测器被训练成对CAD数据中的模式进行检测。

另外或者另选地,该智能代理可以包括重复事件代理,该重复事件代理被配置成,检测复现事件(recurrent event)并且在检测到复现事件时产生通知。

另外或者另选地,该智能代理可以包括相关性代理,当确定变量的组合对事件的发生有贡献时,该相关性代理产生通知。该相关性代理可以包括机器学习相关性检测器,该机器学习相关性检测器被训练成对CAD数据中的相关性进行检测。

另外或者另选地,该智能代理可以包括相似度代理,所述相似度代理被配置成,基于词频来检测相似事件,并且当基于词频检测到相似事件时产生通知。

另外或者另选地,该智能代理可以包括规则代理,当操作变量匹配预配置规则时,该规则代理产生通知。

在任何上述实施方式中,呈现给用户的通知可以为用户提供一种机制,以提供有关该通知的反馈。该系统可以允许在用户之间和/或与非用户共享通知。该系统可以将通知附加至相关事件。智能代理可以由至少一个服务器(例如,就地)实现和/或可以远离至少一个服务器实现(例如,通过基于云的机器学习服务)。

在任何上述实施方式中,可以将所述代理主机子系统、一个或更多个智能代理和/或通知子系统具体实施为包括有形非暂时性计算机可读介质的计算机程序产品中的计算机程序。

本文所描述和要求保护的实施方式具有以下效果:将可能是被动的或者可能要求用户筛选大量数据的CAD系统变换成利用智能代理的虚拟调度辅助系统,该虚拟调度辅助系统可以利用人工智能和机器学习来主动分析CAD数据并生成有用的通知,以帮助调度方或者自动化调度操作。至少出于这些理由,本文所描述和要求保护的活动以本发明领域的技术人员并非充分了解、例行的或常规的方式,提供了一种技术解决方案(例如,利用人工智能和机器学习)来解决技术领域(例如,计算机辅助调度系统)中直接出现的问题。

可以公开并要求保护附加实施方式。

附图说明

根据参照下面紧接着概述的附图所讨论的下列“具体实施方式”,本领域技术人员应当更全面清楚本发明各种实施方式的优点。

图1是根据某些示例性实施方式的计算机辅助调度(CAD)系统的简化示意图。

图2是示出根据某些示例性实施方式的具有智能代理的虚拟调度辅助系统的功能模型的示意图。

图3是示出根据某些示例性实施方式的图2的具有智能代理的虚拟调度辅助系统的数据模型的示意图。

图4示出了一种示例通知格式。

图5示出了具有更多详细信息和OnCall地图的另一种示例通知格式。

图6示出了根据某些示例性实施方式的共享的通知。

图7示出了根据某些示例性实施方式的用于将通知附加至事件的图形用户界面。

图8示出了根据某些示例性实施方式的通知历史列表。

图9是示出根据某些示例性实施方式的遗传算法工作流程的示意图。

图10示出了乘法(交叉)运算的示例,其中,将两个最适合的个体(即,父母)分成两个部分(切点可能是随机的),并且将结果部分组合起来,使得各个后代皆包括来自父母各方的一段。

图11示出了突变运算的示例,其中,精英种群中的一部分受到可能是随机的或者基于规则的突变。

图12示出了根据一个示例性实施方式的确定两个事件是否彼此靠近的模糊器函数。

图13示出了根据一个示例性实施方式的确定两个事件是否同时发生的模糊器函数。

图14是根据一个示例性实施方式的相关性分析结果的图形视图,示出了通过星期几(DOW)相互联系的针对所有代码的事件的平均值以及针对TYCOD=4(侵犯/性暴力)情况的选定的20%影响范围。

图15是根据一个示例性实施方式的相关性分析结果的图形视图,示出了通过一天中的时间(Hour of Day)相互联系的针对所有代码的事件的平均值以及针对TYCOD=4(侵犯/性暴力)情况的选定的20%影响范围。

图16示出了根据一个示例性实施方式的确定是否向用户示出通知的模糊逻辑函数。

图17描绘了根据示例性实施方式的统计代理(StatisticAgent)的主要工作流程。

图18示出了变量的示例基线。

图19示出了具有统计数据的异常值通知的示例。

图20示出了上面示例的示例更新后的基线。

图21示出了在地图中示出的相关事件的示例,包括用户显示事件信息(诸如识别原始事件和相关事件)的能力。

图22示出了根据示例性实施方式的相似度分析的更详细的示例。

图23示出了根据示例性实施方式的EventClassificationAgent的架构。

图24示出了事件分类的详细示例。

图25示出了事件分类的另一示例。

图26示出了根据示例性实施方式的语音到文本集成的架构。

图27示出了根据一个示例性实施方式的、ClusteringAnalysisAgent可以如何基于牵引事件的历史来帮助识别放置拖车的最佳位置的示例。

图28示出了根据一个示例性实施方式的示出了优化的路线的示例图形用户界面画面。

图29示出了根据一个示例性实施方式的时间估计代理的专用回归图形。

图30示出了根据一个示例性实施方式的示出了各小组的集结(staged)位置的示例图形用户界面画面。

图31示出了根据一个示例性实施方式的示例覆盖标准定义。

图32示出了根据一个示例性实施方式的示例位置冗余细节画面。

图33示出了根据一个示例性实施方式的区域覆盖重定位的示例。

图34示出了示例CAD系统画面,其示出了叠加在地图上的各种类型的通知。

图35更详细地示出了一些示例通知。

图36示出了示例相似度通知细节。

图37示出了示例模式通知细节。

图38示出了示例关键词通知细节。

图39是示出根据一个示例性实施方式的、CAD调度服务器(这里称为OnCall 10)、SmartAdvisor AgentHoster以及CAD调度客户端工作站之间的关系的示意图。

图40示出了根据一个示例性实施方式的SmartAdvisor AgentHoster图形用户界面画面。

图41至图51示出了根据一个示例性实施方式的SmartAdvisor和各种智能代理的类模型。

应注意到,前述附图和其中描绘的要素不一定按一致的比例绘制或以任何比例绘制。除非上下文另有说明,否则相同要素由相同附图表记表示。

具体实施方式

定义

如本说明书和所附权利要求中所使用的,除非上下文另有要求,否则下列术语应具有所指示的含义。

一般而言,基于规则的逻辑是一种计算机程序,其中,由程序员专门对决策逻辑进行编程,以基于特定类型的输入来产生特定输出。对于基于规则的逻辑的简单示例,CAD系统可能包括最近的可用响应方应响应事件的规则。

一般而言,机器学习(ML)是人工智能(AI)的应用,以向软件系统提供在不被明确编程的情况下根据经验进行学习和自我提高的能力。相反,程序员对要解决的问题进行建模,而不是对解决方案本身进行编程,并且ML模型被训练成基于样本数据(称为“训练数据”)来执行给定的任务,以便学习如何基于特定类型的输入来产生特定类型的输出。因此,机器学习对于可能具有许多可行解决方案的难以解决的问题很有用。ML解决方案可能会因人工智能而表现出非预期的行为,并且可以基于随着时间积累的附加训练数据而随着时间的推移得到改进。在本文中可以将采用机器学习的计算机程序称为智能代理。

介绍

当今,横跨范围广泛的技术和应用更加频繁地使用人工智能(AI)和机器学习(ML)。WIKIPEDIA

本发明的发明人设想在计算机辅助调度(CAD)系统中使用AI和ML来提供可以由调度方或者由CAD系统本身(例如,自主地)用以做出调度决策的实时的嵌入式分析。将AI和ML应用于CAD系统的一个明显的困难是将AI/ML的理论优势转化成具体的实现,即,为做出调度决策提供有洞察力且实际的输出,并且在持续的基础上利用调度方的反馈来改善学习和将来的输出。而且,由于调度决策通常涉及范围广泛的潜在事件类型(涉及所收集的数据类型(例如,关于事件的数据、事件结果、人员、车辆、设备、设施等)之间的复杂相互关系),因此,AI/ML实现需要很灵活,以允许并入可以被用于调度决策的新类型的数据源和新类型的输出。因此,本发明不是仅仅相当于“将AI/ML应用于CAD系统”,而是提供了可以在CAD系统中使用AI/ML来改善调度决策的特定方法。

图1是根据某些示例性实施方式的计算机辅助调度(CAD)系统100的简化示意图。除其它方面之外,可以将CAD系统100的组件在逻辑上划分成多个子系统,这些子系统包括CAD服务器子系统110、调度方子系统120以及可选的人员子系统130。示例性CAD系统100的实施方式可以(并且通常确实)具有各子系统的多个实例。例如,示例性CAD系统100可以包括:用于各应急响应方的一个人员子系统130、使得多个应急调度方能够在单个调度中心内和/或跨多个调度中心处理紧急呼叫和警报的多个调度方子系统120、以及一个或更多个数据中心处的提供诸如高可用性服务和负荷平衡之类的事项的多个CAD服务器子系统110。

CAD服务器子系统110包括:通过第一通信网络与一个或更多个调度方子系统120连接的CAD调度服务器111、通过第二通信网络与一个或更多个人员子系统130连接的移动响应方服务器112、数据库系统113(CAD调度服务器111和/或移动响应方服务112在该数据库系统113中维护各种类型的数据)、以及可选地包括利用机器学习以随着时间跟踪数据的机器学习服务114(该机器学习服务可以是CAD调度服务器111的一部分,或者可以与CAD调度服务器111分开)。如在上面通过引用并入的美国专利申请No.15/384,874中所讨论的,(例如,CAD调度服务器111)可以向可选的机器学习服务114查询分析数据。机器学习服务114可以与CAD调度服务器子系统110一起就地实现,或者可以例如基于云来远程实现。

调度方子系统120包括应急调度方用以管理与调度有关的信息的CAD调度客户端工作站121。例如,除其它方面之外,调度方可以使用CAD调度客户端工作站121来输入关于事件和应急响应方的信息、查看事件和响应方的状态、调度应急响应方以及例如通过提供更新后的事件信息来与应急响应方交互。

如在上面通过引用并入的美国专利申请No.15/384,874中所讨论的,可选的人员子系统130包括可由应急响应方穿戴的监测装置131(例如,手环型装置)和移动响应方客户端装置132(例如,运行专门配置的移动响应方客户端应用的智能电话型装置)。可穿戴监测装置131通过无线通信系统(例如,蓝牙或WiFi)与移动响应方客户端装置132通信(例如,进行“配对”)。移动响应方客户端装置132通过第二通信网络与CAD服务器子系统110通信,该第二通信网络可以包括诸如蜂窝电话/数据网络的无线通信系统。

移动响应方客户端装置132被专门配置(例如,使用专用硬件和/或特制客户端应用)成在可穿戴监测装置131与CAD服务器子系统110之间传递各种类型的信息,尽管某些类型的信息可以在移动响应方客户端装置132与CAD服务器子系统110之间交换,而将可穿戴监测装置131排除在外。除其它方面之外,如下面更详细讨论的,移动响应方客户端装置132可以将信息从可穿戴监测装置131和/或移动响应方客户端装置132本身传递至CAD服务器子系统110,例如,以使得能够监测应急响应方,并且还可以接收来自CAD服务器子系统110的信息,以在移动响应方客户端装置132上和/或经由从移动响应方客户端装置132传递而在可穿戴监测装置131上呈现给应急响应方。移动响应方客户端装置132可以提供专用图形用户界面,应急响应方可以通过该专用图形用户界面发送和/或接收各种类型的信息。

根据某些示例性实施方式,可穿戴监测装置131包括一个或更多个接口装置,以收集关于应急响应方的状态信息(本文为方便起见称为“生物特征”信息)。例如,可穿戴监测装置131可以包括心率传感器、皮肤温度传感器、皮肤电反应传感器、血氧水平传感器和/或用于收集生物特征信息的其它传感器中的一者或更多者。可穿戴监测装置131将从接口装置得到的信息发送至移动响应方客户端装置132,该移动响应方客户端装置可以被配置成处理信息和/或将信息发送至CAD服务器子系统110以进行处理。

可穿戴监测装置131和/或移动响应方客户端装置132可以包括其它类型的接口装置,举例来说,如麦克风(例如,该麦克风使得应急响应方能够向应急调度方讲话或者用于监测枪声或其它声音)、扬声器(例如,该扬声器使得应急调度方能够向应急响应方讲话或者由CAD服务器子系统110或应急调度方向应急响应方发出声音警报)、摄像头(例如,该摄像头使得应急响应方能够记录图片或视频以用于证据目的和/或发送至CAD服务器子系统110或应急调度方)、诸如振动器装置的触觉输出装置(例如,由CAD服务器子系统110或应急调度方向应急响应方发出触觉警报)、“小组紧急警报”输入端(例如,使得应急响应方能够向CAD服务器子系统110或应急调度方发出警报的按钮)、诸如加速度计或陀螺仪的运动传感器(例如,该运动传感器监测应急响应方是正在移动还是静止不动)、姿势传感器(例如,该姿势传感器监测应急响应方是直立着还是躺着)、温度传感器(例如,该温度传感器监测应急响应方正在工作的环境温度)和/或诸如GPS传感器的位置传感器(例如,该位置传感器向应急调度方提供位置信息)等等。从这样的接口装置得到的信息可以由移动响应方客户端装置132加以处理和/或被发送至CAD服务器子系统110以进行处理。

因此,例如,可以通过仅仅从可穿戴监测装置131获得的信息来监测第一响应方,或者可以通过从可穿戴监测装置131获得的信息和从移动响应方客户端装置132获得的信息的组合来监测第一响应方。

移动响应方客户端装置131可以定期地(例如,经由Web服务API)或者根据来自响应方或调度方的请求将信息发送至CAD服务器子系统110。每个配对的可穿戴监测装置132和移动响应方客户端装置131对于CAD服务器子系统110而言是唯一可识别的,并且优选地例如使用移动响应方客户端装置131与CAD服务器子系统110之间的基于HTTPS的通信来实现安全性以防止数据泄露。

CAD服务器子系统110在数据库系统113中维护各种类型的信息。例如,除其它方面之外,CAD服务器子系统110维护关于可能发生的各种事件类型的信息、关于确实发生的每个事件的信息以及关于每个应急响应方的信息。

本发明的示例性实施方式提供了虚拟调度辅助系统(在本文中有时称为“SmartAdvisor”),在该虚拟调度辅助系统中部署了各种类型的智能代理(在本文中有时称为“SmartAdvisor代理”),例如作为新的CAD系统架构的一部分或者作为现有CAD系统的插件,以对数据库系统113中的大量历史操作数据进行分析并提供各种类型的调度辅助通知和推荐,这些调度辅助通知和推荐可以被调度方或CAD系统本身(例如,自主地)用于做出调度决策。发明人预见到虚拟调度辅助系统和采用机器学习、人工智能以及实时分析的相关智能代理将提供优于传统CAD系统的显著改进和关键市场差异化因素,并且将成为更高级特征(诸如支持云的特征以及实时(甚至主动/预测)犯罪中心和“安全城市”应用)的跳板。在示例性实施方式中,智能代理在CAD服务器子系统110和/或可选的机器学习服务114中自主运行,其中各个智能代理皆被配置成:自主且主动地执行对CAD数据库中的数据的不同的调度相关分析并基于这样的分析产生调度相关通知,而无需用户查询。在示例性实施方式中,通知是由可选的机器学习过滤器按用户来进行处理的,使得仅与特定用户相关的通知被呈现给该用户,尽管另选实施方式可以以未过滤的方式将通知中的一些或全部从智能代理提供给用户。因此,智能代理和可选的通知过滤器是以发明人认为迄今为止在CAD系统中尚未获得的方式来向调度决策过程提供输入的。

图2是示出根据某些示例性实施方式的具有智能代理和可选的通知过滤器的虚拟调度辅助系统的功能模型的示意图。除其它方面之外,虚拟调度辅助系统包括四个主要子系统,即,SmartAdvisor输入子系统、SmartAdvisor公共资源(Commons)子系统、SmartAdvisor代理子系统、以及SmartAdvisor通知子系统。

SmartAdvisor输入子系统接受来自一个或更多个OnCall系统(例如,911和/或各种呼入以及在线输入系统)、桌面系统(例如,来自调度方)、管理员系统以及测试数据系统(例如,被用于训练智能代理的数据)的输入。

SmartAdvisor公共资源子系统包括允许在系统内使用智能代理的软件和硬件组件,包括允许智能代理在系统内运行并且可以访问CAD数据以及其它工具的接收器(REST)API。

SmartAdvisor代理子系统包括与各种智能代理进行通信的代理主机模块(“AgentHoster”),其中,各个智能代理皆被配置或训练成:基于对历史操作数据的特定类型的分析(例如,一个智能代理可以检测跨事件的模式、另一智能代理可以检测事件之间的相似度等等)来产生通知。虚拟调度辅助系统几乎可以支持任何类型的智能代理,并且以几乎任何希望的智能代理组合将智能代理添加至系统或从系统中去除。智能代理可以与CAD调度服务器子系统110一起就地实现和/或可以例如通过基于云的机器学习服务来远程实现。因此,可以将AgentHoster配置成托管(host)就地代理并与远程代理或基于云的代理连接,例如,将事件和其它CAD数据传递给代理并且接收从这些代理返回的通知和其它数据。图2示出了虚拟调度辅助系统中可以包括的一些可能类型的智能代理,包括:统计代理(Statistic Agent)、规则代理(Rule Agent)、模式代理(Pattern Agent)、关键词代理(Keyword Agent)、事件匹配代理(Event Match Agent)、相关性代理(CorrelationAgent)、复现(重复事件)代理(Recurrent Agent)、位置代理(Location Agent)、模板代理(Template Agent)以及相似度代理(Similarity Agent);下面,更详细地描述这些智能代理以及一些其它可能类型的智能代理。

SmartAdvisor通知子系统包括这样的模块:这些模块决定要将哪些类型的事件呈现给调度方并且响应于通知对来自调度方的反馈进行处理,例如,调整被呈现给调度方的将来事件的类型或者为重新训练一个或更多个智能代理提供反馈,以便改善智能代理的功能。所有这些子系统均可以访问数据库系统113(在此称为“SmartAdvisor数据库”,并且被描绘为四个SmartAdvisor子系统均可访问),以访问历史操作数据并存储新数据。参照图1所示的组件,可以将图2所示的虚拟调度辅助系统的组件实现为CAD调度服务器111的一部分,或者分布在CAD调度服务器111与机器学习服务114之间(例如,可以在机器学习服务114中实现智能代理中的一部分)。因此,智能代理可以是基于云的和/或集成的/本地部署(on-premises)的。

一般而言,各个智能代理皆具有特殊的“技能”,并且主动工作以不断分析操作数据和其它数据,以提供有关特定环境事件的通知。在示例性实施方式中,将CAD数据经由REST API传递至AgentHoster,该AgentHoster存储该数据用于历史目的,并且供智能代理访问该CAD数据。AgentHoster从智能代理向SmartAdvisor通知子系统提供通知,以使可以在调度方客户端装置上显示。继而,调度方可以提供反馈(例如,特定通知的效用或价值),虚拟调度辅助系统可以从该反馈中了解调度方的通知偏好,并改善其自身的性能以生成将来的通知。图39是示出根据一个示例性实施方式的CAD调度服务器(这里称为OnCall 10)、SmartAdvisor AgentHoster以及CAD调度客户端工作站之间的关系的示意图。图40示出了根据一个示例性实施方式的SmartAdvisor AgentHoster图形用户界面画面。在这里,用户可以查看智能代理(IntelligentAgent)的可用代理、输入历史、通知以及操作的其它细节。

图3是示出根据某些示例性实施方式的图2的具有智能代理的虚拟调度辅助系统的数据模型的示意图。在这里,智能代理利用本地操作数据以及其它数据(诸如预定义的客户偏好、行为以及目标)来生成通知和推荐,可以通过一组规则(这些规则本身可以是机器学习的)将所述通知和推荐进行过滤,以确定最终将哪些通知和推荐呈现给调度方。

以下是在本发明的某些示例性实施方式中使用的样本事件数据结构:

SmartAdvisor将通过发出通知(由图2中的Notifier框表示)来与其用户进行通信。在这种背景下,通知是智能分析的产物或输出,其将相关信息传送给用户。以下是根据特定示例性实施方式的建议的通知数据结构格式:

图4示出了一种示例通知格式。

图5示出了具有更多详细信息和OnCall地图的另一种示例通知格式。

在示例性实施方式中,通知可以包括用户界面(用户可以通过该用户界面提供关于通知的值的反馈),例如,LIKE/DISLIKE按钮或其它类型的评分输入(例如,高/中/低或评分为1至10)。SmartAdvisor基于用户反馈(由图2中的Feedback框表示)对通知进行分类,以预先定义用户是否愿意接收特定类型的通知。在示例性实施方式中,所使用的技术是贝叶斯(Bayesian)分类器,它使用先前喜欢和不喜欢的通知的特性作为将来通知的准则。该系统通过跟踪在先前呈现的通知中提供的用户反馈来进行学习。该过滤可以是特定于用户的,例如,分别学习各个用户的偏好。为了确保过滤器的一些随机性,对这些通知中的一小部分通知(例如,默认为5%,但可选为可由管理员来进行配置)不进行分类,使得用户可以接收到一小部分不想要/不喜欢的通知。相关通知可以作为组进行过滤,例如,如果未向用户示出原始事件通知,那么也可以不向用户示出与原始事件有关的通知。通知过滤是由图2中的DelivererManager框来执行的。

在示例性实施方式中,用户可以创建共享的通知,在示例性实施方式中,该共享的通知是便携式链接(URL),该链接可以在用户之间交换以传送相关的SmartAdvisor发现,并导致呈现网页,该网页复制原始通知信息以及可选地还复制其它链接和信息。该系统可以将共享的通知限制于系统的用户(甚至特定用户),或者可以允许与系统外部的其它用户共享这些共享的通知。图6示出了根据某些示例性实施方式的共享的通知。

在示例性实施方式中,用户可以将通知附加至事件(例如,作为特殊备注或评论),可选地还连同附加信息,诸如喜欢或不喜欢该通知的用户的列表。除其它方面之外,将通知附加至事件可以使得用户能够了解通知是如何创建的以及信息为何相关。可以将所附加的通知用作审核或标准程序审查的一部分。图7示出了根据某些示例性实施方式的用于将通知附加至事件的图形用户界面。

在示例性实施方式中,通知是与用户反馈一起存储在SmartAdvisor数据库中的,从而允许审查通知的历史。图8示出了根据某些示例性实施方式的通知历史列表。

机器学习和CAD应用

机器学习是一个广义术语,可以用许多不同的方式来加以使用。现实的应用通常集成不止一种类型的学习。有许多利用贝叶斯、神经网络以及许多聚类功能的“即用型”算法库。所有这些技术通常都涉及一些难处理的建模和数据格式化。尽管现今很多重点都放在深度学习上,但是这不是创建机器学习系统的唯一方法。也可以将遗传编程和基于规则的编程用于优化,并触发来自其它分析/学习机器的预警。

以下是一些机器学习风格的简要讨论,以及这些机器学习风格在CAD系统中的一些可能应用。

符号学派(Symbolist)学习风格是基于规则和演绎推理的。知识是由一组规则表示的,该组规则可以用决策树和随机森林来表示,并且输出是基于这些树/规则的推理的。可以使用模糊逻辑来更新规则,并且可以对这些树进行训练。在可能的CAD应用方面,符号学派学习风格涉及在系统中存储一组规则,因此相对易于实现,可以考虑现有数据或更详尽的数据集,并且可以在大型数据集上生成强大的推理结果。以下是基于符号学派学习风格的可能的实时CAD预警的一些示例:

最近两个小时的事件数量意外增加。

超出正常水平的严重事件数-警示主管。

在公立学校200米范围内发生的危险事件-可能需要疏散。

靠近敏感地点报告的火灾-需要土地安全警报。

贝叶斯学派(Bayesian)学习风格基于统计数据和概率。知识是按概率项收集的,并且事件的发生改变了其它事件的几率。学习是基于这些统计数据的。应用统计数据可以揭示那些带来结论的规则。在数据当中找到相关性可以导致现有的因果关系,而这种因果关系是可以由CAD系统来进行探索的。在可能的CAD应用方面,贝叶斯学派学习风格可以使用概率(例如,使用贝叶斯定理和马尔可夫链)来支持基于规则的智能。以下是基于贝叶斯学派学习风格的可能的CAD应用的一些示例:

在下一小时内,X区有95%的几率发生新事件-派遣巡逻小组吗?

在过去3天中,Z区的车祸发生率有相关的增加-派遣例行检查吗?

上个月,周日的家庭暴力事件有罕见增加-大多数事件发生在A区、D区以及G区。

类推学派(Analogizer)学习风格是基于组相似度、集群以及模式的。学习来自发现数据的相似度。算法寻找彼此之间更接近的事件,并且通过向该组分配相似的特性来对事件进行分类。它使用像最近邻、支持向量以及聚类这样的算法。以下是基于类推学派学习模型的可能的CAD应用的一些示例:

尝试通过对相似度进行分组来对事件进行分类。

将更近的事件分组可以带来更好的地理决策。

可以利用该分析揭示地方病事件(与地点有关)。

一旦识别出相似事件的集群,就可以用相同的方式对这些事件进行处理,或者可以将先前成功的响应应用于这些事件,并且CAD系统可以从过去的成功中学习。

进化学派(Evolutionism)学习风格是基于自然进化和遗传算法的。这本质上是自然的学习算法,即,适者生存。对可能解决方案(DNA)的种群进行评估,最适合者幸存以产生下一代。它还可以使用“交叉”和“突变”技术来创建新的替代方案。一般而言,只有两个基本要求:1)能够生成解决方案的“DNA”,以及2)能够评估解决方案。使用大量的计算机能力,遗传和进化算法可以创建独特且创新的解决方案。遗传算法可以帮助改进其它学习风格(例如,神经网络、类推等)。

遗传算法使用自然进化技术(达尔文进化论)来进化解决方案。解决方案是由DNA似的结构来表示的。将适应度函数与解决方案(DNA)相关联,并且用于评估适应性。对可能解决方案(DNA)的种群进行随机初始化和评估,最合适的个体幸存以产生下一代。可以将优化理解为朝着最优的方向进化。遗传算法可以创建独特且创新的解决方案。由于对解决方案的控制很低,因此,两个单独的运行可能会给出两个完全不同的解决方案。可以将对解决方案的限制容易地建模为针对适应度函数的惩罚。

图9是示出根据某些示例性实施方式的遗传算法工作流程的示意图。根据预定的标准,对许多连续的种群世代(从初始的种群世代开始)中的每一代进行分析,以选择和排序这些种群中的最适合的(精英)成员。这些精英成员代表了当前世代最适应的成员(如果达到预定的停止标准,那么可能是总的来说最适应的)。对于每个连续的种群世代,通过上一代精英成员的乘法(交叉)和/或突变来生成新的种群。

该算法可以通过使用DNA类推的示例来举例说明。每个种群世代皆包括一组个体DNA。初始种群可以是完全随机的。种群进化许多代。适应度函数使染色体(个体)与和解决方案的质量成比例的值相联系。该函数将定义解决方案的适应性,以选择最多调整的。种群评估通常是遗传算法中最复杂且最耗时的部分。它可以利用启发式评估并且可以容纳局部改进(例如,文化基因算法-遗传局部搜索)。精英种群被定义为最适应者的百分比(例如,20%)。然后,精英种群进行繁殖/进化,以确保最佳解决方案朝着更好的解决方案前进。这种繁殖/进化涉及乘法(交叉)和突变。图10示出了乘法(交叉)运算的示例,其中,将两个最适合的个体(即,父母)分成两个部分(切点可以是随机的),然后将结果部分组合起来,使得各个后代皆包括来自父母各方的一段。图11示出了突变运算的示例,其中,精英种群中的一部分受到可能是随机的或者基于规则的突变。

进化学派学习模型对于优化和多目标解决方案尤其有用。以下是基于进化学派学习模型的可能的CAD应用的一些示例:

具有特殊限制的车辆路线选择。

最佳响应的设施位置和容量。

重定位/调动优化。

自动调度规划。

联结学派(Connectionist)学习风格是基于人工神经网络的,并且通常被认为是机器学习中的“最新技术”,以深度学习、多级神经网络为例。以类似于大脑“突触”的方式储存学习。基本结构是人工神经网络。通过应用输入和已知输出来训练网络。这会创建“突触”,并且随着时间,该网络能够将正确的输出赋予其它输入。输入/输出几乎可以是任何类型的数据。联结学派学习风格对于分类(监督分类)可能非常有用,并且通常需要大量的训练。以下是基于联结学派学习模型的可能的CAD应用的一些示例:

图像识别。

事件分类(例如,类型、紧迫程度等)。

事件检测。

警报分类。

时间和距离测量(例如,更好的ETA)。

技术概述

以下是根据示例性实施方式的可以由各种智能代理采用的一些AI/ML技术的概述。

基于规则的逻辑

在SmartAdvisor的背景下,规则是结果为true语句或false语句的逻辑表达式。我们可以说每一个规则都具有像这样的表达式:

if(逻辑表达式)then(发出通知)

该技术通常包含符号处理和规则评估引擎,但是在一些情况下,可以将逻辑表达式以结构化的方式简化成变量和限度的列表,例如:

if(变量.运算符.限度)then(发出通知)

或者采用更通用的形式:

if((变量1.运算符.限度1)AND

(变量2.运算符.限度2)AND…)

then(发出通知)

在这里,我们仅考虑将运算符.AND.加入表达式列表,因为运算符.OR.与具有两个规则相同。

在示例性实施方式中,逻辑表达式的逻辑运算符为:

变量是将被转变成实数的系统变量,并且限度均为实数或其它系统变量。为了评估表达式,系统将变量的值和限度的值带入并执行运算符,对所有的变量限度对重复该运算。

模糊逻辑

布尔逻辑处理通常与1和0相关联的true和false,而模糊逻辑是逻辑的一种变体,其中,值可以是0到1之间的任何数字。模糊逻辑包括0和1,作为真实情况或事实的极端情况,但是也包括它们之间的各种真实状态,因此它考虑了部分真实,并且通常被用于方便例如“靠近”、“远离”、“接近”以及“像”之类的规则和事实的表达。

模糊逻辑的目标是使部分真实情况的集合与true或false的最终逻辑决策相联系。这是一种类似于人类推理的方法,因此被认为是人工智能(AI)应用的一部分:用软件表示广义化的人类认知能力,使得面对不熟悉的任务,AI系统可以找到解决方案。

模糊逻辑的发明者Lotfi Zadeh观察到,与计算机不同,人类在考虑作为是(true)或否(false)的变体的像“明确”、“可能是”、“我不知道”、“可能”、“绝对”的可能性的情况下做出决策,但是最后,人类有时必须做出“是”或“否”的决策。模糊逻辑问题的典型算法可以是:

1.定义输入变量

2.使用Fuzzyfier将这些变量变换成模糊集合

3.构造将输入映射至输出的规则集合

4.在FuzzIntelligence中实现这些规则

5.评估输入并生成输出

模糊逻辑可以以软件甚至硬件在具有各种大小和能力的系统中实现。在示例性实施方式中,将模糊逻辑系统简化成两个模块,本文中称为Fuzzyfier和FuzzyIntelligence。Fuzzyfier模块将通用输入(该输入可以以各种格式出现)变换成被输入至FuzzyIntelligence模块的一组模糊值(即,从0到1的数字)。FuzzyIntelligence模块通过基于IF-THEN规则对模糊值进行模糊推理来模拟人类推理过程,以产生逻辑输出。可以将第三个组件用于“去模糊化(Defuzzyfy)”并将逻辑输出变换成输出动作或值。

另一个有用的应用是隶属函数(Membership Function)。隶属函数允许量化语言学术语并以图形方式表示模糊集合。可以将模糊集合A在论域(universe of discourse)X上的隶属函数定义为μA:X→[0,1].

在模糊逻辑的一些优点当中包括以下简单性和可能性:按类似人类决策的方式将许多领域的复杂问题转变成简单解决方案。使用模糊逻辑的一个缺点是没有通用方法或自动学习;相反,每一个问题必须适应每一种情形。

作为使用模糊逻辑系统来匹配事件的示例,让我们考虑创建一个解决该问题的模糊逻辑引擎:

如果两个事件发生得很近并且是几乎同时报告的,则这两个事件可能是相同的。

它们可以具有相同的类型,但是有时用户会不同地描述事件,使得得到不同的类型。给定两个事件(e1、e2),它们相同吗?

因此,给定两个事件e1(x1,y1,t1,s1)和e2(x2,y2,t2,s2),其中:

·x1,x2,y1,y2–事件的所报告的UTM位置

·t1,t2–事件的日期-时间

·s1,s2–事件1和2的类型

Fuzzyfier模块必须将这些数据转变成模糊输入。为了做出最终决策,系统需要以下模糊信息:

·两个事件彼此靠近吗?

·事件是同时发生的吗?

·两个事件是相同类型?

在确定两个事件是否彼此靠近的一个示例中,设d为从一个事件到另一事件的欧几里德距离。如果d<d

在这里,我们使用

为了确定事件是否同时发生,借助于可以具有不同函数变体的相似的通用化模糊器函数(例如,像图13所示函数一样),可以将同一方法应用于时间,其中:

为了确定两个事件是否为相同类型,我们可以考虑确切的类型或类型族,甚或类型的规模。一个示例性实施方式考虑了确切的类型。

利用这三种类型的模糊信息(即,事件靠近、事件同时发生、以及事件具有相同的类型),我们现在可以公式化模糊智能(Fuzzy Intelligence)函数,例如,如以下决策树所表示的那样(可以将其转变成这些逻辑表达式):

IF(near and same_time)THEN return True(Same)

IF(not_near and not_same_event)THEN return False(not Same)

IF(not_near and same_time)THEN

IF(same_type)THEN return True(Same Event)

ELSE return False(not Same)

相同类型的其它函数可以实现为具有不同的结果。

基本统计

对于CAD操作中的事件的基本统计数据,示例性实施方式将基于以下假设:事件是以正态(高斯)分布而分布的。因此,平均值和标准偏差的概念可以帮助表示数据。还监测最大值和最小值,以及四个不同的时间框架:小时(短时间框架)、天、星期几(DOW–1到7之间的数字)以及月(长时间框架)。在示例性实施方式中,跟踪各个事件类型的以下信息:

以下是根据示例性实施方式的统计算法的概述:

给定类型为Ti的新事件ei

处理新事件

处理所有事件的统计数据-EVENT

计算计数、平均值、标准偏差以及最大值

检查事件规则–发出通知

处理类型T事件的统计数据–TYPE[t]

计算计数、平均值(AVR)、标准偏差(STD)、最大值

检查类型规则–发出通知

保存事件状态

其中:

现在,设limit为允许通知被发出的百分数,例如,limit=1.25(比期望值高25%),因此,使用上面的示例,在满足以下情况时会出现通知:

DT_N_HOUR>DT_AVR_HODBefore*limit

DT_N_HOUR>DT_MAX_HODBefore(为该小时设定新的最大值)

DT_N_DAY>DT_AVR_DOWCurrent*limit

DT_N_DAY>DT_MAX_DOWCurrent(为该DOW设定新的最大值)

相关性统计

这是一种通过在一组不相关事件的简单统计分析中识别异常值来检测变量之间的可能相关性的简单算法。该研究将这种分析应用于数据样本,并且只要有相对大量的数据可用就可以进行处理。

给定一组不相关的事件E={e

假定各个特性的各个值皆独立于另一特性的值,尽管各个特性皆可以具有其自己的概率分布。

例如,设c

p(c

如果特定类型的事件在某天或某周更为常见,那么该类型的事件与所述周的该天之间存在相关性。如果我们将该天发生该事件的概率与该天发生的所有事件的概率进行比较,就可以跟踪这种趋势。表明特性c

p(c

这个推理是贝叶斯推理的直接应用,其中,作为执行时间的先验概率,我们直接计算P(c

在示例中,假设在周末完成一事件可能比其它天短;我们可以说完成事件的时间与周末可能存在相关性。

上述所有关系都需要数据样本中的显著性水平(level of significance)。为了识别这些现象,可以限制小的数据集。

从算法上讲,给定一组事件以及相关联的变量,识别可能相关的变量对。如果该对变量数据的发生频率比预期的高,则观察到相关性。

事件变量出现在事件中的概率是出现该变量的事件数与可能事件总数的比率。因此,如果变量影响事件的发生,则以该变量为条件的概率将大于不存在该变量的情况下的概率。通过比较这两个概率,我们可以识别出可能的影响:

在事件数据集E={e

其中,e

针对c

设p(c

如果p(c

则c

事件的变量之间有影响的主要证据是在给定因素的存在下是否存在意外行为。假定事件的发生遵循随机模式。当随机性假设未被证实时,变量之间的影响被识别出。软件寻求识别这样的重复行为,这些重复行为脱离那些可能被认为是预期的行为。我们想要识别坚持表现在其它事件的行为均值之外的事件集合,即所谓的“异常值”。

例如,我们可以检验以下假设:交通事故在周末发生的次数更多,我们可以将一周中某天发生交通事故的似然性与当天发生的所有类型事故的频度进行比较。如果存在星期几的影响,则这一天的概率将明显更高。请注意,该方法与事件的绝对数量相关联,即,必须有大量的事件,比率才具有某种统计意义。该技术类似于被称为“购物篮分析(MarketBasket Analysis)”的技术,其为超市的采购分析中寻找产品采购关联时的常用技术。识别不寻常的特性和消费模式。

这种类型的研究允许分析为事件记录的任何两个变量的相关性。但这不能与变量之间的因果关系混淆。这意味着两个变量相互联系的事实并非一个变量是另一变量的原因的证据。常见原因既影响变量又影响原因相关性。

为了举例说明应用,我们将分析典型紧急医疗系统的历史数据。该系统负责接听市内的紧急呼叫。根据预定义的投诉列表类型(TYCOD)对各个呼叫进行了分类。让我们看一下星期几、一天中的时间以及位置对于这几种类型事件的影响。除了投诉类型和日期外,还记录:地理位置精确的服务地点、到达时间、事件类型的子分类、服务小组等。

一项使事件类型(TYCOD)与星期几(DOW)之间相互联系且影响因子为20%的示例性研究识别出以下影响:

在D.O.W=01,TYCOD=04的影响[01,3%]高于平均值[057,2%]

在D.O.W=07,TYCOD=04的影响[01,3%]高于平均值[026,2%]

在D.O.W=01,TYCOD=23的影响[01,4%]高于平均值[035,6%]

在D.O.W=07,TYCOD=29的影响[05,2%]高于平均值[023,3%]

在D.O.W=01,TYCOD=30的影响[02,2%]高于平均值[025,9%]

其中:

结果报告说,在周末(DOW)(其中1=周日,7=周六),侵犯、用药过量、交通事故以及创伤的事件数量增长超过平均水平。例如,对这些事件的更深入调查可能表明,它们与周末饮酒量增加相关联。

这可能是导致这些天发生更多事故的常见原因。在示例性实施方式中,相关性分析将表明存在待调查的原因,但并未表明是何原因。该分析还为这些代码中的各个代码提供了图形视图。例如,图14示出了通过星期几(DOW)相互联系的针对所有代码的事件的平均值以及针对TYCOD=4(侵犯/性暴力)情况的选定的20%影响范围,图15示出了通过一天中的时间相互联系的针对所有代码的事件的平均值以及针对TYCOD=4(侵犯/性暴力)情况的选定的20%影响范围。

可以观察到,当DOW=1和7时,事件发生的频度大大增加,从而指示了相关性。

自然语言处理(NLP)

自然语言处理是指使用自然语言与计算机进行交流,这与结构化命令语言相反。这是人工智能的领域,并且涉及阅读和写作。对于这种技术注解,我们将应用限制于阅读文本并据此做出决策,在这项研究中,我们不考虑语音的使用,尽管这是NLP的一部分。

NLP通常被分成NLU(自然语言理解),即理解文本输入;以及NLG(自然语言生成),即产生有意义的短语和句子。我们将仅研究NLU。

语言在形式和结构方面非常丰富,因此理解自然语言非常困难。有许多层次的理解:

词法(Lexical)–是非常原始的,词层面的,并且考虑词属于语言(“bread(面包)”是英语单词)

语义(Semantic)–也与语言相关联,并且考虑了词的含义。(“面包”是一种用面粉制成的食物,通常会进行烘烤)

句法(Syntax)–考虑短语中词的使用。(面包是美味的意味着“面包”具有“美味”的特性)

指代(Referential)–考虑使用代词的指代词(面包是美味的。它是用面粉制成的–它指代面包)

相同的短语/词可以具有多种解释,并且可能导致多种含义和分析。

NLP通常有五个步骤:词法、句法/解析、语义、语篇(Discourse)以及语用(Pragmatic)。

词法分析-它涉及识别和分析词的结构。语言词典是指语言中词和短语的集合。词法分析将txt的整个语块划分成段落、句子和词。

句法分析(解析)-它涉及对句子中的词进行文法分析,并且按示出词之间关系的方式排列这些词。英语句法分析器拒绝诸如“The school goes to boy”之类的句子。

语义分析-它从文本中得出确切含义或字典含义。检查文本是否有意义。这是通过在任务域中映射句法结构和对象来完成的。语义分析器忽略诸如“热冰淇淋”之类的句子。

语篇整合-任何句子的含义均取决于就在其前面的句子的含义。另外,它还带来了紧连着的句子的含义。

语用分析-在此期间,所讲的内容根据它的意思被重新解释。它涉及衍生需要真实世界知识的那些语言方面。

一些AI应用可以在词法级别实现,而其它一些AI应用则需要句法和语义理解。

文本模式识别

在文本中查找模式的可能性之一是,每当正则表达式出现在文本上时,就将该表达式模式定义为突出显示。模式中的正则表达式由一个或更多个文字字符、运算符以及其它文本结构组成。大多数编程语言都有用于提取与正则表达式相匹配的文本的工具。正则表达式是用一组构造来描述的,并且当输入文本与这些表达式相匹配时,我们便具有了期望的模式。

以下是用于文本模式识别的一些示例性REGEX表达式:

关键词识别

在文本中查找模式的可能性之一是定义一组预定义的关键词,并且当在事件描述中找到这些关键词中的一些关键词时,系统就会向例如需要该信息的特定用户生成适当的通知。

通知似然性分析

用户反馈(例如,拇指朝上或拇指朝下)将教导虚拟助手是否应将类似的通知发送给用户。换句话说,系统可以估计通知的似然概率,例如,基于以前的信息,用户是否会喜欢该通知。一种这样做的示例性方式是通过贝叶斯分类器来进行,如下所述。

分类器的结果是,在给定来自用户的针对该用户迄今为止已经收到的通知的先前反馈信息的情况下,给出(通知的)似然性的概率的估计。我们还可以估计不喜欢该信息的概率。

设PL(Ni)为似然性的概率,其中,接近1.0意味着用户很可能喜欢该通知。基于以前的不喜欢,设PD(Ni)为用户不喜欢该通知的概率。利用PL(Ni)和PD(Ni),我们可以使用模糊逻辑,并且创建模糊智能逻辑以决定是否向用户示出通知,例如,如图16所示。

示例性实施方式还包括一些意外发现,例如,通过向用户提供一些随机的少量通知,而不论分类。这使用户有机会检查他或她的偏好。

贝叶斯分类器

贝叶斯分类器是一种被用于自动分类通知的技术。它基于贝叶斯统计定理,该贝叶斯统计定理根据另一个相关事件已经发生的先前知识来估计事件的条件概率。在这种情况下,我们可以估计用户会喜欢该通知的概率,也就是说,假设使用一组参数T(通知描述)来描述该通知,则该通知是类C。换句话说,我们将基于用户在其它注释中给出的先前喜欢,来估计该用户喜欢该通知的似然性。

该技术类似于在电子邮件中对垃圾邮件进行分类或在收件箱中对重要邮件和促销电子邮件进行分类的技术。它会寻找某些词的出现频度并做出预测,用户可以利用新的反馈校正该预测。

设贝叶斯定理表达为:

其中:

P(C|T)是给定一组参数T的类的条件概率,即想要的结果;

P(T|C)是类C中给定参数的条件概率(通过先前发生的历史进行估计);

P(C)是该类的概率,也是根据以前的事件进行估计的;

P(T)是给定参数出现的概率,也是根据以前的事件进行估计的,因为参数集由单个项组成:

T={W

对于通知,我们例如可以具有:通知类型、通知位置、通知文本(单词集)等。

P(T|C)可以表达为:

P(T|C)=P(W

以及

P(C|T)=P(W

可以将实现构造成两个阶段:训练和测试。在训练阶段,解析、消除被拒绝的词短语、消除被拒绝的词,并对各个类的剩余者进行计数。在测试阶段,接收文本输入、解析该输入,并计算出该输入属于各个类的概率,从而选择最可能的类。

概率是通过对词进行计数来估计的,如:

以及

事件模式分析

事件模式分析目标的特征是突出显示共享相似模式的事件。有多种方式来定义这种背景下的模式,但是一个示例性实施方式将考虑两种不同的方法:重复事件识别和事件相似度。

重复事件识别

该特征在历史数据库中查找具有相同地点和类型的重复事件。目标是找出屡犯者,而相当简单的犯罪可能会加剧其后果,如家庭暴力等。

对于该通知,我们可以使用具有事件的模糊逻辑比较的相同的事件匹配技术,其中距离的容差非常小且类型相同,并且在分析中不考虑日期。

事件相似度

这是在评估短文本并评估它们的距离(或者换句话说,它们的相似度)方面所涉及的技术。如果两个文本涉及相同的事件,则可以认为它们是相似的。该定义可以简单地考虑文本的句法(文本中使用的词和术语)或者词和文本的语义(含义)。这将由NLP(自然语言处理)技术来进行探索,以在比较事件和社交帖子时找到模式。一个示例性实施方式将余弦文本相似度定义为0(无相似度)和1(非常相似或相当)之间的值。

在处理模糊逻辑比较时也可以考虑距离,比如靠近、较远、接近、较早、较晚等。例如,给定两个特征集合:

x

其中,d是特征集合的维数,可以将这两个集合之间的关系评估为距离。可以将距离用于度量连续的特征,而定性变量可以使用相似度的概念。

通用距离公式称为Minkowski距离,并且表达为:

如果n=1,则该公式表示曼哈顿距离或“城市街区”距离,而如果n=2,则该公式表示欧几里德距离,如下表所示(来自http://www.molmine.com/magma/analysis/distance.htm):

余弦文本相似度

为了定义一个短文本描述(d1)到另一短描述(d2),我们可以使用向量距离的一些类比。一个流行的量度是欧几里德距离,它是由两个向量之间的差的平方的根来定义的:

其中,A·B考虑两个向量的内积,从而给出该量度的唯一实值。为了比较两个量度,我们需要定义尺度。向量之间的具有其自身尺度的另一个很常用的量度是两个向量的角度的余弦,其可以表达为:

如果cos接近1,则两个向量彼此靠近;而如果cos为零,则两个向量彼此分离;这为相似度的百分比提供了一种很好的方法。将各个短文本描述视为词序列:

d={w

那么

d

d

以及

d

或者

如该式示出,它们共享的词越多,它们就越接近。但是在该描述中,不能将词视为同等重要。例如,在警方的描述中,嫌疑犯的特征比武装抢劫或被盗物品清单更为重要。为了考虑词之间的这种差异,一个示例性实施方式在该求和中使用TF-IDF算法作为权重(f

TF-IDF算法

TF-IDF代表“词频-逆文档频度”。该指数倾向于从短文本中过滤不常见的词语:

tfidf(w,d,D)=tf(w,d)·idf(w,D)

其中:

tf(w,d)-表示文档中词w的频度;以及

idf(w,D)-度量整个文档集合(D)中的逆词(w)频。

tf(w,d)的值为零(如果词未出现在文档中)或者大于1,并且我们可以假设1并单独地考虑每一个词。平方根和对数函数的使用有助于提高分布之间的比率,并提升频度较低的词语:

示例性智能代理

发明人设想了可以并入本系统的各种类型的智能代理,可能地,为不同的客户部署了不同的智能代理和不同的智能代理类型。代理主机通常允许根据需要或期望添加、去除以及替换智能代理。在无限制的情况下,以下是发明人设想的一些示例性智能代理。

可以包括StatisticAgent以监测系统的操作变量并通知异常值。异常值是其值超过期望限度的变量。在示例性实施方式中,当预定义了允许的限度时,通过在训练时段期间对变量进行测量来确定期望值。监测操作变量的主要动因是正常操作应预期保持基本稳定,即,所监测的变量的期望值应当保持在可接受的限度内,因此,当变量越过该限度时,操作中可能正发生一些异常,因此必须发出警报。操作越稳定,偏差警报就越重要,这是因为它们可能会反映出该操作中发生了意外情况。如果操作非常不稳定,即,事件复现的次数很少,那么偏差警报的相关性就很小,这是因为该操作很自然地无需外部理由即可改变发生次数。

出于以下讨论的目的,定义了以下术语:

类别变量是按照类别表达的操作变量。例如,事件类型是类别变量。通过在一段时间内对变量进行计数并观察所有类别中该类别的频度来监测类别变量。

连续变量是用实值表达的操作变量。例如,到达事件的时间以分钟为单位。连续变量的监测也可以通过估计一段时间内的平均值来完成。

异常值是对超出某一期望限度的被监测变量的量度。期望值是通过在训练时段期间对变量进行测量来确定的,并且允许的限度是预定义的。

训练是这样的时段,在该时段期间,监测变量以定义各个类别的期望值(如果是分类别的)或平均值(如果是连续的)。

检查-在训练时段之后的验证变量是否存在异常值的时段。该时段可以无限重复。

阈值是限值,其表达为变量被视为异常值的百分偏差,例如,阈值50%意指如果检查期间的频度超过期望值的50%,则有异常值。

支持(Support)是变量的被认为与统计相关的最小频度。如果变量频度低于支持值,则不释放异常值。支持值的使用是为了避免从非常少见的事件中进行估计统计。

在示例性实施方式中,将变量分类成两种类型:类别变量(其具有按类别定义的值,比如事件类型),以及连续变量(其值范围从最小到最大连续变动,比如到达事件的时间)。各个变量将进行不同管理。类别统计将通过每单位时间的事件数来度量,例如以小时度量。应注意,可以将连续变量分类别进行监测,例如,通过将它们组织成多个类别。

在示例性实施方式中,各个变量是由以下数据结构定义的:

可以将时段标准化为小时、班次、天、周、月以及按时间表达的任何其它时间,如下:

以下是示例性实施方式中的CAD操作的被监测变量:

在示例性实施方式中,StatisticAgent具有三个主要类,如下:

StatisticAgent–主类,其存储CategoricalVariable列表以进行监测,并且连续接收事件、解析所监测的变量并将它们传递给被监测变量。当变量识别出异常值时,它们发出返回给代理的通知。

CategoricalVariable-其主要关注点是监测变量。它自动识别各个类别并监测其发生。在初始学习阶段期间,将输入用于训练定义基线的模型,该基线是期望值,针对被定期检查的所监测的变量检查该期望值。

CategoricalVariableStats–该类保存类别和频度的列表。

在示例性实施方式中,通过添加被监测类别变量的列表(建议为CAD操作的被监测类别变量的表)来设置代理。在该设置之后,如果接收到事件,则代理针对每一个事件连续遵循主要工作流程。图17描绘了根据示例性实施方式的统计代理(StatisticAgent)的主要工作流程。首先,外部呼叫方按顺序输入一系列事件,并且作为返回得到通知列表(方法-Trigger)。然后,代理从事件中提取各个类别变量的特征,并将特征数据发送至监测该类别变量的对应CategorialVariable,向它们请求可能的异常值的列表(方法–getOutliersNote)。在训练阶段期间,监测器(Monitor)存储特征并计算各个变量的频度(方法–Monitor.Add)。在训练阶段结束时,将监测器克隆至基线(方法–Monitor.Close)。将对基线进行排序并计算频度(Baseline.SorteByCategory、Baseline.setFrequency)。在各个检查周期期间,将特征存储在监测器(方法-Monitor.Add)中。在检查周期结束时,经由检查(Check)方法将监测器与基线进行比较,并且可以发布一组异常值(方法-Check)。在结束时将异常值变换成通知,并将这些通知返回给呼叫方,作为输出(方法–GetNotes)。

图18示出了变量的示例基线。

图19示出了具有统计数据的异常值通知的示例。

在该示例中,MISCELLANEOUS事件增加了68%(预期24个事件,登记了40个事件),并且在该时段(24小时)内的GARBAGE MISSES增加了60.8%(预期为7,测得为12)。同一时段内的SIGNAGE REPAIR也减少了71.3%。生成了并入该周数据的更新后的基线,这是因为算法是不断学习的。图20示出了上面示例的示例更新后基线。

以下是主要统计通知的一些示例:

以下是异常值通知的一些示例:

可以将统计图呈现给用户。统计图以图形形式显示统计分析的异常值。在示例性实施方式中,该图形示出了期望值和实际值,并且识别出为什么这是异常值。一旦学习阶段完成,基线图就可用于在单独的通知中示出期望值。如果项目数量非常大,则可以显示有限数量的项目,例如,前20%或通过限制条的数量。

可以包括RuleAgent以监测涉及操作变量的一些用户定义规则,并且在规则得到验证时发出通知。在示例性实施方式中,可用操作变量的列表是预定义的,并且可以包括统计学的被监测变量(参见上面的StatisticAgent)。限度和阈值可以是固定值,或者可以是与系统变量的组合。规则以及与规则相关的通知是由用户定义的。在示例性实施方式中,规则通常被如下定义:

如果(逻辑表达式),则发出通知

以下是示例规则和通知配置:

如果((最近一小时的抢劫次数)>5)

则(“向警察局长警告在最近一小时内有超过五起抢劫”)

以下是规则预警通知的一些示例:

以下是规则单独通知的一些示例:

可以包括PatternAgent,以在事件描述中识别预定义的模式表达式(例如,类型、描述、备注、评论、位置),并且向用户发出通知以及与该通知一起的相关联的动作。模式表达式描述了数字、字母和/或符号的规定配置,例如,正则表达式。该动作可以在其中并入所识别的模式,例如,与外部动作有关的URL/链接或API调用。PatternAgent作用于命名模式的列表,该命名模式具有相关联的正则表达式以及与该正则表达式相关联的动作。在示例性实施方式中,提供了一组预定义的表达式,但是用户可以使用正则表达式语法自由创建他们自己的表达式。存在表示电话号码、电子邮件、主题标签(hashtag)、车牌号、社会保险号等的正则表达式。

以下是模式预警通知的一些示例:

以下是单独模式通知的一些示例:

可以包括KeywordAgent,以检测事件描述中的关键词,并且向用户警示与这些关键词有关的动作。在示例性实施方式中,必须逐字地检测关键词。关键词上的每一个词必须存在,并且不允许错字。这些词可能以不同的顺序出现,并且它们仍然被考虑。词不区分大小写。还考虑了部分词,因此,例如,关键词“Manifest”将与事件描述中的词“Manifestation”匹配,而关键词“Manifestation”不会与事件描述中的词“Manifest”匹配。在该阶段不考虑错字和同义词,然而另选实施方式可以考虑错字和同义词,例如,使用简单的词接近度量度来捕获错字。同义词可以与已有的自然语言处理(NLP)工具一起使用。

以下是匹配关键词和不匹配关键词的示例:

关键词:主广场示威运动

动作:向市长预警(电话2034-0293)

匹配:主广场上的示威运动

主示威运动广场

主广场上没有示威运动

不匹配:主广场上的盛大游行

中心广场示威运动

2000人出现在主广场上

以下是关键词预警通知的一些示例:

以下是单独关键词通知的示例:

最近在事件[EventID]中报告了以下关键词[keyword list]。需要采取的行动:请告知侦探Joe(435-09029)

可以包括EventMatchAgent,以识别当前开放的事件当中的相似事件,即使描述(例如,事件类型、位置、日期)略有不同。在示例性实施方式中,该比较使用模糊逻辑方法,该方法可以容纳一些变化,从而识别一些微小的变化。模糊逻辑在比较中考虑了像“接近”和“靠近”的词语。它将这些“模糊”词语转变成比较逻辑。在示例性实施方式中,定义了模糊逻辑容差参数[Fuzzy],例如默认为25%。

以下是匹配事件预警通知的示例:

图21示出了在地图中示出的相关事件的示例,包括用户显示事件信息(诸如识别原始事件和相关事件)的能力。

可以包括CorrelationAgent,以分析一对变量及其与事件发生的可能相关性。当存在这些变量的组合可能正对事件的发生有贡献的某种概率时发出通知(应注意,这是相关性,而不一定是因果关系)。在示例性实施方式中,对统计数据进行估计的单位是每单位时间(以小时为单位)的事件数,并且通过对事件进行计数来度量变量,因此,对每一个新事件进行计数和度量以定义期望值和异常值。在示例性实施方式中,所使用的技术被称为“先验”分析,并且为CorrelationAgent定义了以下内容:变量1、变量2、检查时段、阈值以及支持的列表。变量1和变量2是要分析的操作变量。检查是在训练时段之后的验证变量是否存在异常值的时段。阈值是被视为异常值的极限概率,例如,50%意指如果检查期间的频度超过期望值的50%,则存在异常值。支持是被认为相关的最小频度。如果变量频度低于支持值,则不测量异常值。提升(lift)是期望值的增加百分比。提升必须高于要考虑的相关性的阈值。

以下是相关性预警通知的一些示例:

以下是单独相关性通知的一些示例:

可以包括RepeatedEventAgent(有时称为RecurrentAgent),以识别过去(也许重复)在指定时间跨度[TSPAN,例如,TSPAN=180(6个月)或者TSPAN=365(1年)]内发生的事件,并且向调度方警告这可能是复现事件。有时,简单的事件(例如,家庭骚扰)因其复现而可能扩展成更大的事件,并且在这种情况下,有时重要到需向现场人员警告。有时,调度方喜欢指派可能已经了解事件的小组。提醒过去发生过的事件可能对指派响应小组很有用。该代理需要访问可能存储在CAD系统中的过去事件。在示例性实施方式中,搜索是根据位置和事件类型来完成的。在示例性实施方式中,RepeatedEventAgent考虑确切位置(例如,相同的家庭住址)而不是近似的位置,然而另选实施方式可以扩大搜索(例如,相同的邻居)。

以下是重复事件预警通知的示例:

可以包括SimilarityAgent,以基于事件的描述(例如,类型、描述、备注、评论、位置等)来寻找与当前事件(例如,输入到系统中的新事件)相似的事件。两个相似的事件共享相关信息,尽管它们可能没有相同的类型、日期或位置。在示例性实施方式中,该相似度指数考虑了事件描述和备注中使用的词。在示例性实施方式中,算法会评价不太常用的词,因此当它们出现在不同的事件中时,相似度指数增长。代理通过分析事件语料库中使用的词的频度来进行学习,并且它在不断地学习和更新词列表并创建字典模型。在示例性实施方式中,在该阶段,不考虑错字纠正或同义词,虽然另选实施方式可以考虑错字和同义词。集群可以帮助找到地理信息和其它形式的数据中的模式。实施方式可以在地理分布中找到模式,并且在分析中包括其它信息。聚类技术可以帮助找到相似事件的“集群”。将文本/关键词分析用于推断事件之间潜在的不明显关系。通过仪表板/监测器(或OnCall通知),系统可以显示潜在的链接事件以及可能与用户相关的其它信息。当一模式变得频繁时,可以为SimilarityAgent扩展主要事件预测模块/工作流程。

在示例性实施方式中,为SimilarityAgent定义了以下内容:相似度阈值、拒绝词列表、分词器(Tokenizer)列表和拒绝数字。相似度阈值[similarity]是从0到1的指标,在该阈值之上,两个描述被认为是相似的,例如,默认[similarity=0.8]=80%。拒绝词列表(文件)是分析中未考虑的词的列表,通常是非常常见且没有相关信息的词。分词器列表是被用作词分隔符的符号的列表。拒绝数字(是/否)定义了是否拒绝描述中的所有数字(默认=是)。

在示例性实施方式中,SimilarityAgent基于tf-idf(例如,https://en.wikipedia.org/wiki/Tf%E2%80%93idf)和两个事件的余弦相似度(例如,https://en.wikipedia.org/wiki/Cosine_similarity)的组合,其中,分析事件描述中的词的频度,不太常用的词被认为更重要,然后使用余弦相似度来确定最终相似度得分。在示例性实施方式中,用户可以标记特定的关键词,例如,感兴趣的位置、人、地点等。如果出现这些关键词,则发出通知。实施方式还可以在推文(tweet)和其它社交媒体文本消息中寻找相似度。可以将搜索条件(例如,主题标签或位置)用于选择此类社交媒体文本消息以进行分析。

以下是相似度预警通知的一些示例:

以下是示例单独相似度通知:

图22示出了根据示例性实施方式的相似度分析的更详细的示例。在这里,SimilarityAgent包括经训练的分类器,该分类器将新事件的细节与过去事件(在图中示出为从https://data.louisvilleky.gov/获得的“列出测试事件”)的细节进行比较,并且识别被经训练的分类器认为具有至少80%的相似度的相关事件。

可以包括EventClassificationAgent,以基于事件描述和其它可用数据来定义事件代理、类型、优先级或紧迫程度。在这里,自动分类器是利用历史数据(例如,事件的预分类集合)进行训练的。EventClassificationAgent可以使用反馈来从错误中学习并随着时间改进分类。在无限制的情况下,EventClassificationAgent支持的一些示例性应用包括:加速呼叫接听过程、在多代理站点中选择代理、定义传入消息的紧迫程度、检测传入消息的情绪以及自动事件创建(预创建)。

图23示出了根据示例性实施方式的EventClassificationAgent的架构。

该示例性实施方式使用以下贝叶斯分类器(条件概率):

P(A|B)=P(B|A)P(A)/P(B)–贝叶斯定理

更具体地,事件分类基于以下内容:

给定文本(T),类(C)的概率

给定文本(T)中的词(Wi),类(C)的概率

P(C|T)=P(T|C)P(T)/P(C)

P(C|T)=P(W1|C)*P(W2|C)*...P(T)/P(C)

训练=估计P(Wi|C)=为各个类创建词袋(bag of words)。

测试=为各个类计算P(C|T),然后按概率对结果进行排序。

不断学习=回顾词袋和统计。

图24示出了事件分类的详细示例。

图25示出了事件分类的另一示例。

EventClassificationAgent可以包括语音到文本集成,用于自动分类通过基于语音的系统接收到的事件。图26示出了根据示例性实施方式的语音到文本集成的架构。

可以包含ClusteringAnalysisAgent,以识别事件的集群。在无限制的情况下,一些示例性应用包括:服务中心的最佳定位(例如,帮助放置服务中心以改善响应时间;可以应用于巡逻车、救援以及应急车辆;使事件与服务中心之间的距离最小化)、在事件当中寻找模式(例如,在数据中找到事件密度具有给定特征的区域;识别并评估事件在地图上的传播,定位一类事件比较流行的区域)以及监测地方病现象(例如,像登革热和寨卡病毒的疾病通常与存在的死水有关,并且对事件集群的形成的持续监测可以成为这种地方病的早期指标)。

图27示出了ClusteringAnalysisAgent可以如何基于牵引事件的历史来帮助识别放置拖车的最佳位置的示例。

利用类似的方法,可以将类似的技术应用于计划EMS、警察小组、公用事业、消防队、维护小组以及其它类似ICAD的资源。

可以包括RouteOptimizationAgent,以分析给定的事件集合并提议访问最大事件数的路线。代理可以不断优化路线并建议特定小组的最佳分配。调度方可以接受该提议,并手动将事件指派给小组。在无限制的情况下,可以将路线优化用于按照距离或时间来最小化路线(例如,以节省行进时间)、使一个班次(例如,6小时)中适合的事件数量最大化、在给定位置(例如,基站)处开始和结束、根据事件类型安排事件以采取平均执行时间。路线优化可以考虑从一个事件移动至另一事件的时间(诸如从交通方面,若可用的话)。

为了深入了解路线优化问题,假设有30个任务要做,但只能完成10个。然后的问题是如何选择要以选定顺序完成的最佳的10个任务。可能性的数量=30x 29x 28x 27x 26x25x 24x 23x 22x 21=1090亿个替代方案。即使花费了0.0001秒钟来评估每种可能性,选择其中10个的最佳集合也将花费345年。另选方法可能是始终选择最靠近的任务(例如,可以只需选择前10个),但这可能不会导致完成最佳或最重要的10个。因此,示例性实施方式应用诸如本文所讨论的遗传算法来选择最佳路线。在无限制的情况下,一些算法考虑因素包括:使事件的重要性或其关联的收益最大化;如果所有事件同等重要,则使已执行事件的数量最大化;使路线运输成本最小化;通过使用最便宜的资源使资源成本最小化;安排事件的执行在给定位置处结束或在给定位置附近结束;将执行事件的时间量限制成给定的班次;跳过没有可用资源的事件;考虑交通和影响路线的其它信息;考虑费用和服务水平协议(SLA);以及对小组和事件类型限制进行建模。

图28示出了优化的路线的示例图形用户界面画面。

可以包括TimeEstimationAgent,以提供诸如估计到达时间(ETA)和完成事件的时间之类的时间估计。时间估计可以基于专门的回归分析(例如,DNN),该专门的回归分析基于诸如而不限于一天中的时间、事件类型、小组类型、星期几、位置信息(例如,出发点和/或目的地)以及其它可用/相关信息(例如,天气、交通等)此类的事项,如图29所示。

可以将历史事件用于训练回归服务,其可以不断地更新以改进时间估计。向调度方通知更好的时间估计。

可以包括AreaCoverageAgent,以便为定位现场小组提供位置和重定位建议,诸如基于可用小组的数量、到达事件的最大时间/半径以及预期的覆盖冗余的此类事项来迅速响应将来事件。可以基于趋势、历史数据以及外部相关信息来预测将来事件。继而,可以预测最可能需要小组的位置。在这里,使用机器学习来帮助找到最佳和接近最佳的解决方案,以便使覆盖和冗余最大化并减少响应时间。AreaCoverageAgent可以使用聚类分析、路线优化分析以及时间估计分析,作为位置/重定位确定的一部分。输出可以包括站位置以及站位置之间的小组分布。

图30示出了示出各小组的集结位置的示例图形用户界面画面。可以将问题建模为最大覆盖位置问题,例如,给定与多个小组相关联的设施以及该设施所覆盖的半径R,使覆盖各个事件/需求的小组的数量最大化,并且使设施上的小组数量最小化。

图31示出了示例覆盖标准定义。在该示例中,设施F1利用一个小组覆盖需求d3、d4、d6(3个需求),而设施F2利用两个小组覆盖需求d1、d2、d3、d4、d5、d7。在该示例中,服务质量不同,例如,事件d3和d4是由3个小组覆盖的;事件d1、d2、d5以及d7是由2个小组覆盖的;事件d6是由1个小组覆盖的。

需求可以用空间中的离散点来表示。设施位于选定的需求点。各个设施可以具有一个或更多个小组。各个需求至少由一个小组覆盖着(除非没有足够的资源)。这些小组是由该设施的到达半径内的所有需求所共享的。代理可以考虑线性距离(Euler)或曼哈顿距离。到达需求意味着到达需求中心(不是其用于简化模型的半径)。这种方法倾向于将更多的小组放置在存在更多事件的地点,并将需求的冗余小组数量限制成服务质量指标。设施的数量和位置是算法的输出。在定位期间,该算法可以包括/排除新设施。在重定位期间,设施的数量和位置通常是固定的。每次执行重定位时,可以提议对小组分布进行一些改进。

在示例性实施方式中,该算法的输入包括需求=N个位置的向量(X、Y、事件)、半径R、每个需求的期望小组(例如,最大U=3)以及小组数量P。该算法的位置输出可以包括使需求覆盖最大化的设施向量、每设施的小组数量以及需求的覆盖列表。算法的重定位输出可以包括保持最大需求覆盖的小组的重定位,以及需求的覆盖列表。

图32示出了示例位置冗余细节画面。

图33示出了区域覆盖重定位的示例。

其它设想的智能代理包括:安全代理,该安全代理分析数据以识别安全问题或改进(例如,何时或在什么条件下警务人员最有可能受伤);健康(well-being)代理,该健康代理分析人员数据(例如,工作时间、休息时间、生理参数等)来识别疲劳或压力;工作负荷代理,该工作负荷代理分析数据以识别工作负荷问题或改进(包括计划);小组推荐代理,该小组推荐代理分析数据以针对给定事件推荐最合适的小组;自然语言和社交流分析代理,该自然语言和社交流分析代理生成基于上下文的通知或向其它代理提供输入;预测性警务代理,该预测性警务代理分析数据以识别潜在的犯罪活动,并为主动和被动反应提供推荐;以及各种自动化代理,诸如用于进行自动指派和调度决策的代理。

图34至图38示出了根据一个示例性CAD系统实施方式的一些示例性图形用户界面画面。图34示出了示例CAD系统画面,其示出了叠加在地图上的各种类型的通知。图35更详细地示出了一些示例通知。在这里,示例通知包括来自SimilarityAgent、PatternAgent以及KeywordAgent的通知。用户可以点击通知以便查看通知的细节。图36示出了示例相似度通知细节,其指示事件之间的相似度阈值确定(即,81.6%的相似)以及匹配该相似度的前几个词(即,PRIVATE、PROPERTY)。图37示出了示例模式通知细节,其指示基于电话号码找到了模式并且提供了事件细节和建议的动作。图38示出了示例关键词通知细节,其指示在事件中识别出的关键词并且提供了事件细节和建议的动作。

下表示出了根据一个示例性实施方式的在各种智能代理中使用的算法类型:

图41至图51示出了根据一个示例性实施方式的SmartAdvisor和各种智能代理的类模型。

杂项

应注意,为了方便起见,在上面使用了标题,并且不应将其解释为以任何方式限制本发明。

本发明的各种实施方式可以至少部分地采用任何常规计算机编程语言来实现。例如,一些实施方式可以采用过程化编程语言(例如,“C”)或者采用面向对象编程语言(例如,“C++”)来实现。本发明的其它实施方式可以被实现为预配置的独立硬件元件和/或预编程硬件元件(例如,专用集成电路、FPGA,以及数字信号处理器),或其它相关组件。

在另选实施方式中,所公开的装置和方法(例如,参见上述各种流程图)可以被实现为供与计算机系统一起使用的计算机程序产品。这种实现可以包括固定在诸如计算机可读介质(例如,软盘、CD-ROM、ROM或固定盘)的有形非暂时性介质上的一系列计算机指令。该一系列计算机指令可以具体实施本文先前参照系统描述的全部或部分功能。

本领域技术人员应当清楚,这种计算机指令可以采用许多编程语言来编写,以用于随许多计算机架构或操作系统一起使用。而且,这种指令可以存储在任何存储器装置(诸如半导体、磁性、光学或其它存储器装置)中,并且可以利用诸如光学、红外、微波或其它传输技术的任何通信技术来传送。

在其它方式中,这种计算机程序产品可以分布为具有附随打印或电子文档(例如,收缩包装软件)的可移除介质,利用计算机系统预先加载(例如,预先加载在系统ROM或固定盘上),或者通过网络(例如,因特网或万维网)从服务器或电子公告板分布。实际上,一些实施方式可以在软件即服务模型(“SAAS”)或云计算模型中实现。当然,本发明的一些实施方式可以被实现为软件(例如,计算机程序产品)和硬件的组合。本发明的另一些实施方式被全部实现为硬件或全部实现为软件。

实现本文先前所述功能中的全部或部分的计算机程序逻辑可以按不同时间在单个处理器上执行(例如,并发地),或者可以按相同或不同时间在多个处理器上执行,并且可以在单个操作系统进程/线程下或者在不同操作系统进程/线程下运行。因此,术语“计算机处理”总体上指一组计算机程序指令的执行,而不管是否在相同或不同的处理器上执行不同的计算机处理,并且不管不同的计算机处理是否在相同操作系统进程/线程或不同操作系统进程/线程下运行。

重要的是,应注意,本发明的实施方式可以采用常规组件,诸如常规计算机(例如,现成的PC、大型机、微处理器)、常规可编程逻辑器件(例如,现成的FPGA或PLD)、常规硬件组件(例如,现成的ASIC或分立硬件组件)以及常规AI/ML算法,该常规组件在被编程或配置成执行本文所述非常规方法时,产生非常规装置或系统。因此,本文所描述的发明并非常规的,因为即使利用常规组件来实现实施方式,所得到的装置和系统(例如,具有智能代理和智能通知子系统的CAD系统)也必然是非常规的,这是因为缺少特殊的编程或配置,常规组件无法固有地执行所描述的非常规功能。

本文所描述并要求保护的活动提供了针对技术领域中直接出现的问题的技术解决方案。这些解决方案总体上不是充分了解、例行或常规的,并且无论如何都提供了可以变换和改进计算机和计算机路线选择系统的实际应用。

虽然本文已经描述并例示了各种创造性的实施方式,但是本领域普通技术人员将容易预见用于执行功能和/或获得结果和/或本文所描述的优点中的一个或更多个优点的多种其它手段和/或结构,并且,这样的变化和/或修改中的每一个都被认为处于本文所描述的创造性实施方式的范围内。更一般地,本领域技术人员将容易意识到,本文所描述的所有参数、尺寸、材料以及配置意思是示例性的,并且实际参数、尺寸、材料和/或配置将取决于使用本发明的教导的一个或更多个特定应用。本领域技术人员将认识到或者能够仅仅使用例行实验就能确定本文所描述的特定创造性实施方式的许多等同物。因此,应理解,前述实施方式仅作为示例呈现,并且在所附权利要求及其等同物的范围内,可以不同于如所具体描述和要求保护地来具体实践创造性实施方式。本公开的创造性实施方式针对本文所描述的各个单独特征、系统、制品、材料、套件和/或方法。另外,两个或更多个此类特征、系统、制品、材料、套件和/或方法的任意组合(在此类特征、系统、制品、材料、套件和/或方法没有相互矛盾的情况下)被包括在本公开的发明范围内。

各种发明构思可以被具体实现为已经提供了示例的一种或更多种方法。作为该方法的一部分执行的动作可以按任何合适方式来安排。因此,即使在例示性实施方式中被示出为顺序动作,也可以构造按与所例示相比不同的次序来执行动作的实施方式,其可以包括同时执行一些动作。

如本文所定义和使用的,所有的定义都应理解成支配字典定义、通过引用并入的文档中的定义和/或定义的术语的普通含义。

如本文在说明书和权利要求中使用的,除非相反地明确表明,否则不定冠词应被理解成意指“至少一个”。

如本文在说明书和权利要求中使用的,短语“和/或”应被理解成意指这样结合的要素中的“任一者或两者”,即,在一些情况下连接地存在而在其它的情况下分离地存在的要素。利用“和/或”列出的多个要素应以相同的方式进行解释,即,如此结合的要素中的“一个或更多个”。除了由“和/或”子句明确标识的要素外,还可以可选地存在其它要素,无论与专门标识的那些要素相关还是不相关。因此,作为非限制性示例,对“A和/或B”的引用,当与开放式语言(诸如“包括”)结合使用时:在一个实施方式中,可以是指仅A(可选地包括除了B以外的要素);在另一实施方式中,是指仅B(可选地包括除了A以外的要素);在又一实施方式中,是指A和B两者(可选地包括其它要素);等。

如本文在说明书和权利要求中使用的,“或”应被理解成具有与上面定义的“和/或”相同的含义。例如,当分隔列表中的项时,“或”或者“和/或”应被解释为包含性的,即,包含至少一个,但是也包括多个要素或要素列表中的不止一个要素,并且可选地包括其它未列出的项。仅明确表明相反的用语(诸如“仅其中之一”或“恰好其中之一”,或者当在权利要求中使用时,“由…组成”)是指包含多个要素或要素列表中的恰好一个要素。一般而言,本文中所使用的用语“或”当在排它性用语(诸如“任一个”、“其中之一”、“仅其中之一”或者“恰好其中之一”)之前时,仅应被解释为表示排它性另选(即,“一者或另一者,但非两者”)。“基本上由…组成”当在权利要求中使用时,应具有其在专利法领域中所使用的普通含义。

如本文在说明书和权利要求中使用的,关于一个或更多个要素的列表,短语“至少一个”应被理解成是指从要素列表中的任一个或更多个要素中选择的至少一个要素,但不一定包括要素列表中明确列出的每一个要素中的至少一个,并且不排除要素列表中要素的任何组合。该定义还允许除了短语“至少一个”所指的要素列表内明确标识的要素之外,还可以可选地存在其它要素,无论与专门标识的那些要素相关还是不相关。因此,作为非限制性示例,“A和B中的至少一个”(或者,等同地,“A或B中的至少一个”,或者等同地,“A和/或B中的至少一个”)可以:在一个实施方式中,是指至少一个(可选地包括不止一个)A,并且不存在B(并且可选地包括除了B以外的要素);在另一实施方式中,是指至少一个(可选地包括不止一个)B,并且不存在A(并且可选地包括除了A以外的要素);在又一实施方式中,是指至少一个(可选地包括不止一个)A和至少一个(可选地包括不止一个)B(并且可选地包括其它要素);等等。

在权利要求中并且在上面的说明书中,所有过渡性短语(诸如“包括”、“包含”、“携带”、“具有”、“包含”、“涉及”、“持有”、“组成”等应被理解为开放式的,即,意指包括但不限于。如美国专利局专利审查程序手册第2111.03节所述,仅过渡性短语“由…组成”和“基本上由……组成”应分别是封闭的或半封闭的过渡性短语。

尽管上述讨论公开了本发明的各种示例性实施方式,但应当明白,在不脱离本发明的真实范围的情况下,本领域技术人员可以进行将实现本发明的一些优点的各种修改。除非上下文另外要求,否则对“发明”的任何引用都旨在指代本发明的示例性实施方式,并且不应被解释成指代本发明的所有实施方式。所描述的实施方式在所有方面仅被认为是例示性的而非限制性的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号