数学和计算
数学是寻找模式;计算是推演模式而得到结果。
当数学开始研究计算的模式时,便产生了算法。
如同对“流体运动”的研究,人们希望在找到其模式的基础上,令其为人所用。
计算是什么?是一种通过推演模式而得到结果的智力活动。
由于计算这种活动涉及时间等资源的消耗,我们自然希望找到最优化的计算过程,来节省开支。就像其他规划问题一样。
对计算的研究就是为了寻找最优计算过程(包括良好的数据结构、算法,等等),但目前并没有理论上的成果来系统地阐述如何最优化计算。仅仅还只是通过“手工”寻找优化算法,无法直接设计出最优算法,如NPC问题。
我偏向于认为NPC问题是没有多项式时间解的,尽管这还未被证明(我想,证明本身也许也是没有多项式时间解的)。我的理由是,存在O(lgN)时间解,存在O(N^k)时间解,当然也应该存在O(e^N)时间解,这是一个合理的推理逻辑,所以我任何存在一些问题是O(e^N)时间解的,也即它们是没有多项式时间解的“难题”。
Computing Science 并不是只关于计算机的,而更准确地,应该说是关于“计算”的科学。计算机只是实现这一科学理论的机器。
计算存在于生活的方方面面,像规划行程,开支预算,等等。
数据结构,以及各种算法(如,递归算法,爬山算法),并不是只针对计算机而有用的。只不过人类是所使用的“智能”算法(大脑结构允许)是有时比计算机所使用的更高级的算法(神经网络),而在有些问题上,计算机所使用的算法(当然也是人设计的),人类大脑同样适用,如 Euclid 辗转相除法求公因子。
人的大脑和计算机都不过是对算法的一种实现,而算法本身的影响因素(算法、数据结构),都是客观存在的,通用的,universal approved。关键至于:人的大脑是否足够强大以寻找到那些算法,以及NPC算法是否客观存在。
所以,优化算法不仅对计算机有用,对许多其他领域同样有用,你可以用它改善日常生活。
当数学开始研究计算的模式时,便产生了算法。
如同对“流体运动”的研究,人们希望在找到其模式的基础上,令其为人所用。
计算是什么?是一种通过推演模式而得到结果的智力活动。
由于计算这种活动涉及时间等资源的消耗,我们自然希望找到最优化的计算过程,来节省开支。就像其他规划问题一样。
对计算的研究就是为了寻找最优计算过程(包括良好的数据结构、算法,等等),但目前并没有理论上的成果来系统地阐述如何最优化计算。仅仅还只是通过“手工”寻找优化算法,无法直接设计出最优算法,如NPC问题。
我偏向于认为NPC问题是没有多项式时间解的,尽管这还未被证明(我想,证明本身也许也是没有多项式时间解的)。我的理由是,存在O(lgN)时间解,存在O(N^k)时间解,当然也应该存在O(e^N)时间解,这是一个合理的推理逻辑,所以我任何存在一些问题是O(e^N)时间解的,也即它们是没有多项式时间解的“难题”。
Computing Science 并不是只关于计算机的,而更准确地,应该说是关于“计算”的科学。计算机只是实现这一科学理论的机器。
计算存在于生活的方方面面,像规划行程,开支预算,等等。
数据结构,以及各种算法(如,递归算法,爬山算法),并不是只针对计算机而有用的。只不过人类是所使用的“智能”算法(大脑结构允许)是有时比计算机所使用的更高级的算法(神经网络),而在有些问题上,计算机所使用的算法(当然也是人设计的),人类大脑同样适用,如 Euclid 辗转相除法求公因子。
人的大脑和计算机都不过是对算法的一种实现,而算法本身的影响因素(算法、数据结构),都是客观存在的,通用的,universal approved。关键至于:人的大脑是否足够强大以寻找到那些算法,以及NPC算法是否客观存在。
所以,优化算法不仅对计算机有用,对许多其他领域同样有用,你可以用它改善日常生活。