421循环问题的小尝试

by LostAbaddon on 11月 11, 2006

  上个学期快结束的时候,和我的两个朋友小龙以及B讨论了这么一个数学问题:给定一个数,如果是偶数就除二,如果是奇数就乘三加一,然后继续这个步骤。一直重复这个步骤,那么试证明经过有限次以后,这个数列一定收敛到一,且进入4、2、1的循环中。
  比如15,按照约定,应该乘三加一的,所以就得到了46,然后46是偶数,应该除二的,得到23。从而最后得到的数列是:15、46、23、70、35、106、53、160、80、40、20、10、5、16、8、4、2、1、4、2、1、4、2、1……
  当时我们讨论了很长时间,最后B提出说能不能看看在一个数的世界线上奇数和偶数出现的次数的比。因为偶数对应了除二,奇数对应了乘三(加一对一个大数来说其对大小的影响可以忽略)。由于这里是脱离了具体的数的概率化的值,所以我和B假设一个偶数除二后得到偶数和奇数的概率是一半对一半。而按照规律,一个奇数的后一个必然是偶数,因而最后得到经过足够多次操作以后,偶数和奇数的比(统计化的)应该是2:1。当然了,这个是从世界线的角度来看的。从一次操作来看,任意一个数经过依次操作以后得到的偶数和奇数的比是3:1。后一点说明的是:似乎对于任意一个数来说,其经过两次操作以后缩小的可能性比增大的可能性大了三倍。当然,这个结论并没有什么重要的意义。但是前者的意义就比较巨大了:任意一个数的世界线(不管是否是否收敛到4、2、1循环)中,除二操作出现的概率比乘三操作出现的概率高了一倍。这就意味着如果世界线上累积进行乘了3^n,那么从概率上说它必然会面临着被除4^n的命运。也就是说,任意一个数的世界线从概率上说是总是缩小的,因为3/4<1。这里不排除中途变大的可能,但是整体来说必然缩小。这个结果非常鼓舞人心。我和B又用了把原来世界线方法的方法找到了一个临界乘数。也就是说,如果一个数是奇数,我们要进行的操作是:A(n+1)=A(n)*a+b。其中a就是乘数,b是加数。而在遇到偶数就除二这个条件下,a的最大值,应该是4。而由于对除二来说,乘4是一个很没意义的做法,所以唯一可以构成有意义循环的乘数只可能是3。此后,我们用小龙的程序验证了当a=5的时候的情况,情况是:偶尔收敛,大部分发散。对7也是如此。即使我们把加数b设成一个很大的负数,只要a大于4了,就必然是“整体发散”的(也就是偶尔几个数收敛)。这个结果对我们所使用的方法是一个非常大的利好消息。我们甚至证明了,当遇到奇数乘一个半整数的情况下,这个半整数不能大于2,因而只可能是1.5。后来在程序上,在所计算的数值范围中验证了我们的想法(后来我把程序用VB重写并进行了改进,验证了1到1000都满足我和B所提出的这条规律)。   这个模型的威力非常巨大,因为它还提供了这么一个“构造”规则的规则:如果一个数被N除余0,那么就除N;如果不余0,余n,那么就进行A(m+1)=A(m)*an+bn的操作,这时,就可以根据规则计算出余0和不余0的比例,从而来得到所有这些an的上限。   之后我们就散伙了。我回到寝室以后用VB重写了我们所用的程序,并且增加了一些功能。用这个程序我观察到了不少新的东西。   我用程序验证了,除数N决定了乘数an的上限,乘数an决定了任意数的世界线收敛的速度,而加数bn则决定了最终吸引子(也就是循环数列)的结构。对于N=2,a=3的情况,用程序严整了两个特点: 1,如果b=3^m(m为非负整数),那么吸引子唯一,为4b,2b,b; 2,不管b为多少,总存在一个吸引子为4b,2b,b,其作用域为初始值为b的整数倍的数。   当然,还有很多别的性质我们无法解释。比如对于b=17的情况,其吸引子有四种,其中一条长达69位……而很多长吸引子,在从1到500的模拟中出现的概率最高。对上面的第二条性质也存在一定的问题,比如当a=21的时候,在7的倍数上世界线的吸引子就是4b,2b,b,而不单单是21的倍数。显然,其中还有很多我们还不知道的东西存在。   对于吸引子的计算,我在上课的时候倒是提出了一个计算方法,但是却无法解释为什么有些吸引子是唯一的,有些则不唯一。更加无法说明初始数对吸引子的选择满足什么规律。

Leave your comment

Required.

Required. Not published.

If you have one.