编程前,关于时间的想法
来源:互联网 发布:流程图制作软件 编辑:程序博客网 时间:2024/06/15 13:29
一亿次加法运算,就能耗费我5秒钟的时间;那么到了十亿次,50秒,勉强可以接受;100亿次,辛苦;1000亿次——等一个多小时!人都疯掉了。
所以,我干脆宏观点,考虑程序执行的时间吧!
就拿多目标函数计算的问题来说,精确到小数点后5位,那么意味着从0.00001到0.99999需要十万次计算。两个决策变量,都从0~1,那么就需要10万的平方次的计算量,再考虑一下f(x)的复杂程度(至少比加法运算麻烦1000倍吧?),再加上实际问题中是“多个目标”。保守点估计,计算量是:10万*10万*1000*2(2个目标函数)。
和我们100亿次的“辛苦程度”比较一下,相差2000倍;也就是说,当我们辛辛苦苦等待了8分钟以后,需要完成的任务才刚刚进行了2000分之一!
可想而知,要在有效时间内得出可观的结果:就是要进行这样的探索:尽可能地将时间花费在“有效”的地方。如果需要2000次才能遍历完全的空间,最好能够一次就找到重点!
将这个比例放大:从0.00001到0.99999,我不可能以每次0.000001的步长进行累加,而是增加2000倍,每次步长0.02——这实在是很大的跨度了(这种考虑给我实际的编程操作留下了把握的余地呢......)。
对比一下tsp问题的难度:144个城市,问题的规模为5.55e+249,除以100亿,结果为5.55e+239——可想而知嘛!既然遗传算法能够将tsp问题求解出来,那么对于多目标这样的问题,能够贴近于理论解,已经是相当有可能的了。
- 编程前,关于时间的想法
- 编程前,关于时间的想法2
- 关于一些编程的想法
- 一个关于在线时间管理工具的想法
- 关于运行时间的一些想法
- 脱不花:关于时间管理的几个想法
- 辞职前的想法
- 关于编程入门书籍选择的想法
- 关于互联网编程的若干想法
- 关于编程语言的一些想法
- 关于编程语言的一点想法
- 关于时间复杂度和空间复杂度的一些想法
- 上班前的一些想法
- 前后端分离的想法
- 关于成功的想法
- 关于J2EE的想法
- 关于加班的想法
- 关于创业的想法
- MIS的未来在共享软件 嵌入式软件需求旺盛
- 绑定多域名的ASP代码
- Css基础学习(七)—链接
- IIS6.0+PHP5+MySQL+phpMyAdmin完全解决方法
- C||C++中几个罕见却有用的预编译和宏定义
- 编程前,关于时间的想法
- Css基础学习(八)—表格
- linux线程 基本函数 笔记
- 微软很官方 Java很民间
- J2EE 常见回答
- GridView控件截取字符串
- Player /Stage Installed on Ubuntu 7.04|Player-2.0.4在Ubuntu 7.0.4下的安装
- Css基础学习(九)—缩写
- sql 数据库中字段大小写问题