• 创建:2006-7-7
  • 文章:105
  • 评论:351
  • 访问:503441
  •  

我在编写围棋的"深蓝"程序.....

除非有人在我的博客中提问,我不会花太多时间写那些没写完的东西了,

或者,等我的围棋深蓝战胜古力之后,我再来写那些没写完的东西.

编辑 | 阅读全文(250) | 回复(4),babituo 发表于 2007-9-3 22:8
关键字:UML 系统建模
当本圈成员发展到10人的时候,我将开始用“一个基于互连网的翻译交易系统”为例,讲解如何为信息系统建立UML模型。
编辑 | 阅读全文(5089) | 回复(13),babituo 发表于 2007-5-25 14:18

2006-8-26 9:10 | 版权声明

关键字:版权 声明

多谢一位朋友提醒,让我想起发这么个声明:

我声明,我个人拥有我在畅享网上各栏目内发表的标有[原创]标志的文章的著作权;

任何人未经我本人的书面许可,不得转摘和出版.

 

编辑 | 阅读全文(3009) | 回复(4),babituo 发表于 2006-8-26 9:10

目前已经有四十七位专家和网友加入了我的"跟我学UML业务建模"圈,

我已经完成了业务系统的服务体系-业务用例建模的基础知识讲座,

现准备进入业务系统的执行体系-业务对象建模基础知识的讲解中,现开始征集问题和反馈...

请各位圈友:

提出自己感兴趣的问题...,

对已经完成的业务用例建模概念还不明白的提出疑问...,

对实践应用中遇到的具体建模难题提供案例.

推荐感兴趣的朋友加入我们的圈子,

当圈子成员发展到50名的时候,我就开始讲解业务建模的主体内容:业务对象模型的基础知识.

一个月只增加了10名圈友,按此速度可能要到春节之后开讲了,请各位已经加入的圈友或者耐心等待,或者....12月27日

离开讲还差11名圈友,继续等待...2007年3月10日,看来圈友们宣传得不够啊......哈哈!

离开讲还差3名圈友,继续等待...2007年4月6日...即将拉开帷幕,敬请关注,多多分享.

今天,我们的"跟我学UML业务建模"圈终于发展到了50名圈友了,"UML业务对象建模"的讲解即将揭幕,请圈友多多互动. 2007年5月24日

编辑 | 阅读全文(10887) | 回复(11),babituo 发表于 2006-8-2 13:15
关键字:程序开发
UCT是怎么走对征子的呢?
我想,elife前辈的话一定是对的,否则,MC法不可能有目前的领先地位,一定是有某些地方我们还没有理解到位,出了差错。
关于我提出的问题,其实不仅仅是征子的问题,征子只是我用来说明问题的例子,我的问题是:一个导致必胜的着手,一定是在后续的各种任意下法中,胜率最高的着手吗?
我还不知道我的思路哪里出了问题,仅仅是相信elife的结论性判断,并不能立即帮助我解决我的算法问题,我还得继续找问题的原因。
先从正面理解一下:一个导致必胜的着手,一定会是在后续的各种任意下法中,胜率最高的着手,难道不是吗?
这里面可能有概念偷换问题:

一个我们看起来必胜的着手,尽管导致从它开始,直到取得最终胜利的路径,在最极端的情况下,可能只有唯一的1条,虽然和其他可能的行棋路经相比,这条路经 可能是万亿分之一的选择,也许考虑其他的所有路径确实会发现导致失败的路径数更多,但这种“最终导致胜利的路径的多少“和“模拟下棋得到胜利次数的多少” 也许并不是同一个概念。如果我们偷换了这两个概念,就会得到象我之前得到的那种令人疑惑的结果。

为什么这么说?
MC法确实是在已经生成的博弈树上当前结点的所有后续结点中,选择胜率最高的结点为生成着手来决定下一步棋走在哪里的,这容易使我们理解为决定下一着手的唯一依据,就是最高胜率的子结点是谁?你一定会问,难道不是吗?

当然是的,但是,我们有没有想过,一个结点可能发展的后续子子孙孙的结点是个天文数字,凭什么就让某些结点出现在博弈树上,而其他结点就要无情地被"冷落 "呢?(严格地说,UCT算法不是在剪枝,而是在冷落或培植相关的枝),这个"凭什么"的理由,不是比"子结点胜率"更优先的决定着手选择的理由吗?如果 你是一个仅仅在理论上存在的结点,但没有在博弈树上得到"定点"培养的机会,那么,你就压根不可能出现在博弈树上,虽然理论上有很多路会经过你,而且从你 之后也有很多路可走,但这些只是"可能存在的路"而已,对"实际发生的胜率"有什么影响呢?没有任何影响.
而只有那些已经出现在博弈树上的后续结点和未来实际出现在博弈树上的后续结点,才可能对子结点的胜率产生影响.

后续子结点是如何产生的以及其胜率是如何得到计算的,才是决定后续着手的关键原因.这些工作是在下类似17000盘这么个数量巨大的模拟对局的过程中完成的.对这个过程,我原先有这么个误解:认为在模拟对局中,每走一步棋,都会试图在博弈树上去添加新的结点(只要这步棋对应的结点还没有出现在博弈树上),这个误解是致命的,Dlgo曾经成功地启发我走出了这个误解.

实际上,只有在模拟对局中,遇到了某个已经建立的而且访问过[已选择过这个结点进行过一次脱离博弈树的随机对局(所有结点的第一次访问一定是这样发生的)]的"端"结点(没有子结点,但模拟对局还没有终止)的时候,才会去为这个端结点,建立一层后续的子结点,在这层新建的子结点中,随机选择一个结点(这个结点就发生了首次被访问的事件)作为继续前进的路径后,随后的随机对局过程就不再博弈树上进行了,也不再影响博弈树了,只有最终输赢的结果会影响已经走过的路径上的结点的胜率.
因为生成一个着手,要从生成前的博弈树上的结点开始,模拟下17000多盘棋,所以,在

下过前面的具有"开闯新路"性质(为博弈树某个结点新增一层子结点)的一局棋后(开路后那局棋就转到随机对局中去了),后续的模拟对局,开始就会沿着前面对局已经开辟的道路选择前进的方向了,这时候的选择,就不完全是随机选择了,而是根据经过调整的前面累积得到的胜率数(UCT值)来选择了,所以,第二个要搞清楚的概念区别是:模拟对局随机对局不是一回事,随机对局模拟对局的一部分,是在模拟对局遇到"端结点"之后独立于博弈树所进行的部分.
而每一次进行的模拟对局都会返回谁胜谁负的结果,这个结果,就会影响对局过程在博弈树上经历过的结点的被访问次数和取胜次数,从而影响各层结点的胜率.
等到1700盘模拟对局全部结束后,这时候,就只要简单地选择下一个胜率最高的着手作为应对着手了,随后等待对手下棋,对手下的棋一定会出现在博弈树上, 而且一定会被访问过(为什么?有问的我包回答,暂时不展开分析),所以,再下一步生成着手的时候,只要找到和对手下的上一步棋对应的结点就可以了.

搞清楚了博弈树产生的过程和胜率的来由后,再来看原来的问题,就好理解了.用一个比喻来理解可能会更形象.比如:
假设两个天老爷举行下雨比赛,他们能下的雨有两种,一种金雨,很贵,很少;一种普通雨,很多,很便宜。谁能把他的金子雨最先全流到大海,就算谁赢,那么, 聪明一点的老天爷就会想到,他应该在下这每粒滴金雨之前,下很多的普通雨,探明最好的河该怎么流,那么,聪明的老天应该把这很多的普通雨更多地撒向什么地 方呢?
刚开始,地上没有河,老天只好乱下普通雨,后来出现一段河流,也是先前下的雨流出来的,所以,后面下的雨就尽量靠近已经产生的河,就更好,但也不能全下在 原来的河里面,因为,没准还有更近更快的河道还没有被发现,所以要调整下雨的地点,尽量靠近河,但也要照顾河边从来没有下过雨的地方,让那些地方也可以尝 试流一流水,如果成功,那些地方今后自然能成为主流。等这段河到了头,比赛还没有结束的话,老天爷就只好又往后乱下一阵雨了,直到已经发现最好的河床,就 把下一颗金雨,下进这个河床,最终找到大海为止。

所以,虽然地上可能存在的河床路径的数量是个天文数字,老天爷不一定要把整个地面都变成河流,才能取得胜利,聪明一点的老天,总是一边选择走最好的河床, 一边选择靠近原来的最好的河床去探索新的河床,如果地面上确实存在一个地势最低,最直通往大海的河床,这个河床迟早会被聪明的老天发现,然后,越流河越 宽,而其他可能的河床,自然就被冷落了。

导致全局必胜的少有的着手路径,比如关键征子,就是这样的好"河床",最终会被很快地自然发现的.
编辑 | 阅读全文(237) | 回复(4),babituo 发表于 2008-4-3 16:27
关键字:程序开发
电脑围棋模型中的美

许多“人性化”的科幻作家,在作品中把电脑想象为一个冰冷的计算机器,复杂的数学计算公式,没有灵性的,只懂得按指令机械执行的软硬件综合体。
事实不是这样的,事实是:电脑是人脑的自然延伸,人脑终究会让电脑具有“灵性”的。

我经过短暂时间的对CGO的学习,已经感受到电脑围棋模型中的“美”的存在了。
这种美,也只有在建模中才能体会到,在纯粹的算法设计中是体会不到的。

我看到了电脑围棋模型中,层次化升级的美,那种从碳氢氧原子开始,逐层建立起人类生命体的美。

低层次的系统,会凸现其组成事物所不具备的特征,这些特征又参与更高层次系统的构建,更高层次又有新的凸现,这就是层次化升级的美。


一盘围棋,就像一个生态系统的繁衍升级。
盘古开天地,得到一个空的棋盘。
最初落下一颗黑子,得到一颗正原子,再下一颗白子,得到一个反原子。
从单个的棋子开始,就已经开始了子力的互动,这是最底层的活动。
棋子相互连接,形成棋串,棋串的互动建立在棋子互动基础之上,却又超越了棋子的能力,开始出现纠缠互动。
棋串相互耦合,形成棋块,棋块的互动建立在棋串互动的基础之上,却又超越了棋串的能力,开始出现联合互动。
棋块相互呼应,若即若离,形成棋群,棋群的互动建立在棋块互动的基础之上,却又超越了棋块的能力,开始出现整体互动。
围棋的这种互动,给宇宙的企图主宰者的命运提供了两种最终选择的启示:
1.想独霸天下者,最终必将因自身能力不够而分崩离析;
2.追求和谐者,最终会求得只需要微弱优势的动态平衡;

对围棋,这个虚拟的小宇宙建立一个这样的唯美模型也许并不难,难的是对我们这个真实的大宇宙,能否建立和实现这样唯美模型,只有天知道。
编辑 | 阅读全文(146) | 回复(0),babituo 发表于 2008-4-2 11:8

摘要:流程管理的根本任务是建立客户行为需求导向的内部服务提供机制。流程,是用常规的任务类型来整合不同工作阶段分工的部门资源的知识,是以说明企业“要为谁做什么?”和“怎么去做?”的行动指南。流程化的组织体系是项目化的组织体系的抽象和放大形式。中小企业比大型企业更加具有实施流程管理的时机。中小企业实施流程管理应抓重点,抓核心,应给企业文化建设留出发挥作用的空间,应把流程管理当作企业知识积累和重用的手段之一。

编辑 | 阅读全文(841) | 回复(8),babituo 发表于 2008-4-1 13:12

2008-3-25 10:13 | [原创]动态有向图搜索

关键字:程序开发
很多“人工智能“的问题和“有向图搜索”密切相关。
编辑 | 阅读全文(121) | 回复(3),babituo 发表于 2008-3-25 10:13

2008-3-18 11:2 | [原创]痛苦的能量

关键字:能量 痛苦
痛苦的能量

我是那么地感到痛苦,
为什么人们总是把我当作罪恶之源,
因为我天生好动,
东冲西闯,象匹脱缰的野马,
踢破无数的人们的精心构造;
因为我的天性如此,
我甚至被人们用来当作了互相残杀的工具,
那更使我痛苦至极。

可我不愿意这样啊!
有谁明白,我有一颗浪子的心,
虽然驿动,却是为了寻找那让我安稳的窝,
有谁能知道,我无时无刻不在寻找那完美的序位,
只需要用我最少的同类,就可以安抚我众多的同类.

我可怜那些误解我的人,
说什么热寂才是我最后的归属,
他们完全颠倒了我的理想,
他们毁了一切,包括他们自己和自己的未来,
也耽误了我的理想.

我热爱那个名叫"信息"的姑娘,
她是那么的善解人意,
她是那么的心底纯洁,
她是那么的正直善良,
她是那么的美妙绝伦,
只有她才理解我的心,
理解我的理想,我的未来,
她是我的天使.

人们啊,
快唤醒沉睡的她吧,
只有用她那温柔的巧手,
牵引着我去散步,
我才会得到快乐,不再祸害你们,
给你们也带来无尽的快乐,
我就,
不再痛苦.
编辑 | 阅读全文(140) | 回复(1),babituo 发表于 2008-3-18 11:2

电系系统宏观架构模型

本节使用了一个UML部署图来对电力系统的宏观架构的理解,该部署图小结并稍微延伸了上述“价值链实现”中谈到的相关对象,得到了从“最高”的物理视野上来观察电力系统所能看到的主要部件的业务逻辑分布,表达了对电力系统“硬件”架构的总体认识。

部署图的横向表达了业务性质的层次,纵向表达的是业务过程的界限。从图中可以看到:我们本篇前面的叙述中,在电力运营层采用的先是从横向划分的办法,也就是不分业务过程领域,只看业务性质层次,我们分出了规设,电建和营销三个子系统,然后,在此图中我们延伸了纵向的划分,就分出了针对不同业务过程领域,不同业务性质的更细的子系统。比如,电力营销系统就可以更细分为发电厂营销、电网营销和需求侧管理系统,各子系统就成为逐渐精细的业务模型分析中相对独立的单位。

            而本篇前面对电力生产系统的表达中,则刚好先采用了从纵向划分过程领域的方法,然后,然后在此图中延伸出一次系统和二次系统的层次划分来。这种表达次序的不同,也刚好体现了不同层次上业务的重点和关系形态的差异。也就是:生产系统的过程性更强,而运营系统的层次性更重要。


编辑 | 阅读全文(242) | 回复(7),babituo 发表于 2008-3-14 9:19

电能供用

电能供用的职责是由营销系统、电网系统和负荷系统共同来完成的。作为生产系统的一部分,电网系统和负荷系统主要承担电网的配电设备和用户的受电设备正常运行,电能能够顺利完成消耗的物理过程的职责,其他经济和管理方面的职责,则主要通过电力营销系统来完成。

在电能供用环节中的外部主要交互事件顺序,用事件流图表达如下:

电能经过电网的输电网络从发电侧运送到需求侧,然后经过电网的配电网络传送到用户的受电端,通过受电变压器将高压电能转换成380V低压电能,通过用户的配电系统,才能为用户的各类用电负荷提供电能,用户的配电系统,连接适当的用电负荷并投入运行,消耗所需的电能。

需要指出的是,电能产品是一种特殊的产品,由于电能的传输速率是光速,也就是说,在时间上,电能产品几乎在生产出来的一瞬间就完成了运送、交易和使用消耗的全过程。我们使用了事件流图来表达各类事件的先后顺序,只是为了在逻辑上说明各类事件的动态因果关系,从而导出电源系统、电网系统和负荷系统的能力要求和职责范围。实际上,这些事件几乎都是同时发生的,本篇中事件流图中大部分的事件之间的“延迟”间隔的含义,是应该被忽略的。


电能供用整体外部过程的“事件流图”表达

(“电能供用业务用例”的模型化阐释)


经供用电过程外部事件流分析后对电网系统和负荷系统职能的补充

注:论坛上看不到所有系列文章的网友,请访问电力行业信息化圈子或我的博客
编辑 | 阅读全文(191) | 回复(0),babituo 发表于 2008-3-12 9:23

电能运送

电力系统的电网系统主要承担电能运送的职责。电能的运送和普通货物的运送形式上有相似之处,也包括电能的接受、汇集、输送、中转、分配、输出等环节,除了电能的接受和输出环节分别和电源系统和负荷系统相关以外,其余环节全部在电网系统内部完成,就象一个专业的物流公司,除了收货和送货与发货人和最终收货人有关外,其余的运输过程则全部是物流公司的内部事务。

描述电能运送的外部交互行为的“事件流图”如下,电网系统从电源系统获得能源后,经过电网内部的、汇集、输送、中转、分配过程,在此过程中电能发生转移,并产生损耗,最后输出给负荷系统。在本篇概述中,对电网内部的运行过程和对象,在这里不继续展开分析,留到后面专门的章节进行详细的分析。

从这个事件流图中,我们也可以分析得到“电网”这个整体对象,在围绕贯通这个事件流的目的上,自身对外必须肩负的整体职责或应具备的能力,这些职责或能力,在高层架构上表达了电网的总体概貌,是进一步对电网内部的分析和设计的依据。用“类-方法”图表达如后。


电能运送整体外部过程的“事件流图”表达

(“电能运送业务用例”的模型化阐释)


表达电网对象的整体职责或能力的“类-方法”图
注:论坛上看不到所有系列文章的网友,请访问电力行业信息化圈子或我的博客
编辑 | 阅读全文(266) | 回复(1),babituo 发表于 2008-3-5 11:0

过程价值的实现

电能生产

电能生产过程就是把自然界中以其他形式存在的能量转换成以电力形式存在的能量的过程,电力系统的电源系统负责完成该过程。电能生产过程目标价值是:生产出从数量、质量和供应速度上都能满足电网所需求的电能。

站在电源系统的外部,可以用电源系统和外部关联对象之间所产生的交互事件发生的顺序,来反映了电能生产的整体外部协作过程,如下的“事件流图”表达了这个外部协作过程:

电能生产整体外部过程的“事件流图”表达

(“电能生产业务用例”的模型化阐释)

这个事件流图省略了电源系统内部的电能生产过程中的细节,从一个比较高度抽象的层次抓取了电源系统和外部对象围绕电能生产过程所进行的主要交互事件,相对静态结构关系模型而言,该图表达了电力系统在电能生产过程的动态架构的特征。

图中电源系统之下的直线表示电源系统进行电能生产的状态线。

电源系统在自身“启动发电”事件发生后,就进入了发电生产状态,之前,则处于停机状态。在发电生产状态,电源系统必须维持内部的发电机组不间断地运转,因此,需要持续得从外部获得能源材料,并持续地将生产的电能输送出去,同时进行发电过程的监控,把得到的运行数据,其中包括电能计量数据,报送给影销系统。

并非所有的电源系统的能源材料都来自供应商,类似水力发电厂、太阳能发电厂、风力发电厂和潮汐发电厂等,利用自然界的可再生能源发电的电源系统,一旦建设完成,其能源材料就直接从自然界获取。类似燃煤、燃油、燃气电厂,核电厂等这些利用需要开采的能源材料发电的电源系统,则通过能源材料供应商获得。

从电能生产整体过程事件流图,还可以可以分析出电源系统为了实现这个事件流,所必需具备的,从整体外部表现出来的能力。

为了响应发电计划并启动发电,电源系统必须具备获取能源材料的能力,为了有电能输出,电源系统必须具备发电生产的能力,为了能传送发电过程数据到营销系统,以便营销系统进行经济过程运行,电源系统必须能对发电过程进行数据采集,为了响应发电计划变更,发电系统还必须能对发电过程进行监测和控制。于是,可以从分析中得到电源系统对外部的基本职责和能力的定位,用类-方法图表达如下:

 

电源系统所需能力的“类-方法”图表达

该图是对电力生产系统静态结构关系图的一个补充,通过对系统需要进行的动态过程的跟踪叙述,可以发现静态模型中的对象应该具备的对外表现的能力或承担的职责。通过静态模型和动态模型的交替分析,不断精化模型细节内容,这是面向对象分析方法的基本技法。

         由于本篇是一个电力系统UML业务模型的概述,因此不再深入介绍对电源系统实现电力生产过程的内部细节的业务模型,那些工作将在详细的电源系统业务建模中进行。

注:论坛上看不到所有系列文章的网友,请访问电力行业信息化圈子或我的博客。
编辑 | 阅读全文(265) | 回复(1),babituo 发表于 2008-3-3 16:26

电力生产系统

静态结构关系模型


电力生产系统组成和结构的“类-关联”图表达

主要对象

l         电源系统:负责生产出电力能源的系统,具体包括各种类型的发电厂。

l         电网系统:负责把电力能源从电源所在地运送到负荷所在地的系统。

l         负荷系统:负责消耗电力能源,利用电力能源来推动社会经济的系统,负荷指的是各种需要电力来驱动的设备和电器产品,如机床、电视、空调等。

l         电能:以电力方式存在的一种能源。

n         电能的数量单位是“度”(千瓦小时);

n         电能供应的速度用电功率来衡量,其单位是瓦特;

u       影响电功率大小包括两个方面的因素:电压和电流;

u       电压的单位是“伏特”

u       电流的单位是“安培”,1安培 = 1库仑/1秒钟;

l         库仑是描述流经导体的电荷多少,即:电荷量的单位。

u       电压和电流的乘积就是电功率的大小,即:

u       1瓦特 = 1伏特 X  1安培 = 1伏特X 1库仑)/1秒钟。

n         从这里我们可以温习一点小电气物理知识:电能实际上就是在一定的电压驱使下流动着的电荷量,就象从一定高度下流下来的水,有压力同时有流量,所以就有能量。只不过水是通过在河流或水管中流动来体现能量,而电则是通过在空气(雷电)和电线中流动来体现能量的。水力发电正好把水流的能量转换成了电流的能量。

主要对象关系

l         一个电力生产系统由一个或以上个电源系统,一个或以上个电网系统,一个或以上个负荷系统组成。

l         一个电源系统能以一定的最大速度生产出一定数量的电能。

l         一个电网系统能以一定的最大速度运送一定数量的电能经过一定的空间距离。

l         一个负荷系统能以一定的最大速度消耗一定数量的电能。

注:论坛上看不到所有系列文章的网友,请访问电力行业信息化圈子或我的博客。
编辑 | 阅读全文(476) | 回复(6),babituo 发表于 2008-2-29 10:20
(共 105 条) 上一页 1 2 3... 6 7