Blogging with Hexo

一直都想写 blog, 总觉得很多想法值得写一写的。下定决心要写是在看了刘未鹏神牛的暗时间之后。于是先是在 blogspot 上随便搞了一个, 没指望有人看。后来就删了那边, 把东西都迁移到了 hexo 上。

hexo 是一个基于 Node.js 的 static blogging system。 它的作者是台湾人, 可以看到 github issue 里有好多中文的。它的使用与 Octopress 类似, 也兼容 Octopress 的好多插件, 但以快速简洁为亮点, 因为前者是 ruby 写的。

Read more

Problem of Two Eggs

在知乎上看到这么一道题, 原题描述的不太严谨, 其大意是:

一幢 200 层的大楼, 给你两个鸡蛋. 如果在第 n 层扔下鸡蛋, 鸡蛋不碎, 那么从前 n-1 层扔鸡蛋都不碎. 这两只鸡蛋一模一样, 不碎的话可以扔无数次. 已知鸡蛋在 0 层扔不会碎.

提出一个策略, 要保证能测出鸡蛋恰好会碎的楼层, 并使此策略在最坏情况下所扔次数最少.

Read more

清华的数学学习

貌似中文标题的都偏吐槽向.

现状

清华的 "工科数学基础课", 课堂教学方式大致都是 抄课本.

当然, 抄有不同的抄法. 有的老师抄在黑板上, 有的抄在一学期改一页的 ppt 上. 一般他们在抄的同时会把文字部分匹配出来读一读, 遇到公式的话有的会读, 有的用指示代词替换掉了, 每个知识点下面抄一个例题. 总之像是个可以写程序控制机器人来完成的活.

Read more

My Vim

vim 折腾了很久了, 好像有必要写一写我的 vim 配置.

大概就按照 vimrc 的顺序, 只挑一些好玩有趣的来讲好了. 完整的还是去 github 上看吧:

话说... 语法高亮非常悲催因为 highlight.js 不支持 vimscript 怎么办..

写了一个 hexo 插件: hexo-tag-vimhighlight, 现在可以用 vim 高亮代码了. 谢谢 @Alick Zhao 同学告知 vim 内置的 2html.

Read more

Facts About David Hilbert

没错, 这篇文章其实是 Cantor, Gödel, Turing 这个主题. 我发现只要关于他们的东西都很容易让我看 high..

最近在看那本 The Annotated Turing. 书中第三章以 David Hilbert 为主线, 介绍了 20 世纪初的几十年里数理逻辑与集合论的发展. 想一想的话, Hilbert 的确是将 Cantor, Gödel, Turing 联系起来的关键人物, 然而这段历史我以前知道的并不细致, 而且关于 Hilbert's Program, Hilbert's Problems 的故事各个地方说的都乱七八糟的自己也不清楚了, 于是做个记录.

Read more

Monte Carlo Tree Search & Monte Carlo Ray Tracing

这学期有两个有意思的大作业都跟 Monte Carlo 有那么点关系.


人智的大作业是写一个 Connect Four 游戏的 AI. 当然由于原本这个游戏是有必胜策略的, 所以老师对这个游戏做了小修改. 给了 50 个测试 AI, 编号 2~100 的偶数, 越牛的编号越大, 让我们打着玩, 评测时用另外一批 AI.

建议的方法是 剪枝, 但是写出来之后效果不行, 貌似缺一个好的估价函数. 但是编估价函数又有点蛋疼.... 这时候 maskray, zxytim, blahgeek 纷纷表示 Monte Carlo Tree Search 很靠谱.

Read more

关于张益唐的一些八卦

今天听老师说了一些关于 Yitang Zhang 的八卦相当感慨

因为文革原因, 上北大的时候已经 20 多岁了

78 级北大数院公认最优秀的毕业生

硕士在北大师从老潘学解析数论

84 年丘先生回国到处演讲招学生, 挑选了很多优秀的中国学生, 当时身为 San Diego 院长的他一年招了 20 多个中国学生去 San Diego, 他们几乎都成为了当今最牛的中国数学家

Read more

SIFT and Image Stitching

图像处理课期中要写一个图像拼接程序.

这方面的技术当然已经很成熟了, 开源界最著名的当属 hugin, 拼全景图效果非常好. 在学术界也已经不是难题了, Lowe 在 IJCV2007 的一篇 Automatic Panoramic Image Stitching using Invariant Features 是一个完整的流程介绍. MSRA 的 Szeliski 有过一本几十页的 Image Alignment and Stitching: A Tutorial, 也详细的介绍了图像拼接的众多方法. 我基本就照着 Lowe, Szeliski 的一堆论文的方法在搞.

Read more

On the Solvability of 8-Puzzle

人智课一次作业是写一个 A* 程序算八数码问题的最优解. 一个自然的问题是, 什么样的初始状态有解?

一个熟知的结论是, 将矩阵元素排成一排, 忽略空格, 当且仅当逆序对个数为偶数时此问题有解.

必要性很好证明, 因为观察可知所有的移动操作不会改变逆序对个数的奇偶性. 那充分性呢?


要证明充分性, 需要将矩阵用另一种方式展开成一排:.

Read more

Recurrent Event

面试中曾经遇到这么一道概率题:

一只猴子随机敲键盘上的 26 个字母, 期望在多少次之后能首次打出 "hulu"?

当时只是直觉觉得答案应该是 , 没有想出很好的做法. 想出来的唯一方法是列一个四元线性方程组, 四个变量定义如下, 有点像 Markov Chain 的感觉:

  1. 打出 hulu 的期望次数
  2. 已打出 h, 从现在开始算打出 hulu 的期望次数
  3. 已打出 hu, 从现在开始算打出 hulu 的期望次数
  4. 已打出 hul, 从现在开始算打出 hulu 的期望次数
Read more