系统方法——复杂问题的解决方案

来源:互联网 发布:spring boot源码分析 编辑:程序博客网 时间:2024/06/01 08:24

系统方法——复杂问题的解决方案

前言:

       传统的解决问题的方法,是将一个复杂问题分解为多个简单问题,逐个分析并解决简单问题来达到解决复杂问题的目的。例如:生物分解为组织,组织分解为分子,分子分解为原子。传统方法学认为:任何复杂的事物都可以分解为多个简单的事物加以处理。这在一定程度上是正确的,它取决于两个条件。第一,各个部分之间的相互作用是不存在的,或者对于研究目的来说可以忽略不计。只有在这个条件下,部分才能从系统这个整体中被分出来,然后再被装配起来。第二个条件是,描述各个部分行为的关系是线性的,只有这样,累加性的条件才能成立,也就是,描述系统整体的行为方式与各部分行为方式具有同一种形式。部分可以叠加得到整体,等等。对于大部分复杂系统来说,系统具有整体性和层次性,必须要用系统的方法来解决问题。后面可以看到,系统方法是统一各学科的唯一方法,也是探索生命与智慧的基础。

 

研究系统方法的目的

       系统方法来解决问题,一般而言,有三个目的:分析,设计和诊断。系统分析表示分析一个存在的未知系统的功能。既然存在,又为什么说未知呢?未知表示我们还不知道这个系统的功能,这个系统就像一个黑盒子,我们需要分析来了解它的功能,。系统设计表示我们已经知道了一个系统的主要功能或者全部功能,我们需要设计并实现它。诊断表示一个系统出现功能错误:没有功能或者功能并不是需求的。

 

 

系统的特性

1.      系统的组成,层次性

系统是元素和元素之间的关系组成的一个整体。元素也可以是系统。这就表示,系统具有层次性的。元素之间的关系是构成系统的关键。没有关系,多个元素在一起不能构成系统。这可以看出,整体大于部分之和。例如一栋建筑和等量的建筑材料相比,从系统论的观点来看,这栋建筑比这些建筑材料多了“居住”的功能,这个多出来的功能,是因为构成建筑的各个元素(建筑材料)之间有了关系,不论是这个关系是物理还是化学关系还是其他关系。

2.      系统的开放性与功能性

这里讨论的系统都是开放性的,开放性是指,要研究的系统拥有功能性,因此可以与其他系统有交互关系。封闭的或者说没有功能的系统是没有意义的,功能性是系统可以构成元素的基础。因为构成系统的元素之间是有关系的,在系统中一个与其他元素没有任何关系的元素,完全可以从系统中移除,以减少系统的复杂度。所以系统具有开发性。例如城市系统中的一栋房子,具有“居住”的功能;一个导弹系统中的雷达具有搜索定位功能,导弹具有飞行与爆炸功能。等等。

系统方法——统一各个学科之间的解决问题的方法

       很多年前,工程师Bode、社会学家Mosteller、数学家Tukey和生物学家Winsor等人发表了题为“科学通才教育”的论文。作者们强调:“需要一种比较简单的、比较统一的解决科学问题的方法。”他们写道:“我们经常听到这样的议论:一个人再也对付不了宽广的领域,专业太窄了……。我们需要一种比较简单的、比较统一的解决科学问题的方法。我们需要实行科学(不是一门特殊科学)的人,总而言之,我们需要科学通才。”然后,作者们说明了在物理化学、生物物理学这样一类领域里以及把物理学、化学和数学用于医学中需要通才的情况和原因。作者们指出:“任何一个研究团体都需要通才,无论它是一个大学里设立的研究小组还是一个基金会、或是一个工业团体的研究机构……。在一个工程技术团体里,通才能够很自然的关系系统问题,每当把部分纳入平衡的整体,就发生这样的问题。(Bode等人,1949)

       我国杰出科学家钱学森对系统理论与系统科学的创立有独特贡献。他最早提出,从马克思主义哲学到系统学的桥梁,可以称作“系统观”或“系统论”。

      基本上,任何一门学科深入研究下去,都会发现一个共同的东西,那就是系统。在软件领域,经常在论坛上看到有人讨论“我是精通一个方面好还是熟悉多个方面好?”这种问题。许多人可能都有这种疑问,因为要学的东西太多,在知识爆炸的年代,没有一个人可以把所有方面都精通。俗话说,授人以鱼不如授人以渔,系统方法就是渔。而现实却恰好相反。许多人学习了很多知识,却不知道怎么使用。就像一个程序员学习了一门编程语言,还是不会制作任何软件;或者一名医学员学完了医学的知识让他去诊断病人确不知道从何入手一样。原因就是没有将研究目标系统化。对于以系统方法解决问题的人来说,知识只是工具,系统方法才是的解决方案。找程序bug的过程和医生诊断疾病的过程及其相似:首先,根据程序表象推断错误原因,再找出错误位置加以修复。医生诊断疾病也同样,首先根据病人的表象,推断原因,定位病变位置,再对症下药。如何快速的推断出bug原因和位置,这就需要了解程序系统内部结构。医生诊断病情也是如此,需要了解人体系统结构和功能。只不过这两者解决的问题不同,所需要的知识域不同,但是解决问题的方法是相同的。

       知识可以帮助人更快速的找出问题的解决方案:例如一个人了解了很多建筑学的知识,那么他就很容易的使用它的知识来设计建筑(系统设计);一个了解医学的人,可以很容易的使用它的知识来诊断与治疗疾病(系统诊断)。一个了解计算机的人,可以很容易的使用它的知识来开发软件(系统分析,设计,诊断)。拥有很多知识可以让一个人更快速的找出与他的知识相关的问题的解决方案。没有与问题相关的知识或者知识不足,并不是说就不能解决问题了,只是时间的问题罢了。当一个问题所需的知识不能够满足的时候,基本上都需要查找资料。对于“我是精通一个方面好还是熟悉多个方面好?”这种问题的答案,现在已经很清楚了——如果你决定要往某个方面发展,并且你将要面对的问题是这个方面的,那么精通它。再配合系统方法,得以快速解决问题。

看来没有必要再做说明了。物理学、生物学或社会科学的传统教育都是把他们作为独立里的领域来处理,普遍地趋向于愈来愈小的子领域成为独立的学科,这个过程一再重复,到了每门专业成为举足轻重的、支离破碎的子领域的程度。与此相反,从系统方法出发,到底要学习什么,是根据问题来的,知识只是解决问题的工具,而系统方法是解决方案。一个人的精力毕竟有限,能根据问题快速找到解决方案才是要点所在,你需要学会你要面对问题的所有知识域。知识可以帮助你快速的整理出系统内部关系,从而找到解决方案。

系统与生命以及智慧

我极力避免在谈论系统方法的时候将它与生命系统放在一起。这通常会导致极为混乱和矛盾的事情。因为人们到现在依然没能认清生命的奥秘。一个物体从无机物变为有机物之后,一切都不同了并且变得难以解释。

       无生命界与有生命界的一个明显不同是凯尔文勋爵的退化论与达尔文的进化论之间,物理学的耗散定律与生物学进化规律之间的尖锐对立。按照热力学第二定律,在物理性质的事件中普遍趋向最无序的状态而使差别拉平,宇宙随之达到所谓的最终的热寂状态。那时所有能量递降为低温下均匀分布的热,世界的进程就会停止。与此相反,生命世界显示出:在胚胎发育和生物进化中,它是向更高级的有序状态、不均匀状态和有组织状态过渡。这就是生命系统与非生命系统的区别——生命系统是自我进化到有序的,而非生命系统总是趋于混乱。

    如果说要让一个非生命系统有序,必须要人为的修改系统,使之毁坏重建以达到有序状态。在非生命系统的生命周期内,总是要不断的进行维护升级,以让系统保持活力。如果说在这段时间内它是有生命的,那么也是人赋予的。

    智慧特性是生命系统的又一大特征,也许这就是人类永远也做不到真正的人工智能的原因吧。因为它是非生命系统,如果产生了意识,那就成了生命系统。一个人能够创造出生命,天理不容。

    系统方法能够统一多个学科,但是很难统一生命系统。但是可以说,非生命系统是生命系统的一个子集,生命系统包含了非生命系统的一切特性,对于生命系统,仍然可以用系统的方法去研究它。

系统方法的未来以及发展

       系统方法应该成为一种普遍的方法。生命系统对人们理解生命以及智慧的奥秘将有所帮助。

参考:《一般系统论》《系统科学哲学》