作者ckey (搖搖尾巴嘆口氣)
看板comm_and_RF
標題Re: [問題] LDPC code的global opt.
時間Fri Jul 22 18:19:14 2011
感激您的回覆.
※ 引述《lovewa (On my way)》之銘言:
: : 1.他提到他把degree擴展成可以不是整數.
: : 那在用Denisty Evolution算cost時, 還是用他提出等效的整數degree去算嗎?
: : 還是Denisty Evolution可以算非整數degree?
: 不清楚可以拓展成非整數的degree這件事情。
: 但DE可以硬算...假如真的要的話...
我還沒看到非整數的degree這件事情前的想像是:
假設: 我max_degree是5:
那我就去找 a1 + a2*x + a3*x^2 + a4*x^3 + a5*x^4
包括變數節點和查核節點分布, 所以共10個變數(然後再扣掉2個條件)
但是我看到Richardson在2001年的paper(p.p.636),理解是:
因為最佳解的degree會集中在少數幾個, 所以可以把search space縮小,
如果縮到只剩一個degree, 可能只剩最佳化 b1*x^c1 兩個變數,
假設找出來的解c1=1.3 b1=1,接下來把b1*x^1.3轉成等效的b1'*x^1+b1''*x^2
所以問題就變成我覺得解的degree會分佈成幾群, 我一開始就設幾個變數.
而我的問題變成要用DE硬算x^1.3 還是算等效的x^1和x^2 .
: : 2.用differential evolution找解是不是:
: : 一開始假設只有n個degree, 所以會在2n-1個dimension下去找解
: : (n個degree, n個factor, 有一個factor相加等於1的constraint)?
: 變數不應該只有這些吧...要考慮的包括變數節點和查核節點分布
: 限制的話有Code Rate、和變數節點以及查核節點的係數和為1....
我忘記算查核節點分布.
不過補充如前述.
: : 3.一般來說n會取多大?
: 因為你2的部份似乎沒有弄清楚,這部份沒辦法回答你...
: 而且這和你想要的最大變數節點Degree和查核節點Degree有關
如果用我的理解, 問題就變成initial時, 應該預期解會分成幾"群"?
: : 4.我看differential evolution的source code,
: : 在演化的過程中, 有一步是把解作隨機的交換,
: : 這樣n個degree和n個factor需要分開交換嗎?
: 這問題也問的很奇怪
: 隨機的交換應該是對不同分布但相同Degree的係數做交換
謝謝你的講解, 我也覺得你講的這個作法比較合理.
是不是我對 "最佳化 b1*x^c1 兩個變數" 的理解是錯誤的?
不過如果採用您說的方法:每個degree對應一個變數:
我看differential evolution的source code有一個動作是:
將舊的解自己交換位址. 就是把不同degree的分佈作交換,
而不是限制在相同Degree的係數做交換.
謝謝您的回答~ :)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.208.179
※ 編輯: ckey 來自: 140.113.208.179 (07/22 18:20)
※ 編輯: ckey 來自: 140.113.208.179 (07/22 18:21)