I am trying to do Noise cancellation using RLS algorithm at a software level, as part of my M.Tech Project work. Here, the error strength is continuously increasing, instead of decreasing as time grows. I need to get convergence after some time. Only thing i observed is that the correlation matrix values are increasing over time. Do I need to change parameters like forgetting factor, initialization of the correlation matrix or any other thing?


closed as unclear what you're asking by Matt L., lennon310, MBaz, A_A, Peter K. Dec 12 '18 at 16:03

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • $\begingroup$ Could you share more on the model and the problem? $\endgroup$ – Royi Dec 11 '18 at 5:23
  • $\begingroup$ What happens if you feed it noiseless data i.e. perfect data? $\endgroup$ – Ben Dec 11 '18 at 22:31
  • $\begingroup$ @Royi: I am trying to do Noise cancellation in a room. Before doing that, I wanted to try it at a software level. In simple words, what i am trying to do is generating cosine signal (adaptive filter output) to cancel out the sine signal(desired signal: consider this as a noise). So for this, i need to choose an adaptive algorithm, which updates the weights of the adaptive filter in such a manner that error between them will be decreasing continuously as time goes on. In other words, the algorithm will be adapted to the input. $\endgroup$ – Ramakrishna Dec 12 '18 at 8:33
  • $\begingroup$ @Ben: I am passing 3rd and 5th harmonics of 1kHz sine wave as input. I am not adding any other noises to it. As i want to cancel this signal, i am treating this signal as noise.So i feel, this is perfect data. Is this what you are asking? Did i answered your question correctly? $\endgroup$ – Ramakrishna Dec 12 '18 at 8:38
  • $\begingroup$ You're trying to use a cosine to cancel a sine? Do you change the phase of your cosine in order to match the phase of the sine? Otherwise : ASin(wt) - ACos(wt) != 0 $\endgroup$ – Ben Dec 12 '18 at 21:55