团队维护的网站

cloud.systemsci.org 团队云存储,用的owncloud平台,放在北京师范大学(219.224.31.20反向代理)。

cmap.systemsci.org 概念地图网站,用的CmapServer平台,放在北京师范大学(219.224.31.20反向代理)。

game.systemsci.org 博弈实验平台,用的oTree平台,放在北京师范大学(219.224.31.20反向代理)。

hpc.systemsci.org 计算平台,用的jupyter+SageMath平台,以及lapack, petsc, slepc, MKL等计算包(后面这些需要本地ssh登录——例如ssh hpc.systemsci.org -p 7712 使用),放在北京师范大学(219.224.31.43反向代理)。

www.edutopian.org 概念地图为基础架构的课程系统,建设中,暂时只能内部测试,放在北京师范大学。

www.revdi.org 综述文献点评网,建设中,暂时只能内部测试,放在北京师范大学。

www.systemsci.org 团队成员博客群,已经搬到阿里云上。

www.bigphysics.org 团队研究项目整理网站,已经搬到阿里云上。

www.learnm.org 汉字理解型学习网站,已经搬到阿里云上。

阿里云服务器地址,47.93.254.253。ubuntu虚拟机。

学校识别,GRID和google 自定义搜索(custom search engine) api

由于研究工作需要(城市以及学校之间的学术支撑和利用关系、作者姓名识别),需要对文章的作者单位做一个识别。

目前,已经有Grid.ac(https://www.grid.ac/)做了这样的工作,并且提供编码以后的全数据下载

我们也对Grid给出来的结果做了初步测试,结果很不错。不过大约有10%需要人工干预,或者至少人工确认一下。在这个10%之中,通过wikipedia或者google搜索,可以发现,大约有40%左右还是正确的,剩下的就需要从wikipedia或者google搜索来获取数据了。

其中,https://www.google.com/cse/ 提供了用户自定义搜索(针对某个网站+全网)的API。

对于需要人工确认的学校名称、地址,除了调用wikipedia数据(data dump 或者 api)之外,还可以用这个google 自定义搜索(custom search engine) api来实现。例如,这是一个以wikipedia和系统科学人为特定网站设定的(同时也包含了全网的结果的)自定义搜索:https://cse.google.com/cse?cx=003079937312448303458:6csbgejecua

甚至,google还允许你用JSON API的方式来格式化获取搜索结果,而不仅仅是网页形式。不过,这个JSON API的方式每天的上线是1万次,并且不能全网搜索。

汉语拼音的系统化可拼读化:只增加一个字母,就能完全拼读,而且规则变少

最近在帮逸儿学习汉语拼音。这个很多时候能够拼读,很多时候又不能够拼读的汉语拼音确实是一个烦人的东西。这样的辅助发音体系还最好有,不能完全扔了。所以,可以考虑做局部的调整。这样的调整,本质上,就是从完全准确的完整的汉字读音列表开始,例如用通用国际音标来标记,然后,选择一些能够合并的音合并起来,使得用比标准国际音标更少的表音符号就能够比较准确地标注汉字的读音。当然,实际上修改起来会遇到各种困难,例如现在已经习惯的人,现在已经做出来的文字系统出版系统等,都会是阻力。所以,这里,仅仅列做来能做的一点点修改,那些仅仅修改一点点地方就能够使得系统化程度更高,可拼读程度更高的地方。

  1. 第一个要改变的就是引入ə,用来区分e的两个音:e和ə。前者是例如在ei,en,er,eng里面的发音,后者例如在ie(iə),üe(üə)里面。
  2. 第二个要改变的就是利用引入的ə,用重新标注uo(uə)和ou(əu)。
  3. 第三个顺便统一uo(uə)和o。这两个音实际上略有区别,但是,为了简单记,不如合起来算了。例如,玻(bo)璃和玻(buo,buə)璃实际上,差不多。这样就相当于取消了字母o的单独发音。
  4. 第四个,那么o怎么办呢,还需要保留吗?需要,而且发音方式是ɔ的发音,仅仅用在ao和ong里面。
  5. 第五个,用ŋ取代ng里面,省的ng(嗯歌,讷歌,都拼不出来ŋ的发音)不可拼读。
  6. 第六个,取消去不去掉ü上两点的规则,以及表声调的位置的规则。例如可以设定这样的规则(能够不变的就不变,能够少一件事,就少一件事):一直保留ü,一直把声调标注在第一个元音字母上。
  7. 第七个,ian改成ien,üan改成üen。例如,线(xian)条是不可拼读的,只有线(xien)条才是,选择是(xüen ze)。
  8. 第八个,允许元音字母出现在第一个,也就是允许没有声母的拼音;同时允许只有声母的拼音。前者,例如ua,iou(顺便让iu回到iou,让ui回到uei)。后者例如sh(诗,建议也修改为符号ð),zh(蜘,建议也找个单个的新符号),ch(吃,建议也找个单个的新符号),z,c,s。这样也就顺便取消了拼音字母y,w。
  9. 第九个,最重要的一个,取消所有的固定拼读韵母,完全通过把发音连起来——拼读起来——来读汉语拼音。

有了上面的修改,韵母a, o, e, i, u, ü成了a, u-ə, e, ə, i, u, ü, o。中间的u-ə不是基础字母,于是,基础字母成了a, e, ə, i, u, ü,o。

另外n,r,ŋ三个字母比较特殊,一定程度上扮演了韵母的角色。不过,按照我们的新的规则,我们不需要区分声母韵母,直接合起来读过去就行了。

从这七(其实是6.01个,最后的o仅仅在两个地方用得到)个字母除法,ai, ei, ao, uo, ou, iu, ui, ie, üe, an, en, in, un, ün, ang, eng, ing, ong,ian, uan, üan, iang, iong, uang, 所有这些固定组合就都不需要了,换成如下能够拼读的: a-i(表示两个字母合起来读就行), e-i, a-o, u-ə, ə-u, i-ə-u, u-e-i, i-ə, ü-ə, a-n, e-n, i-n, u-n, ü-n, a-ŋ, e-ŋ, i-ŋ, o-ŋ,i-e-n, u-a-n, ü-e-n, i-a-ŋ, i-o-ŋ, u-a-ŋ.

声母方面,我们留下来了:b,p,m,f,d,t,n(完全按照英文音标的发音,不再需要它来扮演nu和un两个角色了,都大概读作“en”),l,g,k,h,j,q,x,zh,ch,sh,r,z,c,s。

有了这些,我们就完全能够拼读了:一字一音,没有固定读法,直接通过组合——也就是连读——来发音。例如,线条(x-i-e-n t-i-a-o),绚烂(x-ü-a-n l-a-n),无穷(u q-i-o-ŋ), 无缺(u, q-ü-ə)。

当然,这样的修补工程不能完全实现最大的系统化——也就是用最少的基本发音单位来表达所有的读音并且完全可拼读。如果想完全系统化,还是要通过先用国际音标把所有的发音标准确,然后再合并近似的方法。例如,q,x,j的存在和合理性,以及是不是有更好的方案,就是一个需要从这个根本的系统化角度来讨论的问题。当然,以上的讨论仅仅是原理性的讨论,真的改起来,尽管长期来看肯定是好事,但是,短期来看代价还是太大。有兴趣的学生,尤其是学习我的《系统科学导引》的学生,可以拿这个来练练手,体会一下什么是系统科学。

顺便,这里也体现了把数学和科学的技术和思想,尤其是系统的思想——用最少的单元来足够准确地表示事物,用于问题识别和问题解决。可惜了,当年设计这个汉语拼音的时候,可能数学家、物理学家没有太多的参与。

按道理,赵元任的数学物理都很好的啊。当然,我这个修补也不一定比赵元任的汉语罗马字强,倒是更简单了,并且,显然比目前的汉语拼音强——我这个是完全可拼读的。

工作报告的写作方式

经常需要把ideas、半成品的工作、已经完成的工作整理出来,供后来人使用,就形成了工作报告的一个八股形式。忽然发现,学生没学会,尽管我已经分享过多次这样的报告。所以,整理一下,供学生使用。

  1. 工作报告,首先要交代研究问题。如果有必要也可以对研究问题稍微解释一下,加一点点背景。
  2. 然后,要交代大概研究思路。如果有必要也可以加一点点背景,说一下其他人怎么研究这个问题,做了什么,结论如何。
  3. 接着,在每一个阶段,交代我们做了什么,这个做了的事情能够如何回答一开始的研究问题。
  4. 再接着,要交代下一步做什么,为什么。
  5. 最后,是参考文献和文章草稿。如果有必要也可以附上实验记录和分析程序。

获取sci-hub数据

sci-hub是学术论文检索网站,提供了从文章doi等信息找到文章下载地址(这些地址又被libgen网站收集和保存)的信息。当然,这些文章基本上是有版权的。因此,实际上sci-hub和libgen是法律的边缘:没有直接保存原文(有的文件可能有原文,不清楚),但是提供了原文下载地址的集合。不过,我真的很喜欢这个网站的理念:知识应该属于全人类,应该尽量方便大家的获取。当然,也应该给写作、制作和出版这些知识的载体——也就是文章和书——的人一些利益。所以,我自己的文章和书的处理方式是在网上免费提供没有经过出版社处理的全文,但是经过出版社处理的文档,我不管。

最近纯粹出于好奇和学术研究兴趣,想看看sci-hub和libgen这个网站在促进学术交流上的效果,还想顺便用来匹配一下一堆我们自己有的文章的doi,就去找了找下载获取sci-hub和libgen数据的方法

首先,这个数据分成三个部分:第一、保存下载地址的文件,通常是torrent文件。第二、保存文章题录数据(metadata)的文件,通常是MySQL database dump文件。第三、提供这个网站的服务的源程序。第三部分仅仅在制作镜像的时候需要使用,就不需要下载了。这三部分文件都可以直接从libgen的主页上获取。

其次,获取了文件之后,需要从torrent文件的信息里面来下载和存储相应的文件。

接着,需要把题录数据和下载的文章对应整合起来。

最后,内部使用,也可以把libgen的服务系统建起来,或者自己做一个检索系统。