资深RPA从业者关于RPA一些分析

今年5月Gartner第一次出了一个关于机器人流程自动化(RPA, Robotic Process Automation) 的魔力象限,大概有几十家公司入选,其中的领导者有三家UiPath, Blue Prism和Automation Anywhere。自从UiPath在今年4月拿到5.68亿美元D轮融资,估值超70亿美元以后,点燃了RPA这个市场的热情,大量的公司都进入了这个领域。根据Gartner的报告,2018年RPA的市场大概只有8.5亿美金,预计每年的复合增长率超过70%。

资深RPA从业者关于RPA一些分析

根据Wikipedia的定义,RPA是一种基于比喻化的“软件机器人”或“人工智能工人”的业务流程自动化技术的新兴技术。这个定义看上去非常高大上,实际上就是通过模拟人的操作,用计算机来加速这种操作,24*7不眠不休,这样就可以省掉大量的人的手工工作,比如审批流程,清洗Excel数据,OCR分析发票等等这种,看上去的确非常振奋人心!

不过根据Gartner的2019年人工智能的技术成熟度曲线,RPA正处于泡沫破裂谷底期,收益属于高,预计在2年内会被大范围地使用,从而走入实质生产高峰期。

资深RPA从业者关于RPA一些分析

我们同事在市场上对RPA还是特别敏感的,各大RPA厂商跟我们公司的各个不同的团队都有接触,而且还都跟他们有很好的合作。不过要做好RPA的生意,重要的还是业务咨询和技术实施,这些工作才是RPA工作的重点。为了深入理解RPA的业务实质,作为码农的我觉得还是得亲自摸一摸才有体会。

要理解一类技术当然是选择Gartner上的第一名,就好像我们要考云计算证书的时候绕不开AWS一样,所以我下载了估值超过70亿美金的UiPath Studio简单玩了一下。

资深RPA从业者关于RPA一些分析

基本上我看到的是一个开发工具,我可以创建一个序列的流程,或者是带分支的工作流,以及状态机。可以拖拉拽的方法定义工作流,可以录制UI的操作,也可以用代码进行管理和开发,可以自定义变量,参数等等,实在越看越熟悉,尤其是下面载入的那些.NET Framework的库,就是我战斗过十几年代码的地方。之前我研究过一段时间的.NET Workflow Foundation, 看着特别像当年的Workflow Designer。

资深RPA从业者关于RPA一些分析

界面上还有个UI Explorer,也是年轻时候写过的MAUI,后来有个新版本叫UIAutomation特别像,当然功能更强大一些,可以抓到chrome.exe里面的页面html。

资深RPA从业者关于RPA一些分析

还可以导入一些外部的库,支持新的Activity。

资深RPA从业者关于RPA一些分析

作为一个码农,一个有工程师专研精神的娃,我觉得我还是得回忆一下当年的工作,所以我打开了最新版本的Visual Studio,建立了一个Workflow Console Application,发现果不其然,这个Studio就是修改过的Workflow Designer, 连生成的Xaml文件也是兼容的。

资深RPA从业者关于RPA一些分析

甚至连UIPath的表达式编辑器的帮助,也直接是连到了微软的Workflow Designer的帮助链接。好吧,果然是微软的铁粉。

资深RPA从业者关于RPA一些分析

所以对我而言,这个产品上手很简单,我大概花了20分钟就完全搞定了设置活动,流程和参数的工作。当然UiPath有大量预置的Activity,包括文件管理,进程管理,调用REST API,预置OCR,抓界面句柄,网页内容,搜索查询等等,虽然在调试的时候出现了一些Bug,不过总体上来说还算是可以用,其实就是当年我们做UI测试的过程。

技术归技术,RPA如果是用Workflow Designer来做的话,我觉得我稍微有点发言权,毕竟在这个领域曾经写过几年代码和测试用例。这部分工作最麻烦的应该是业务流程的设计和自动化。由于我们没有办法让所有人都用一样的软件,那么是否可以模拟人点击鼠标,敲击键盘来进行流程的自动化处理,从而换掉很多人现在机械化的工作呢?就好比Boston Dynamics的机器狗换掉很多工人搬砖的工作;RPA的机器人,可以通过输入数据,流程定义和输出检查,换掉固定流程上重复的工作。

经过训练的有经验的人在看到不同数据的时候(感官输入),在大脑中自动会产生if-else的决策而产生行动,这就是人类的经验。而RPA就是要把这些经验自动化让计算机来全自动执行。

这个想法看上去非常简单,但是实现起来其实困难重重,从哲学上我想讨论下面几个问题:

  • 经验是如何产生的?
  • RPA能提取哪种经验?
  • 提取之后的经验是否可以被RPA替代?
  • 使用RPA重现的经验是否可靠?

第一个问题:根据康德对经验的观点,对感官持续而一致的刺激,通过心灵在一定范畴上的统一,放入时空的概念,而形成了可靠的人的经验。在某些我们不知道的情况下,这些经验甚至会在大脑神经中形成旁路,直接输出,也就是丹尼尔卡尼曼理论中系统1的模式。

这样也就回答了第二个问题,我们RPA能够重现的就是这种康德证明下的经验,对于康德提到的自在之物,也就是王阳明的“良知”,通过RPA的方式无法提取,事实上我们也很难说这种先验的知识是一种“经验”。

关于提取的经验是否可以被RPA替代的问题,我们还需要定义经验的范畴。如果说经验只是一堆包含范畴的规则的集合,那么我们可以说这种经验是100%在范畴下可以重现的。但是康德的经验是经过心灵的,而冯诺依曼体系下的计算机并没有因果能力,也就是没有“心灵”,所以我们无法让计算机通过RPA下替代人的经验。

最后我们简单讨论一下使用RPA重现的经验是否可靠。如果我们假设这种经验是康德证明的在某些范畴下的经验,那么似乎是可靠的。但是如果是休谟,他可能就无法同意这种观点了。因为在怀疑主义下,即使这些经验当前完全有效,有“因果关系”的加持,但是未来是不可知的,所以这类经验就是不可靠的。再进一步,通过RPA重现的经验当然也是不可靠的,因为有时空的变化。再强调一遍,RPA重现的经验本身不可靠,而重现在范畴变化下也不可靠。

我们写代码的时候在考虑主逻辑之外,最重要的就是考虑适用的范围,大量的bug也来自于对范畴的考虑不周,而测试则是在尽可能扩大代码运行的范畴来找到bug。对于UI而言,这个范畴由于涉及到了人类的鼠标和键盘的运动,范畴更加难以定义和量化。这也就是当年我们这些码农特别不喜欢做UI测试的原因,情况太多,问题复杂且枯燥乏味,就算是录界面操作,也需要大量的修改和测试,这种工作总体上而言反人性且苦不堪言。

美国有一个数学家,控制论创始人Norbert Wiener有一本著名的哲学书叫《人有人的用处:控制论与社会》,维纳提出了一个定义:Cybernetics,中文翻译成“控制论”,其实来自于希腊语里的Kubernetes,英语的准确定义是:the science of communications and automatic control systems in both machines and living things,即机器和生物之间通讯和自动控制系统的科学。最近流行起来的控制容器(container)的系统也被命名为Kubernetes。

资深RPA从业者关于RPA一些分析

在这本书里他尝试探讨了人类和计算机的信息传输以及控制的关系,甚至涉及到了人类的社会制度和结构。RPA其实涉及到了机器和人之间的信息传输方式,机器和机器之间的信息传输,从而产生相应的控制。将计算机信息和人的信息逐渐融合成一套控制体系的尝试,RPA是其中的一种。Elon Musk的脑机公司Neuralink或许是另外一种。不过无论是哪种形式,当前人类离信息和控制统一还很远。

当然, RPA可以解决很多重复的工作,解放人的重复性脑力。人也可以用来做更多创新的事情。我刚才提到的RPA重现的经验不可靠的问题,其实也就是一个在特定范畴情况下的小概率的事件,在工程上完全可以忽略,在哲学上才需要细细考量。从商业角度来看,只要RPA能够提高效率,提高综合的生产率,无论他在十年前微软的Visual Studio里面就有,还是今天被资本热推能够在大多商业公司得到应用,都是对社会进步有帮助的事情。我当然也相信RPA的市场会借由资本的力量快速发展,只是又有很多软件蓝领和脑力重复劳动者面临着失业的风险。不过可以放心,在《AI的25种可能》这本书里,科学家和思想家们对AI能够换掉人类大都抱否定态度,至少我觉得我这辈子大概率是看不到了。

本文是51RPA中文社区原创文章。发布者:RPA小当家,转载请注明出处:https://www.51rpa.net/rpaedu/3769.html

(6)
RPA小当家的头像RPA小当家
上一篇 2019年11月2日 下午8:17
下一篇 2019年11月4日 上午10:54

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注