今天是2014年2月14日,农历正月十五,传统的元宵佳节,祝大家元宵节快乐!
不过虽说是元宵佳节,但是我们这里的习俗却没有闹元宵的,好像在我们这里元宵节就像普通的初一十五一样,惯例地上个香,祭下神而已,唯一特别的地方就是早上妈妈放了个鞭炮,什么汤圆、灯笼、灯谜都没有呢。不过这并不妨碍我欣赏元宵节,印象里好像上学以来这是第一次在家过元宵节。幸好没有参加美国数学建模,不然又少了半个月的假期,少了一次难得的元宵,而多了得不偿失的劳动...
今天也是西方的情人节,但在这里我只强调元宵节。首要原因却不是我目前单身(当然这也是原因之一^_^),而是元宵节是中国传统节日。我这个人有个奇怪的“嗜好”,反正越潮流的东西我越不跟。于是乎,既然那么多人都庆祝着西方节日(什么万圣节、圣诞节、情人节),那么我就偏不凑这个热闹。我又想起了去年圣诞前夕有个师弟过来向我们宣传和推销圣诞的东西,被我批了一顿,我直言说“你为什么不等元旦再来?”。我想,如果哪一天,我也有机会庆祝情人节,我也只是庆祝中国的情人节,总感觉中国的情人节美多了:七夕,Qixi Festival,多美!不论是典故还是习俗都更美~
视频演示:费曼的茶杯
By 苏剑林 | 2014-02-07 | 19413位读者 | 引用三个相切圆的公切圆:补充
By 苏剑林 | 2014-01-30 | 27402位读者 | 引用不求珍馐百味,但愿开水白菜
By 苏剑林 | 2014-03-15 | 42720位读者 | 引用Mathieu方程
在文章《有质动力:倒立单摆的稳定性》中,我们分析了通过高频低幅振荡来使得倒立单摆稳定的可能性,并且得出了运动方程
$$l\ddot{\theta}+[h_0 \omega^2 \cos(\omega t)-g]\sin\theta=0$$
由此对单摆频率的下限提出了要求$\omega \gg \sqrt{\frac{g}{h_0}}$。然而,那个下限只不过是必要的,却不是充分的。如果要完整地分析该单摆的运动方程,最理想的方法当然是写出上述常微分方程的解析解。不过很遗憾,我们并没有办法做到这一点。我们只能够采取各种近似方法来求解。近似方法一般指数值计算方法,然后笔者偏爱的是解析方法,也就是说,即使是近似解,也希望能够求出近似的解析解。
一本对称闯物理:相对论力学(一)
By 苏剑林 | 2014-03-19 | 31571位读者 | 引用简单说说
笔者最近陶醉于从李对称的角度来理解力学和场论,并且计算得到一些比较有趣的结果,遂想在此与大家分享。我发现,仅仅需要一个描述对称的无穷小生成元和一些最基本的假设,几乎就可以完成地推导出整个相对论力学来,甚至推导出整个(经典)场论理论来。这确实是不可思议的,我现在能基本体会到当年徐一鸿大师写的《可畏的对称》的含义了。对称的威力如此之大,以至于我们真的不得不敬畏它。而在构思本文题目的时候,我也曾想到过用“可畏的对称”为题,但不免有抄袭和老套之嫌。后来想到曾有一部漫画叫《一本漫画闯天涯》,遂将“漫画”改成“对称”,“天涯”改成“物理”,似乎也能表达我对“对称”的感觉。
对称就是在某种变换下保持不变的性质,比如狭义相对论要求所有物理定律在所有惯性系中保持不变,这相对于要求描述物理定律的方程在匀速运动的坐标变换下保持不变,结合光速不变的要求,我们就可以推导出洛伦兹变换,从而完成地描述了狭义相对论里边的对称。然而,并不是任何时候都可以想推导洛伦兹变换那样,能够把一个完整的变换推导出来的。幸好,李对称的不需要完整的对称描述,它只需要“无穷小变换”(意味着我们可以忽略掉高阶项),对应地产生一个“无穷小生成元”,用这个无穷小生成元,就足以完整构建出我们所需要的物理来。这种“无穷小”决定“广泛”、“局部”决定“全局”的奇妙至今仍让我觉得不可思议。(关于李对称、无穷小生成元的基本概念,不妨先阅读:《求解微分方程的李对称方法》)
用PyPy提高Python脚本执行效率
By 苏剑林 | 2014-06-11 | 23903位读者 | 引用在《两百万前素数之和与前两百万素数之和》中,我们用Python求了前两百万的素数和以及两百万前的素数和,并且得到了在Python 3.3中的执行时间如下:
两百万前的素数之和:
142913828922
time: 2.4048174478605646前两百万的素数之和:
31381137530481
time: 46.75734807838953
于是想办法提高python脚本的执行效率,我觉得在算法方面,优化空间已经比较小了,于是考虑执行器上的优化。在搜索的无意间我看到了一个名词——Psyco!这是python的一个外部模块,导入后可以加快.py脚本的执行。网上也有《用 Psyco 让 Python 运行得像 C一样快》、《利用 psyco 让 Python 程序执行更快》之类的文章,说明Psyco确实是一个可行的选择,于是就跃跃欲试了,后来了解到Psyco在2012年已经停止开发,只支持到Python 2.4版本,目前它由 PyPy所接替。于是我就下载了PyPy。
写在前面:作为离散数学的实验作业,我选择了研究数独。经过测试发现,数独的自动推理还不算难,我把两种常规的推理思路转化为了计算机代码,并结合了随机性推导,得到了一个解题能力还不错的数独程序。事实上,本文的程序还可以进一步优化,以得到更高能力的数独程序(只需要整理一下代码,加上几个循环和判断即可),但是我实在太懒,没有动力继续弄下去了,就这样先和大家分享吧。最后,笔者认为本文的算法是更接近我们的思维的算法。
数独简介
历史
相传数独源起于拉丁方阵(Latin Square),1970年代在美国发展,改名为数字拼图(Number Place)、之后流传至日本并发扬光大,以数学智力游戏智力拼图游戏发表。在1984年一本游戏杂志《パズル通信ニコリ》正式把它命名为数独,意思是“在每一格只有一个数字”。后来一位前任香港高等法院的新西兰籍法官高乐德(Wayne Gould)在1997年3月到日本东京旅游时,无意中发现了。他首先在英国的《泰晤士报》上发表,不久其他报纸也发表,很快便风靡全英国,之后他用了6年时间编写了电脑程式,并将它放在网站上,使这个游戏很快在全世界流行。
台湾于2005年5月由“中国时报”首度引进, 且每日连载, 亦造成很大的回响。台湾数独发展协会(Taiwan Sudoku Association, 简称 TSA)亦为世界解谜联盟会员。香港是在2005年7月30日由AM730在创刊时引入数独。中国大陆是在2007年2月28日正式引入数独。北京晚报智力休闲数独俱乐部(数独联盟前身)在新闻大厦举行加入世界谜题联合会的颁证仪式,成为世界谜题联合会的39个成员之一。(引用自“中文维基百科”: http://zh.wikipedia.org/wiki/数独)
最近评论