第三次作业

参考书《数据压缩导论(第4版)》P100

5、给定如表4-9所示的概率模型,求出序列a1a1a3a2a3a1 的实值标签。

解:求序列a1a1a3a2a3a1 的实值标签就是求序列113231的实值标签。

     由题意可得:Fx(k)=0,k≤0,Fx(1)=0.2,Fx(2)=0.5,Fx(3)=1,Fx(k)=1,k>3

  由下列公式可得:u(k)=l(k-1)+(u(k-1)-l(k-1))FX(xk)

           l(k)=l(k-1)+(u(k-1)-l(k-1))FX(xk-1)

  ①该序列的第一个元素为1,得到以下更新:

       u(1)=l(0)+(u(0)-l(0))*Fx(1)=0+(1-0)*0.2=0.2

       l(1)=l(0)+(u(0)-l(0))*Fx(0)=0+(1-0)*0=0

  所以该序列标签的区间为[0,0.2)。

  ②该序列的第二个元素为1,得到以下更新:

      u(2)=l(1)+(u(1)-l(1))*Fx(1)=0+(0.2-0)*0.2=0.04

       l(2)=l(1)+(u(1)-l(1))*Fx(0)=0+(0.2-0)*0=0

  所以序列标签的区间为[0,0.04)。

  ③该序列的第三个元素为3,得到以下更新:

      u(3)=l(2)+(u(2)-l(2))*Fx(3)=0+(0.04-0)*1 =0.04

       l(3)=l(2)+(u(2)-l(2))*Fx(2)=0+(0.04-0)*0.5=0.02

  所以该序列标签的区间为[0.02,0.04)。

  ④该序列的第四个元素为2,得到以下更新:

      u(4)=l(3)+(u(3)-l(3))*Fx(2)=0.02+(0.04-0.02)*0.5 =0.03

       l(4)=l(3)+(u(3)-l(3))*Fx(1)=0.02+(0.04-0.02)*0.2=0.024

  所以序列标签的区间为[0.024,0.03)。

  ⑤该序列的第五个元素为3,得到以下更新:

      u(5)=l(4)+(u(4)-l(4))*Fx(3)=0.024+(0.03-0.024)*1=0.03

       l(5)=l(4)+(u(4)-l(4))*Fx(2)=0.024+(0.03-0.024)*0.5=0.027

  所以该序列标签的区间为[0.027,0.03)。

  ⑥该序列的第六个元素为1,得到以下更新:

      u(6)=l(5)+(u(5)-l(5))*Fx(1)=0.027+(0.03-0.027)*0.2=0.0276

       l(6)=l(5)+(u(5)-l(5))*Fx(0)=0.027+(0.03-0.027)*0=0.027

  所以该序列标签的区间为[0.027,0.0276)。

  综上可得生成序列113231的标签如下:

     即Tx(a1a1a3a2a3a1)=(0.027+0.0276)/2=0.0273

 

6、对于表4-9所示的概率模型,对于一个标签为0.63215699的长度为10的序列进行解码。

解:

解:求序列a1a1a3a2a3a1 的实值标签就是求序列113231的实值标签。

     由题意可得:Fx(k)=0,k≤0,Fx(1)=0.2,Fx(2)=0.5,Fx(3)=1,Fx(k)=1,k>3

  由下列公式可得:u(k)=l(k-1)+(u(k-1)-l(k-1))FX(xk)

           l(k)=l(k-1)+(u(k-1)-l(k-1))FX(xk-1)

  ①该序列的第一个元素为1,得到以下更新:

       u(1)=l(0)+(u(0)-l(0))*Fx(1)=0+(1-0)*0.2=0.2

       l(1)=l(0)+(u(0)-l(0))*Fx(0)=0+(1-0)*0=0

  所以该序列标签的区间为[0,0.2)。

  ②该序列的第二个元素为1,得到以下更新:

      u(2)=l(1)+(u(1)-l(1))*Fx(1)=0+(0.2-0)*0.2=0.04

       l(2)=l(1)+(u(1)-l(1))*Fx(0)=0+(0.2-0)*0=0

  所以序列标签的区间为[0,0.04)。

  ③该序列的第三个元素为3,得到以下更新:

      u(3)=l(2)+(u(2)-l(2))*Fx(3)=0+(0.04-0)*1 =0.04

       l(3)=l(2)+(u(2)-l(2))*Fx(2)=0+(0.04-0)*0.5=0.02

  所以该序列标签的区间为[0.02,0.04)。

  ④该序列的第四个元素为2,得到以下更新:

      u(4)=l(3)+(u(3)-l(3))*Fx(2)=0.02+(0.04-0.02)*0.5 =0.03

       l(4)=l(3)+(u(3)-l(3))*Fx(1)=0.02+(0.04-0.02)*0.2=0.024

  所以序列标签的区间为[0.024,0.03)。

  ⑤该序列的第五个元素为3,得到以下更新:

      u(5)=l(4)+(u(4)-l(4))*Fx(3)=0.024+(0.03-0.024)*1=0.03

       l(5)=l(4)+(u(4)-l(4))*Fx(2)=0.024+(0.03-0.024)*0.5=0.027

  所以该序列标签的区间为[0.027,0.03)。

  ⑥该序列的第六个元素为1,得到以下更新:

      u(6)=l(5)+(u(5)-l(5))*Fx(1)=0.027+(0.03-0.027)*0.2=0.0276

       l(6)=l(5)+(u(5)-l(5))*Fx(0)=0.027+(0.03-0.027)*0=0.027

  所以该序列标签的区间为[0.027,0.0276)。

  综上可得生成序列113231的标签如下:

     即Tx(a1a1a3a2a3a1)=(0.027+0.0276)/2=0.0273

 

6、对于表4-9所示的概率模型,对于一个标签为0.63215699的长度为10的序列进行解码。

解:从概率模型可知:

  Fx(k)=0, k≤0, Fx(1)=0.2, Fx(2)=0.5, Fx(3)=1, k>3.

   设u(0)=1,l(0)=0

  ①l(1)=0+(1-0)Fx(x1-1)=Fx(xk-1)

  u(1)=0+(1-0)Fx(x1)=Fx(xk

  当xk=3时,0.63215699在区间[0.5,1)中;

  ②l(2)=0.5+0.5Fx(xk-1)

  u(2)=0.5+0.5Fx(xk

  当xk=2时,0.63215699在[0.6,0.75)中;

  ③l(3)=0.6+0.15Fx(xk-1)

  u(3)=0.6+0.15Fx(xk

  当xk=2时,0.63215699在[0.63,0.675)中;

  ④l(4)=0.63+0.045Fx(xk-1)

  u(4)=0.63+0.045Fx(xk)

     当xk=1时,0.63215699在[0.63,0.639)中;

  ⑤l(5)=0.63+0.009Fx(xk-1)

  u(5)=0.63+0.009Fx(xk)

  当xk=2时,0.63215699在[0.6318,0.6345)中;

  ⑥l(6)=0.6318+0.0027Fx(xk-1)

  u(6)=0.6318+0.0027Fx(xk)

  当xk=1时,0.63215699在[0.6318,0.63234)中;

  ⑦l(7)=0.6318+0.00054Fx(xk-1)

  u(7)=0.6318+0.00054Fx(xk)

    当xk=3时,0.63215699在[0.63207,0.63234)中;

  ⑧l(8)=0.63207+0.00027Fx(xk-1)

  u(8)=0.63207+0.00027Fx(xk)

  当xk=2时,0.63215699在[0.632124,0.632205)中;

  ⑨l(9)=0.632124+0.000081Fx(xk-1)

  u(9)=0.632124+0.000081Fx(xk)

  当xk=2时,0.63215699在[0.6321402,0.6321645)中;

  ⑩l(10)=0.6321402+0.0000243Fx(xk-1)

  u(10)=0.6321402+0.0000243Fx(xk)

  当xk=3时,0.63215699在[0.63215235,0.6321645)中;

  综上可得:该序列为a3a2a2a1a2a1a3a2a2a3。

 

posted @ 2015-09-16 10:42  冯冠朝  阅读(107)  评论(0编辑  收藏  举报