Posted on 2005-11-14 16:59
canonical 阅读(645)
评论(2) 编辑 收藏 所属分类:
设计理论
最近几年关于模型的提法突然多了起来,但这个概念到底意味着什么呢。从哲学上说,我们的思想是外部世界结构在主观意识中的反映,当我们把主观意识再投射回
外部世界时,就得到关于外部世界的模型。所以,在最广泛的意义上,模型不过是我们思维中的一组关联。问题不在于我们是否需要模型或者什么东西是模型而什么
东西不是模型,我们所意识到的一切都是模型,无论它与真实情况的差距有多大。我们所能区分的只是什么是一个"好"的模型,什么是一个"坏"的模型。在面向
对象建模中,经常听到人说XX是对象,YY不是对象。这是一种错误的提法。所有的东西都是对象,都是我们心智中可以操纵的符号。一张纸是对象,当它被撕成
了碎片,每个碎片也是对象。因为受力方式等随机因素的干扰,信纸碎裂的方式也是随机的,
最终造成的碎片也是随机的。我们可以说信纸L这个对象由碎片A,B,C这三个子对象构成,也可以说L由碎片D,E,F构成。定义对象的方式实在是无穷无
尽。
我们通过比较来认知外部世界。当我们面对一个不熟悉的概念的时候,我们总是在把它分解,重构为我们已经熟悉的概念以后才能真正的理解它。也许,我们只能理
解那些我们已经知道的东西!我们已在这个星球上生存了亿万年,以至于我们总可以将那些"新"的结构与我们的"先验知识"做比较。只有当面对量子论和相对论
的时候,一个人才能真正意识到自己的知识是多么的贫乏,一种先天的贫乏。Cantor将比较的技术发挥到了极致,他通过比较区分了可数无穷大与不可数无穷
大,结果他疯了。
假设现实有一个结构S, 我们的模型具有结构M。
当S(通过一定的简化和拓扑变换)能够与M匹配时,我们就说现实S被理解了。 更一般的, 我们从不同的角度或者在不同的层面上看待同一个事物,
从而形成模型M1, M2, M3,... 我们可以通过一条逻辑途径M1-->M2-->M3-->S来理解S.
最好的模型应该构成到现实结构S的最短路径。一个鲜活的例子就是数据库。在von
Neumann体系架构下,计算机能够直接回答的问题是:存放在0x***地址的值是多少(M1)。而在现实中,我们经常需要回答的问题是:
值大于**的纪录有那些(M2)。这些问题是关于变量的值的,而不是变量的地址。数据库的价值正在于通过索引提供了M1->M2的映射。早期的层次
数据库仅仅提供了一个中间模型H, H->M2的映射还需要程序员来完成,最终难免被淘汰的命运。一个模型就这样创造了一个产业。
模型映射的最短路径意味着我们最好不要去创建那些"聪明"的新结构.在一个良好设计的系统中,我们不应该费力去"发现"什么或去认知什么。设计不等于创
造,一个最好的设计应该是抄袭成功的范例,最好是连改动也没有,可惜现实的多变总要你多少作些改变。如果需要改变,最好是局部化的改变,在数学上我们称之
为同态。如果在映射的时候,无法做到局域化,那往往意味着出现了一些本质的困难。例如html语言中的table元素。表格本质上是二维布局,而html
文本是一维的文本流,它们之间存在着深刻的差异。当某个表格单元的rowspan或者colspan属性需要修改时,对应于界面表现只是一个局部调整,而
反映到html代码中却是全局的修正。xml决不是万能的。
某个事物被清楚的理解了,是因为我们对它已经有了一个完整的模型M,所以对已知的事物建模是相当容易的,因为我们可以从模型M出发,建立一个同态甚或是同
构的模型即可。所有的困难都在于如何对那些我们所知甚少抑或是一无所知的东西建模。按照Laplace的哲学,如果我们不知道什么是最好的选择,那么所有
的选择都是等价的。在用迭代法解方程的时候,通常的做法是抛一个随机的初始解进去,只要控制策略得当,最终会收敛到正确的解上。一切并不在于选择初始解的
启发式策略有多么的"聪明",
随机性才是创造性的根源,因为只有几率才能打破因果的枷锁。一个好的初始解一般只是缩短收敛的过程,但并不影响最终收敛的结局。
一个模型首先提供的是一个术语体系或者说一个词汇表,一种语言。使得我们能够以一种一致的方式捕获那些转瞬即逝的思想。模型本身是否正确其实并不一定如想
象中的那么重要。一旦初始的模型建立,我们的认知就有了一个不断发展和积累的基础,最终就可能得到超越我们最初期望的结果。交流和表达具有根本的意义,优
劣与否只在其次。设计模式提出的时候引起轰动,到今天,当一切尘埃落定,它最大的贡献也许只是贡献了一批术语和模式名称,让大家可以在模式的框架下讨论问
题。恰如陈省身的纤维丛理论。也许这个世界上最成功的建模案例是宗教。通过一次提问,谁干的,就把所有未知的问题一揽子解决了。伟大的简化!借助宗教的术
语,我们创作了文学,纪录了思想,传承了知识,甚至建立了政治秩序。所以如果你不知道从哪里开始的话,那就随便吧。