2008年03月
为了验证我对PARETO最优的观点是否正确,我又参阅了许多源代码,其中Non-dominated Sorting Genetic Algorithm II developed by Kalyanmoy Deb et al.NSGAII--ProfessorKalyan的源代码最具参考价值,显然我对Pareto优胜的概念认识是正确的,但是群体中的Pareto前端如何产生显然在对Professor XiaoLan的论文分析的时候产生了偏差,显然如果按照Pareto优胜的概念去产生前端,前端当然不可能会很多,这个问题到底如何解决,我还在郁闷之中,下面是今天阅读的源代码,供大家参考阅读全文>
发表于 @ 2008年03月27日 11:22:00|评论(loading...)|编辑
一个随机产生的100BCell群体,其中能有多少是Pareto最优解?
我的答案是很少,少到几乎接近0了,偶尔才有一两个,显然我觉得自己在什么地方搞错了。
我们说BCell a优于BCell b当且仅当 a在各个目标上都不劣于b,并且至少一个目标上优于b,这是Pareto最优解的定义。于是在一个群体中的非劣解,必须优胜于其他如99个个体,这个概率实在是很小。还是
证明100个群体中最多只有一个Pareto最优解
:假设群体中至少有两个最优解,那么分别设其 为A,B 根据定义(设优化目标为两个)则
1. A.obj1>= B.obj1 A.obj2>= B.obj2 并且至少一个等号不成立
2. B.obj1>=A.obj1 B.obj2>=A.obj2 并且至少一个等号不成立
显然有A.obj1 = B.obj1 A.obj2 = B.obj2 而等号至少一个不成立,显然矛盾
所以按照我理解的Pareto最优,前端最多只有一个,这是我需要解决的问题
如果你也在做这方面的研究,欢迎的你的指教,谢谢阅读全文>
发表于 @ 2008年03月26日 09:08:00|评论(loading...)|编辑
原来流有如此强大的功能,现在才明白自己在C++面前触及的真的只是冰山一角,看看我的收获,相信你也会有所收获的阅读全文>
发表于 @ 2008年03月23日 14:05:00|评论(loading...)|编辑
交大一道复试题的C++写法,我觉得程序的可读性很重要,很多人写的算法只有他自己能看懂,于是我自己重新做了一遍这道题,当然做题的过程中我也学到了很多的东西阅读全文>
发表于 @ 2008年03月23日 12:35:00|评论(loading...)|编辑
引述了C,C++中如何进行字符串的解析,其实不必重头来过,使用SSCANF函数就不错,本文给出了一些sscanf的高级用法,希望能够对大家有用阅读全文>
发表于 @ 2008年03月22日 16:57:00|评论(loading...)|编辑
在这篇文章里,没有比那些工作相关的深奥基础知识更能支持你。即使你了解其中大多数,但重要的是知道这些原理叫什么和当他们出现在会话里时如何引用它们。而且,你在辩论中需要论据的时候,有这些珍贵的论点在手是非常有用的。在这篇文章里,我们列举出30条重要的可用性规范、术语、规则和原则,这些常常是被我们忘记、忽视或者是误解的。可读性和易读性之间有什么区别? 80/20法则(或者说是巴莱多定律)是什么意思?扫雷和满意度是什么意思?还有,什么是逐渐地增强和容错性?好吧,是时候开始了。7±2原则2秒规则3次点击法则80/20法则(巴莱多定律)交互设计的八条黄金法则费茨定律阅读全文>
发表于 @ 2008年03月21日 12:20:00|评论(loading...)|编辑
/*摘要介绍本文提出了使用ActionScript 3编写开源的FLEX框架组件程序的标准。这些标准是为了使得源程序看起来更加完整,良好,专业有些标准完全是强制性的,因为没有“最佳编码方式”,然而出于一致性的考虑,所有Flex SDK项目都将遵守这些惯例正文命名语言 用法文件 组织格式化ASDoc文档命名好的命名习惯对于编写易于理解和使用的代码是至关重要的,程序员应该确保命名的准确性,特别是当命制共用的API函数这样的情况下!我们的命名标准与ECMAScript和 Flash Player 9一致。阅读全文>
发表于 @ 2008年03月18日 14:45:00|评论(loading...)|编辑
用过FLASH PV3D的人都知道,FLASH目前的所有的渲染工作都是通过CPU来运行的,因此一些非常庞大的应用例如有很多的FILTER EFFECT等等的应用,通常一打开CPU占用率直接100%,再开一个那就卡的不行了,ADOBE的flash在给我们带来高的感官体质量的同时占用的CPU也是惊人的,朋友开玩笑和我说用这样的FLASH程序CPU仿佛是在哭,我也考虑过这样的问题,既然OPENGL D3D能完成实时的渲染的时候,那么对于那些有着高端显卡的用户,FLASH为什么不考虑使用GPU来完成所有的这些费时的渲染计算呢?ADOBE终于回答了我的问题,并且交出了一份满意的答卷,我希望HYDRA,在不久的将来,我们富丽堂皇的AIR应用不会占用甚至40%的CPU时间,这个时候我想社群所有的人都或满意了
阅读全文>
发表于 @ 2008年03月17日 16:44:00|评论(loading...)|编辑
使用IDeferredInstance延迟FLEX3组件创建
模板组件可以延迟创建,这样就可以让FLEX3只加载用户目前能够看见的组件,从而大大减轻了应用程序的内存占用情况。这是FLEX3的一个新特性,值得大家关注
因为FLEX只在用户需要的时候才创建相应的UI组件实例。通过这一方法,你就可以大大的优化你的应用程序的性能
阅读全文>
发表于 @ 2008年03月17日 16:42:00|评论(loading...)|编辑
Sothink SWF Decompiler 4
Sothink SWF Decompile是一款专业的SWF反汇编工具,能够将SWF里面的所有资源榨取出来,并将其中的代码重新提取出来,功能十分强大,目前能够使用于几乎所有的FLASH版本,在反汇编之后,你能够获得所有的链接,组件,图像等等
目前的升级版本是针对FLASH CS3版本的,但是对于FLEX等IDE编写的SWF代码,这款反编译器是没有作用的。
阅读全文>
发表于 @ 2008年03月17日 16:40:00|评论(loading...)|编辑
讨论装载图片,也许你说啊那很容易啊,你可以用loadMovie("imageURL"),但是那不是我要在这里谈论的,我们要通过XML装载他们,OK仍然不是什么困难的问题,只是要将将他们装入一个网格而已
首先我们要使用一个补间类来填充延迟(延时可能很长)
#include "mc_tween2.as"//包含一个补间类
接着我们创建一个XML对象,这样我们就可以在转载图片对象的时候使用XML 属性了。
var myXmlVar:XML = new XML();
myXmlVar.ignoreWhite = true;
ignoreWhite 是XML的一个参数,控制XML是否有二义性,如果一个文本节点以空格开头,在运行时就会被丢弃,接下来创建一个数组来存放XML标记
var myArray:Array = new Array();
然后,我们需要创建更多的一些变量,在我们创建格子的时候,他能够被正确的放置,下面我给出了一个表展示这些变量是干什么的
阅读全文>
发表于 @ 2008年03月15日 10:21:00|评论(loading...)|编辑
现代人都是没有耐心的野兽,当需要使用一项新技术的时候,我们期望它迅速平稳而且高效,因此没有什么比一项新技术,但是效率低下更糟糕的了。
早些时候,我曾经写过一篇关于过渡效果,效果,动画价值的文章,其优点在于能够基于桌面和网络应用创建更好的用户体验的软件。如果你是一个FLEX开发者,从事于创建高超用户体验的丰富体验因特网应用,那么这里有一些建议,在你提高你的应用的性能的时候也许能用到,特别是过渡效果
阅读全文>
发表于 @ 2008年03月15日 10:15:00|评论(loading...)|编辑
对ADOBE FLEX的十大误解
1 用户不需要安装任何东西就可以运行FLEX应用程序
FLASH播放器其实还是需要的,不过最新的FLASH9的安装覆盖率已经达到了94% FLEX2,3在FP9环境下运行,FLEX应用程序工作在FP API(象矢量图形处理,网络)等,FLEX框架只是使用API构建了可重复使用的组件,象DATE PICKER之类的
对于桌面应用,ADOBE也正在目标让他们的程序占据桌面。例如AIR,估计到2008年1月会出第一个RELEASE版本,目前正在BETA测试,但是很多公司已经在使用AIR构建应用程序了,例如eBayDesktop
FP是100%私有的
FP的核心是Tamarin 虚拟机是MOZILLA旗下的开源项目,而SWF格式不是完全公开的,但是由OSFLASH团体维护文档,已经有无数的开源项目读写SWF格式的文件,FP的开发项目已经收到了这些开源社区的影响,他们的需求决定了FP的发展方向。FP的核心语言是ECMAScript 262也即JAVASCRIPT的规范,FLEX同时也适用了CSS规范作为其UI组阅读全文>
发表于 @ 2008年03月15日 10:10:00|评论(loading...)|编辑
NOKIA支持SILVERLIGHT了,【详见下文转载】
我想这对于FLASH LITE绝对是一个不利的消息,我个人也使用过SILVERLIGHT,感觉在上手和功能的强大情况上,SL比起FLASH产品差的太多了。当然谁都要相信微软的实力,如果它真正重视某一样东西的话,那么我们无法忘却的是我们的应用程序大部分还是要运行在XP的平台上,拿运行效率来说,那么FLASH的显然要SL的慢很多,微软自己尚没有大的动作的情况下,却有个大的手机厂商来支持其产品,这一举动,无疑为动摇不定的SL开发者们打了一剂强心针,这一回 SL有足够的资本与FLASH同台竞技了。
我在等待着ADOBE和其他手机厂商的回应,我相信还是FLASH更好
阅读全文>
发表于 @ 2008年03月12日 16:12:00|评论(loading...)|编辑
解决FLEX BUILDER3不工作的问题
在FLEX BUILDER里面有的时候调试器会无法工作,特别是你安装了FLASH CS3等多个播放器的时候,这个问题的解决方法大家应该都知道,然而这里我要讲述的是一种和你们的方法完全不同的方法
正如通常所见的问题情况下,当我开始调试应用程序的时候,我已经运行了调试器,浏览器开始启动,但是调试器却无法连接到应用程序,于是我再次运行调试器,于是调试器再次尝试连接到运行着的浏览器里的应用程序里,在应用程序的环境菜单里右击,然后选择调试器,正如下图所示
阅读全文>
发表于 @ 2008年03月12日 16:07:00|评论(loading...)|编辑
Java3D开源之我见:
【写在前面】Java3D的开源似乎昭示了SUN希望其产品继续崛起的决心,但是似乎早已是大势已去,这一步来的已经太晚了,PV3D已经在开源的世界左右逢源了。
但是换一个角度讲:JAVA3D的开源对于PV3D的开发人员又是一大喜讯,我想技术是共通的,也许JAVA3D里做的好的技术会被大家借鉴到PV3D里面,使得这个小规模团体的开源软件做的更好,更大。
Java 3D 已经开源了
Javae 3D API是作为复杂三维图形和声音渲染系统的接口的一系列层次的JAVA类的统称。开发员可以用Java3D开发创建和操纵3D图形对象的高端应用。
Java3D 项目由多个子项目组成主要包括:j3d-core(Java3D API的核心), vecmath(3D矢量数学包)与j3d-core-utils(Java3D核心utilitie),Java3D VRML97 Loader等,现在j3d-core和vecmath已经开源了,将采用GPLv2 with the Classpath exception许可授权。 阅读全文>
发表于 @ 2008年03月12日 15:53:00|评论(loading...)|编辑
什么是Bitmap类呢?它究竟能为我们做什么呢?
BitmapData/flash.display.BitmapData正如其拉丁文字面意义一样,它为我们提供了一个使用FLASH处理像素级别位图的API,当然这个类能够完成的功能很多,但是在这篇教程里我们主要使用它来光滑在程序运行时动态导入的图片对象
阅读全文>
发表于 @ 2008年03月09日 11:41:00|评论(loading...)|编辑
【写在前面:】我本人也非常推荐使用JSP来构建FLEX的服务端,这样的应用架构不难理解而且也非常方便,扩充和维护起来都很简单
有的时候你无法将跨域的配置文件放置到一个目标服务器,那么这个时候你的C/S架构就会出现一些问题,如何来解决这些问题呢?你可以使用一个服务端的代理文件作为FLEX客户端加载远程数据的一个桥梁,和直接访问域上的资源不同,FLEX首先回去访问这些代理服务,然后由这个代理来尝试获得指定域上的资源。
阅读全文>
发表于 @ 2008年03月09日 11:38:00|评论(loading...)|编辑
AS3类游戏中的键盘管理
当你在FLEX或者AS3里面监听KEY_UP事件的时候,通常会有些问题,比如多个键同时按下,本文的目的正是阐述这些问题并提出解决方案
在游戏中,通常按D向右移动,按A向左移动,但是问题是比如当你按着W希望向上移动(当然可能你的程序并没有在此要求),同时当你释放W键的同时,程序仍然控制向左移动,为了完成这个繁杂的任务,我设计了一个SINGLETON类。这个类保存着一列被按下的键,并且有两个查看KEYDOWN 和KEYUP的函数。
在KEYDOWN函数中,该函数首先查看DOWNKEY数组是否是空,如果为空,那么添加相应的KEYEVENT,这样就能够监听相应的事件了。
在KEYUP函数中,通过循环,则剔除相应的鼠标事件......
这里有一个技巧:就是在外面的文件只能够添加事件的监听器,然后在这些监听器中去调用我的MANAGER 单件,技巧就在KEYUP的监听器上,可以做一些检测来确认是否需要回调KEYDOWN函数来确认哪些键仍然被按着......
通常在我编写的游戏中,我仅仅使用W,S,D,A键位然后加上和鼠标的互动,交互也就足阅读全文>
发表于 @ 2008年03月09日 11:35:00|评论(loading...)|编辑
AS3 事件产生器扩展插件
Lee Flash教程讲师(gotoAndLearn.com )最近发布了一款免费的FLASH CS3的事件产生器扩展,该扩展插件安装后会出现在FLASH CS3窗口->其他面版 菜单项中,该插件将大大的简化您的FLASH 开发,你可以选择指定的MC然后制定要监听的事件,最后将代码贴入其中,这样插件就能自动的为你产生事件监听的框架了。
如果你对这款FLASH 插件感兴趣,那么可以访问原文档的页面去下载它
阅读全文>
发表于 @ 2008年03月09日 11:34:00|评论(loading...)|编辑
cbm同学的又一力作。我们知道拖放对于改善人机界面交互有着非常重要的作用,而ADOBE的FLEX和AIR对拖放技术都提供了强有力的支持,但是如果你不知道如何使用这些技术,当然学起来还是要费点力气的,因为ADOBE的拖放和其他语言不通。不过有了这篇笔记相信你一定能很快就上手了阅读全文>
发表于 @ 2008年03月04日 10:09:00|评论(loading...)|编辑
本文介绍了如何在FLEX中使用滤镜来对现实对象进行处理,以产生绚丽的效果。如果你对滤镜的使用还不是很清楚的话,那么ANDREW的这篇文章对你很有帮助,文章讨论了如何使用阴影,发光,等等滤镜阅读全文>
发表于 @ 2008年03月03日 15:27:00|评论(loading...)|编辑
本文介绍了FlexTeam的人员,和日常工作情况,感兴趣的你不妨点开来一看阅读全文>
发表于 @ 2008年03月03日 12:31:00|评论(loading...)|编辑
虽然我们已经讨论了很多FLEX的破解版啊,注册码啊之类的,如果你对正版软件情有独钟,那么你可以看看下面的消息:
如果你还是个学生的话,可以申请一个Adobe® Flex™ Builder 3 Pro用于教育用途。不过你要准备好一个学生证件的扫描GIF或PDF图片。
申请地址:http://www.flexregistration.com/ 阅读全文>
发表于 @ 2008年03月02日 18:30:00|评论(loading...)|编辑
使用FLASH CS3来整理混乱的AS3代码
有時從網頁或手冊上貼了 code 到 flex builder 裏它的 tab 與 space 位置會亂掉,如果用人工整理會很累,此時只要貼進 flash 裏再按一下 auto-format 就立刻服服貼貼,接著再把東西貼回 fb3 就好了啊~當年有認真學 flash 果然有回報 XD~
阅读全文>
发表于 @ 2008年03月02日 18:26:00|评论(loading...)|编辑
本文给出了AIR本地数据库的学习笔记,如果你在学习使用AIR的本地数据库SQLITE,而且也遇到了不少问题,那么这篇文章值得你一看,更值得注意的是文章最后的链接给出了该完整笔记的下载地址,初学的同学们,千万不要错过,因为现在AIR的很多技术资料都是E文的,CBM原创的文档很难得,值得需要的你花时间分享阅读全文>
发表于 @ 2008年03月02日 11:42:00|评论(loading...)|编辑
本文介绍了一组FLEX360大会的链接,对于大多数中国的开发人员来说,大家是没有时间去参加远在亚特兰大的FLEX360大会,所以在这场盛会之后接触一些与会的情景是非常必要的,因此这些链接是 非常值得一看的。阅读全文>
发表于 @ 2008年03月01日 20:52:00|评论(loading...)|编辑
Flex Builder 3.0正式版+破解补丁
大概需要感谢:YX.Shawn
Flex Builder 3.0正式版:
http://download.macromedia.com/pub/flex/flex_builder/FB3_win.exe
或
http://www.adobe.com/cfusion/tdrc/index.cfm?product=flex
AIR1.0 正式版:
http://airdownload.adobe.com/air ... obeAIRInstaller.exe
Flex Builder 3.0破解补丁:压缩包下载阅读全文>
发表于 @ 2008年03月01日 20:36:00|评论(loading...)|编辑
mx.controls.Label组件有一个很有用的特性,那就是如果其要显示的文本长度大于组件的宽度时候,会自动截断文本,并在文本后面添加上...表示文本还有未显示部分,而且还会显示一个包括完整文本内容的ToolTip,所以将Label设置为DataGrid的Renderer,可将该特性用于在DataGrid里面截断过宽的 Header文本或用于截断显示不下的单元格内容...阅读全文>
发表于 @ 2008年03月01日 20:27:00|评论(loading...)|编辑