| Author |
Message |
liuyong19820
Joined: 30 Jul 2009 Posts: 1
|
30 Jul 2009 12:51 cooperative communication |
|
|
|
|
dears, now I am learning network coding in MARC(multiple access relay channel), do you familiar with this field? could you give me some matlab code to study, some codes about AF, DF, and network coding . thank you
--- bless you all
my email is sunonface(at)hotmail.com
|
|
| Back to top |
|
 |
Blue_Angel
Joined: 08 Mar 2007 Posts: 19
|
31 Jul 2009 18:15 cooperative learn |
|
|
|
|
Hi,
I am working on comparison of cooperative strategies. currently considering AF, DF mainly and will extend my study to others if possible. i have done some coding bt dont know if i m doing right so far. hope to hear from u soon.
|
|
| Back to top |
|
 |
liuyong19820
Joined: 30 Jul 2009 Posts: 1
|
03 Aug 2009 6:45 comparison of decode forward |
|
|
|
|
| Blue_Angel wrote: |
Hi,
I am working on comparison of cooperative strategies. currently considering AF, DF mainly and will extend my study to others if possible. i have done some coding bt dont know if i m doing right so far. hope to hear from u soon. |
Hi, dear, maybe we can exchange our ideas and deal with our problems together, Now I havnt seen any codes about MARC, can you give me your codes to have a look, my email is liuyong19820(at)hotmail.com , hope to hear from u soon
|
|
| Back to top |
|
 |
Blue_Angel
Joined: 08 Mar 2007 Posts: 19
|
06 Aug 2009 19:55 snr ber viterbi erfc |
|
|
|
|
Hello,
im also working on comparison of cooperative strategies...currently, i m considering AF and DF and will extend to others later..
aizaz(DOT)shah(AT)gmail(DOT)com
hope to listen from you guys soon...
|
|
| Back to top |
|
 |
aliazmat
Joined: 14 Mar 2008 Posts: 77 Helped: 3
|
06 Aug 2009 20:45 cooperative relay network coding +2009 |
|
|
|
|
| what parameters have you taken for comparison purpose ?
|
|
| Back to top |
|
 |
aliazmat
Joined: 14 Mar 2008 Posts: 77 Helped: 3
|
08 Aug 2009 10:07 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
| does anybody know what is the difference between partial decode-and-forward and compress-and-forward
|
|
| Back to top |
|
 |
Blue_Angel
Joined: 08 Mar 2007 Posts: 19
|
10 Aug 2009 0:16 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
| currently, i m considering BER, but i intend to expand the comparison to outage probability. as for now i have developed a basic frame work and just want to know if it is correct.
|
|
| Back to top |
|
 |
asha19800
Joined: 22 Dec 2007 Posts: 24 Helped: 2
|
10 Aug 2009 14:26 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
As for as I know outage probability is the lower bound on error probability, hence these are proportional to each other.
why don't you take some other parameter for your comparison purpose, like energy, achievable rates, delay etc
|
|
| Back to top |
|
 |
Blue_Angel
Joined: 08 Mar 2007 Posts: 19
|
11 Aug 2009 18:16 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
hmm... i have achievable rates in my mind. im not sure abt energy and delay. i wud like to consider them. bt i dont have enough insight into energy and delay esp with the kind of framework i m using(matlab).
here is my code. plz feel free to comment/correct.
%Comparison of Decode and F,Detect and F and Amplify and Forward
%BPSK in flat fading with WGN:
%plot simulation results of BER and theoratical results for it.
%combining the two signals using MRC
%using averaged BER
%%%%%%%%%house hold instuctions%%%%%%%%%%%%%%%%%%
clc
clear all
close all
sum_dcf = 0;
sum_dtf = 0;
sum_af = 0;
%%%%%%%%%%%%%%%%%%%User1:Source%%%%%%%%%%%%%%
N_bits = 15000; %Number of data bits
%number of iterations over which the results are going to be averaged
N_iter = 15;
for iter = 1:N_iter
data = round(rand(N_bits,1));%random data bits
%channel coding using rate 1/2 convolutional code:
trellis = poly2trellis(3,[5 7]); %trellis structure
c_data = convenc(data,trellis);
%BPSK modulation
tx = 2*c_data - 1;
%%%%%%%%%Channel characteristics%%%%%%%%%%%%%%%%
SNRdB = -3:20; %Range of SNR for which BER is investigated.
%additive noise and channel response for the relay channel:
%Source uplink channel:
noise_d = 1/sqrt(2) * (randn(2 * N_bits,1) + j * randn(2 * N_bits,1));
h_d = 1/sqrt(2) * (randn(2 * N_bits,1) + j * randn(2 * N_bits,1));
%interuser channel:
noise_r1 = 1/sqrt(2) * (randn(2 * N_bits,1) + j * randn(2 * N_bits,1));
h_r1 = 1/sqrt(2) * (randn(2 * N_bits,1) + j * randn(2 * N_bits,1));
%for Relay uplink:
noise_r2 = 1/sqrt(2) * (randn(2 * N_bits,1) + j * randn(2 * N_bits,1));
h_r2 = 1/sqrt(2) * (randn(2 * N_bits,1) + j * randn(2 * N_bits,1));
for k = 1:length(SNRdB)
SNR = 10^(SNRdB(k)/10); %convert SNRdB to linear value SNR
ftx_r1 = sqrt(SNR) * h_r1 .* tx + noise_r1;
%%%%%%%%%%%%%%%%% At the Relay %%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%Decode n F%%%%%%
%equalizing at relay
eq_rx1 = ftx_r1 .* conj(h_r1);
%hard decision and converting from bipolar to bits
r_bits = (sign(real(eq_rx1)) + 1)/2;
%channel decoding:
dec_dcf_r1 = vitdec(r_bits,trellis,3,'term','hard');
%re-encoding using the same procedure as Source:
c_data2 = convenc(dec_dcf_r1,trellis);
%BPSK signal for the relay coded data:
tx2_dcf = 2 * c_data2 - 1;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%Detect n F%%%
dec_dtf_r1 = sign(real(eq_rx1));
tx2_dtf = dec_dtf_r1;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%Apmlify n F%%
beta = sqrt(1./((SNR * abs(h_r1).^2) + 1));
%amplification:
ftx_amp = ftx_r1 .* beta;
%%%%%%%%%%%%%%%%%%%%%%%%%%Relay to Destination%
%DCF
ftx_dcf_r2 = sqrt(SNR) * tx2_dcf .* h_r2 + noise_r2 ;
%DTF
ftx_dtf_r2 = sqrt(SNR) * tx2_dtf .* h_r2 + noise_r2 ;
%AF
ftx_af_r2 = sqrt(SNR) * ftx_amp .* h_r2 + noise_r2 ;
%%%%%%%%%%%%%%%%% At the Destination%%%%%%%%%%%
ftx_d = sqrt(SNR)* tx .* h_d + noise_d;
%%%%%%%%%%%%%%%%%%%%%%%%DCF%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%MRC%%%%%%%%%%%%%%%
R_dcf = ftx_dcf_r2 .* conj(h_r2) + ftx_d .* conj(h_d);
%hard decisioning
dec_com_dcf = sign(real(R_dcf));
%%%%%%%%%%%BER calculations%%%%%%%%%%%%%%%%%%
%at destination:
err_com1(k) = sum(abs(dec_com_dcf - tx)/2);
simber_com1(k) = err_com1(k) / (2 * N_bits);
%%%%%%%%%%%%%%%%%%%%%%%%DTF%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%MRC%%%%%%%%%%%%%%%
R_dtf = ftx_dtf_r2 .* conj(h_r2) + ftx_d .* conj(h_d);
%hard decision
dec_com_dtf = sign(real(R_dtf));
%%%%%%%%%%%BER calculations%%%%%%%%%%%%%%%%%%
%at destination:
err_com2(k) = sum(abs(dec_com_dtf - tx)/2);
simber_com2(k) = err_com2(k) / (2 * N_bits);
%%%%%%%%%%%%%%%%%%%%%%%%AF%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%MRC%%%%%%%%%%%%%%%
R_af = ftx_af_r2 .* conj(h_r2) .* conj(h_r1) + ftx_d .* conj(h_d);
dec_com_af = sign(real(R_af));
%%%%%%%%%%%BER calculations%%%%%%%%%%%%%%%%%%
%at destination:
err_com3(k) = sum(abs(dec_com_af - tx)/2);
simber_com3(k) = err_com3(k) / (2 * N_bits);
theberawgn(k) = 0.5 * erfc (sqrt(SNR));%theoratical BER for AWGN
theberrayleigh(k) = 0.5 * (1 - sqrt(SNR./(1 + SNR))); %theoratical rayleigh
mue = sqrt(SNR/(1+SNR));
mrcth(k) = 0.25 * (2 + mue) * (1-mue)^2;%theoratical 2Rx MRC
end
sum_dcf = sum_dcf + simber_com1;
sum_dtf = sum_dtf + simber_com2;
sum_af = sum_af + simber_com3;
end
%average BER:
avgber_dcf = sum_dcf/N_iter;
avgber_dtf = sum_dtf/N_iter;
avgber_af = sum_af/N_iter;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%BER plots%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
figure
semilogy(SNRdB,avgber_dcf,SNRdB,avgber_dtf,SNRdB,avgber_af,SNRdB,theberawgn,SNRdB,theberrayleigh,SNRdB,mrcth);
axis([SNRdB(1) max(SNRdB) 10^-5 0.5]);
grid on
legend('DCF','DTF','AF','AWGN','Rayleigh','MRC 2 senders');
xlabel('SNR dB');
ylabel('BER');
title(['BER curves for comparison,(averaged for ',num2str(N_iter),' iterations)']);
|
|
| Back to top |
|
 |
bee
Joined: 29 Nov 2003 Posts: 135 Helped: 2
|
15 Aug 2009 16:24 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
Just a lilttle help, as asha19800 has given differnt parameter to compare, they are discussed by Goldsmith in her paper on Energy-efficiency of MIMO and cooperative MIMO techniques in sensor networks. A very good paper to read.
Added after 3 minutes:
I m not very clear about Decode and Forward and Detect and forward schemes. can any one plz give some thoughts on it. Also it would be great to see the algo rather then the whole code to explain the difference.
|
|
| Back to top |
|
 |
aliazmat
Joined: 14 Mar 2008 Posts: 77 Helped: 3
|
15 Aug 2009 23:29 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
Detect-and-Forward and Decode-and-Forward terms come from channel coding.
In the first, relay only detects symbol-by-symbol and re-sends the same to destination. In the second, relay decodes the complete message, re-encodes it and then sends it to destination i,e they relay uses channel codes.
Added after 1 minutes:
attached file may be of some help
|
|
| Back to top |
|
 |
aliazmat
Joined: 14 Mar 2008 Posts: 77 Helped: 3
|
16 Aug 2009 16:49 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
Dear liuyong19820
what is your system model and how does your decoder work ?
|
|
| Back to top |
|
 |
Blue_Angel
Joined: 08 Mar 2007 Posts: 19
|
17 Aug 2009 18:32 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
Normally the protocols are classified as Amplify and Forward and Detect/Decode and Forward.
in my code, i have used the logic of Detect and Forward as explained by aliazmat.
I m pretty confused about the Decode and Forward. in the code i have used channel coding. but i have discussed with somebody and was told that decode n forward means using soft decisioning.
|
|
| Back to top |
|
 |
aliazmat
Joined: 14 Mar 2008 Posts: 77 Helped: 3
|
18 Aug 2009 6:34 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
I think, some channel codes require soft decision like LDPC and some not like Single Parity check codes.
In any case, the message needs to be decoded at the relay.
|
|
| Back to top |
|
 |
lapolm
Joined: 18 Aug 2009 Posts: 5
|
19 Aug 2009 8:54 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
Blue-Angel
I wonder what is the channel model you used ?
Is it a no fading model or Rayleigh fading .
|
|
| Back to top |
|
 |
Blue_Angel
Joined: 08 Mar 2007 Posts: 19
|
20 Aug 2009 21:28 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
Hi,
the model i have used for channel is flat-fading Rayleigh.
the under lying assumption is of narrowband communication where many unresolvable multipath signals are received. when all the multipath signals are unresolvable then the channel reduces to a single multiplicative component. and if the number of multipaths is too large, the its is modeled using gaussian distribution.
[this is to the best of my understanding. any correction is more than welcome]
|
|
| Back to top |
|
 |
insatiable
Joined: 16 Mar 2009 Posts: 19
|
21 Aug 2009 1:29 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
hi,all. i am focusing on the mimo relaying recently. about the decode-and-forward scheme, it usually add CRC to the transmit signal. can anyone talk about that, and give me some matlab codes which use the CRC.
thanks.
|
|
| Back to top |
|
 |
armie
Joined: 10 Oct 2008 Posts: 2
|
22 Aug 2009 10:53 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
Hi blue angle,
cooperative sensing also can be assumed as cooperative communication which using such protocol, but detection probability (Pd) and false alarm rate (Pfa) are used as performance evaluation in destination while cooperative communication is BER.
Can u explain us the differences among them? and how could we modify your code in order that we get Pd and Pfa? or anyone of you can explain them, it will be great help of us
Thank you in advace
|
|
| Back to top |
|
 |
Google AdSense

|
22 Aug 2009 10:53 Ads |
|
|
|
|
|
|
| Back to top |
|
 |
lapolm
Joined: 18 Aug 2009 Posts: 5
|
27 Aug 2009 17:23 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
Blue Angel, I have checked your code, it looks like good ! and simple.
Decode and Forward decodes the BPSK signal with viterbi decoding and re-encode with conv. encoding. Rigth, also AAF is true, but I am not sure about Detect and Forward.
In my opinin Detect and Forward gives lower BER then AAF .
farewell.
|
|
| Back to top |
|
 |
Blue_Angel
Joined: 08 Mar 2007 Posts: 19
|
29 Aug 2009 0:49 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
Hi,
Armie: sorry i m not familier with the sensing stuff..cant help in that regard.
lapolm:
thanks for review. actually detect and forward n decode and forward are same class,broadly speaking. in literature detect and forward is often referred to as fixed decode and forward and it is shown to achieve diversity order of 1. unless u use selective DF which forwards only if decoding is successful.it implies u use some error detection code like CRC. DF can also b improved if u use adaptive DF, which means u use some feedback in the form of Acknowledgement. again it will also need some means of error detection like CRC. it also improves and attain diversity order of 2 at high SNRs if u use error forward correction correction code like i have used.
detect n forward is just a terminology tht i have used to differtiate.
in my opinion,DF improves with the degree of authority u invest in the relay node. e.g if u allow it only to demodulate(detect) and then modulate, it wont b able to help much. but if u allow it to actually decode,extract the info bits, then re-encode n modulate it will b more beneficial. actually the term DF is not very clearly defined in literature. so it depends how u define it.
moreover, i have used MRC for combining. MRC is optimal for AF bt not for DF. that's y in the code i have provided, DF doesnt outperform AF.
well, guys this the summary of my knowledge i have gained so far.
any comments/corrections are more than welcome. i m writing my thesis n have to complete it in a couple of days.ur views can b very helpful.
cheers
|
|
| Back to top |
|
 |
lapolm
Joined: 18 Aug 2009 Posts: 5
|
29 Aug 2009 20:15 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
| Quote: |
unless u use selective DF which forwards only if decoding is successful.it implies u use some error detection code like CRC. DF can also b improved if u use adaptive DF, which means u use some feedback in the form of Acknowledgement. again it will also need some means of error detection like CRC
|
Yeah you must use a CRC code in Detect and Forward but I dont have much info about DF, I use DAF and AAF in my project (that I am preparing).
| Quote: |
i have used MRC for combining. MRC is optimal for AF bt not for DF. that's y in the code i have provided, DF doesnt outperform AF.
|
I have noticed that.
Dou you know a combining technique, that is both good at DAF and AAF.
or Do you know any combining technique that is simple as MRC and works for DAF as well.
Also Can I learn the subject of your thesis ?
|
|
| Back to top |
|
 |
Blue_Angel
Joined: 08 Mar 2007 Posts: 19
|
29 Aug 2009 23:11 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
the title of my thesis is "comparative study of cooperative MIMO strategies"
im not sure bt i think i read it somewhere tht ML is optimal for DF. there are other sub-optimal techniques proposed for DF which are claimed to giving performance close to optimal. one is cooperative MRC (C-MRC) and other is lambda-MRC (sorry dont know how to use the lambda symbol,lolzz)... and there is another MRC called improved MRC.. u can find it in file Matlab_prototype uploaded by another user in this thread.
i havent implemented them.[/tex]
|
|
| Back to top |
|
 |
armie
Joined: 10 Oct 2008 Posts: 2
|
31 Aug 2009 6:03 who can help me? how can I learn cooperative communication |
|
|
|
|
hi blue angel,
quote..
"moreover, i have used MRC for combining. MRC is optimal for AF bt not for DF. that's y in the code i have provided, DF doesnt outperform AF"
question: could you show me the link or any references that state MRC technique is optimal for AF protocol.
thank you in advance
kindly regards
|
|
| Back to top |
|
 |
Blue_Angel
Joined: 08 Mar 2007 Posts: 19
|
31 Aug 2009 17:17 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
here is the paper, "diversity order analysis of decode and forward cooperative networks with relay selection" by Z Yi and I Kim.
they have discussed optimal detectors for both AF and DF. follow the references from there.
MRC's optimality is referenced from this paper:
"exact symbol error probability of cooperative network in rayleigh fading environment" P A Anghel n M Kaveh, IEEE trans. wireless comm. vol 3,sept 2004.
|
|
| Back to top |
|
 |
preetica
Joined: 03 Nov 2009 Posts: 3 Location: riverview
|
03 Nov 2009 16:35 Re: who can help me? how can I learn cooperative communicati |
|
|
|
|
| I am working on relay selection. I want to compare the outage probability with bit error rate. Could anyone pls help me on this.
|
|
| Back to top |
|
 |