octopussheng 发表于 2007-10-18 21:07

关联维数的问题

帮人算了一个时间序列的关联维数,结果如下,柏莱、sx等高手帮忙分析一下,结果正常不正常。关联维数是无穷大?

=G_P(data,4097,2,1,20,5)————这是我计算时的参数设置。

结果:
ln_r =
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345
    6.3251    7.0182    7.4237    7.7114    7.9345

ln_C =
   -0.4060   -0.1277   -0.0262   -0.0006         0
   -0.6127   -0.2102   -0.0489   -0.0012         0
   -0.8072   -0.2950   -0.0722   -0.0017         0
   -0.9993   -0.3804   -0.0955   -0.0023         0
   -1.1745   -0.4682   -0.1193   -0.0029         0
   -1.3451   -0.5564   -0.1435   -0.0035         0
   -1.5182   -0.6471   -0.1682   -0.0041         0
   -1.6960   -0.7393   -0.1932   -0.0047         0
   -1.8772   -0.8326   -0.2182   -0.0053         0
   -2.0616   -0.9271   -0.2432   -0.0058         0
   -2.2535   -1.0229   -0.2678   -0.0064         0
   -2.4545   -1.1205   -0.2924   -0.0070         0
   -2.6665   -1.2198   -0.3170   -0.0076         0
   -2.8919   -1.3216   -0.3417   -0.0082         0
   -3.1292   -1.4247   -0.3663   -0.0088         0
   -3.3759   -1.5294   -0.3909   -0.0094         0
   -3.6277   -1.6353   -0.4157   -0.0100         0
   -3.8866   -1.7410   -0.4407   -0.0106         0
   -4.1464   -1.8429   -0.4657   -0.0112         0
   -4.4052   -1.9430   -0.4905   -0.0118         0

图示如下:

无水1324 发表于 2007-10-18 22:21

回复 #1 octopussheng 的帖子

这个东西很有意思

octopussheng 发表于 2007-10-19 08:17

回复 #2 无水1324 的帖子

是很有意思啊,无水也转向这边吧,呵呵!

以前看到的关联维数GP算法得到的曲线都没有这样的,我认为是一个随机运动。

octopussheng 发表于 2007-10-23 14:48

收回前面的说法,应该对曲线进行拟合的,结果如下:

D2 =
    0.2591
    0.3930
    0.5199
    0.6456
    0.7616
    0.8748
    0.9900
    1.1081
    1.2284
    1.3508
    1.4780
    1.6107
    1.7503
    1.8983
    2.0535
    2.2145
    2.3788
    2.5472
    2.7155
    2.8829

看曲线还不收敛啊!!

柏莱 发表于 2007-10-23 15:13

看这个图的趋势是无限增大的,如果计算没问题的话,就应该是个随机过程。不过也可以再往大的m试试!我以前遇到过这样的时候,当m增大到30多时(具体数目不记得了),曲线才达到饱和,但最大值只有2点多,那么这时候的关联维是不是2点多呢?

octopussheng 发表于 2007-10-23 15:23

数列长度不短了,有4000多个。

我的想法是嵌入维数最大值、最小值的选择方面可能还不够,计算还没有完全收敛!

但是计算时间太长了,所以有点不想算,哈!



另外:直接用polyfit做拟合是不是有点问题啊!!!!

[ 本帖最后由 octopussheng 于 2007-10-23 15:27 编辑 ]

柏莱 发表于 2007-10-23 23:56

用polyfit做拟合应该是没有问题的,我自己编过拟合的程序,得到的结果是基本一致的!
不过我在想,书上不是说:当曲线饱和时,m的值就是嵌入维数;但又说嵌入维数应该选择大于等于关联维的两倍加1。那当m很大时,曲线才饱和,而得出的关联维有很小,那嵌入维数还是选择大于等于关联维的两倍加1的最小值吗?

octopussheng 发表于 2007-10-24 08:16

昨晚又算了一组:=G_P(data,4097,4,8,40,4)


结果如下:
ln_r =
         0         0         0         0
         0         0         0         0
         0         0         0         0
         0         0         0         0
         0         0         0         0
         0         0         0         0
         0         0         0         0
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345
    6.5482    7.2414    7.6468    7.9345

ln_C =
         0         0         0         0
         0         0         0         0
         0         0         0         0
         0         0         0         0
         0         0         0         0
         0         0         0         0
         0         0         0         0
   -2.3285   -0.5829   -0.0167         0
   -2.6730   -0.6594   -0.0188         0
   -3.0126   -0.7359   -0.0209         0
   -3.3376   -0.8127   -0.0230         0
   -3.6312   -0.8881   -0.0252         0
   -3.9041   -0.9633   -0.0273         0
   -4.1609   -1.0388   -0.0294         0
   -4.4041   -1.1127   -0.0315         0
   -4.6360   -1.1863   -0.0337         0
   -4.8670   -1.2597   -0.0358         0
   -5.1017   -1.3333   -0.0379         0
   -5.3454   -1.4086   -0.0401         0
   -5.5882   -1.4841   -0.0422         0
   -5.8268   -1.5598   -0.0444         0
   -6.0507   -1.6329   -0.0465         0
   -6.2631   -1.7062   -0.0487         0
   -6.4531   -1.7788   -0.0508         0
   -6.6213   -1.8509   -0.0530         0
   -6.7629   -1.9194   -0.0551         0
   -6.8863   -1.9877   -0.0572         0
   -6.9929   -2.0569   -0.0593         0
   -7.0815   -2.1263   -0.0614         0
   -7.1611   -2.1962   -0.0635         0
   -7.2283   -2.2667   -0.0656         0
   -7.2889   -2.3373   -0.0677         0
   -7.3412   -2.4084   -0.0699         0
   -7.3873   -2.4794   -0.0720         0
   -7.4305   -2.5520   -0.0742         0
   -7.4675   -2.6239   -0.0763         0
   -7.4980   -2.6960   -0.0784         0
   -7.5233   -2.7661   -0.0805         0
   -7.5458   -2.8366   -0.0827         0
   -7.5647   -2.9075   -0.0848         0

从曲线图中看,结果已经比较好了!
进行最小二乘拟合得到:
    1.7562
    2.0152
    2.2706
    2.5154
    2.7370
    2.9434
    3.1380
    3.3226
    3.4988
    3.6743
    3.8526
    4.0376
    4.2220
    4.4033
    4.5737
    4.7355
    4.8810
    5.0104
    5.1199
    5.2162
    5.3002
    5.3710
    5.4353
    5.4905
    5.5409
    5.5853
    5.6251
    5.6629
    5.6962
    5.7247
    5.7492
    5.7716
    5.7915


产生的疑问:拟合是不是一定都需要所有的点? 能不能仅选择近线性区域的点呢?
譬如本例中,LnC(r)的最后一点“0”是不是可以忽略掉?

柏莱 发表于 2007-10-24 08:35

从你的图看,你的r只取了四个值(应该是从时间序列的标准差的二分之一到其标准差的两倍吧),C—-C方法中的r是这样取值的,那在求关联维时r的取值原则是不是一样的呢?这是我不太清楚的问题!其次,做曲线拟合的时候应该是可以选取一个线性区域的,但是具体的选择原则是怎样的,我也不清楚,我也正在试图搞清楚这个问题。
我刚刚学习混沌理论不太久,在论坛上学到不少东西,真是谢谢大家!

octopussheng 发表于 2007-10-24 08:57

r的取值对结果影响很大啊,我也是最近才看的。

和cc方法一样,r都是关联积分里面的项啊,所以选取原则肯定是一样的!

做拟合和小数据量法算出的曲线不太一样,比较简单,所以我想这个例子里面应该可以把最后一个点,即0点,完全可以忽略,呵呵!看来应该就可以这样做了!

柏莱 发表于 2007-10-24 09:18

那你做出结果来了吗?是否有最大值?

octopussheng 发表于 2007-10-24 10:43

忽略最后一个点后,拟合结果如下


D2=
    5.1422
    5.3595
    5.5631
    5.7555
    5.9263
    6.0761
    6.2007
    6.3078
    6.3985
    6.4717
    6.5362
    6.5885
    6.6345
    6.6723
    6.7041
    6.7329
    6.7558
    6.7724
    6.7843
    6.7933
    6.7989

从图形中可以看出已经收敛了

柏莱 发表于 2007-10-24 11:10

看样子还是有些效果!那比如说,你这个时间序列当m等于20时,关联维最大:6.7989,那么嵌入维数是取20呢?还是取15(>6.7989*2+1)呢?还有,不论是15还是20,你觉不觉得嵌入维数都有点大?

octopussheng 发表于 2007-10-24 13:45

回复 #13 柏莱 的帖子

数据大吗?我看有些文献里面算出来的都有超过25的了,我看应该算是正常的!

柏莱 发表于 2007-10-24 22:50

我今天用Logistic数据实验了一下关于r的取值,取sigma/2-2*sigma算出的结果也是随着m的增大,慢慢增长的、找不到饱和。但我把r的取值范围设定在相空间点的最小距离到最大距离之间,然后步长定在最大距离减去最小距离再除以数据长度的一半(或者就除以一百),得到的结果完全不同,当m=2时,曲线拟合就是最大值(好像是0.864),后面随着m的增加,这个值就开始递减了!不知是我的程序有问题,还是r的取值的确不能取sigma/2-2*sigma。
要不你也实验一下?看看结果如何?
页: [1] 2 3 4
查看完整版本: 关联维数的问题