How to solve this non-linear equation?

Can you please provide a code for this equation? k is in the range of 3<=k<=16, and yj[k] is a known value at given time,k. S[k] is a sequence of binary matrix that have different matrix when k is changing, I am not sure how to code this please help me!

Réponses (1)

Walter Roberson
Walter Roberson le 15 Mai 2020

0 votes

Which of those variables are vectors or matrices? would normally indicate a transpose but if is a scalar then it does not make any sense to transpose it. I can only make sense out of it if is a vector being transposed.
Which is the variable being solved for?

13 commentaires

Eric Chua
Eric Chua le 15 Mai 2020
Hi, thanks for replying my question. From the equation, S[k] is a vector , or I should say it is a 7x1 row matrix of binary sequence where each of the elements in the vector contain only 1 or 0.
yj[k] is a value that i have calculated out. For example, yj[3]= 141 (number of molecules observed at time k=3. So my question here is to estimate a set of C values, so there will be fourteen values of C at each time interval. (k=3 until k=16). I hope my explanation is clear, I am not sure how to write the code because it involve a lot of matrix and i need your help please.
Walter Roberson
Walter Roberson le 15 Mai 2020
What you describe sounds like S[k] would be a scalar, with S being a vector? Or is S a 2D array and S[k] would be a row of it?
If there is one equation and 14 variables, it is greatly under-specified unless there are constraints on the C values.
I notice you have -- does that indicate complex conjugate? Are the C expected to be complex valued?
Eric Chua
Eric Chua le 16 Mai 2020
Hi, thanks for the follow up. S[k] is a vector. For example at time k=3, S[3] = [1 1 1 1 1 1 1]^T , at time =4, S[k] = [0 0 1 1 1 1 1]^T. The transpose here just for writing paper purpose, so S[k] is a 7x1 vector. yj[k] is a known value at specific time. For example at time =3, yj[3] = 141, at time k=4, yj[4] = 41. Cj is the 7x1 vector that I need to estimate.
In here, j means the receiver number. For example, y1[3]=141 would be the number of molecules observed at receiver 1 at time k=3. So given the value of S[k] and yj[3], I would like to estimate my Cj.
Walter Roberson
Walter Roberson le 16 Mai 2020
Are there constraints such as C needing to be positive or integer valued? Without constraints you can solve exactly for one of the C values in terms of arbitrary choices for the other C values.
Eric Chua
Eric Chua le 16 Mai 2020
Thanks for follow up.
Cj are positive semidefinite. However maximum likelihood estimator could estimate negative value for some elements of Cj. Sub optimal solution is to set to zero all the negative entries of the estimated C. (This sentence is the explanation from the paper).
I think Cj will come out as a 7x1 vector.
Eric Chua
Eric Chua le 16 Mai 2020
The attached document is the paper i refer to for study purpose. And the equation i post here is from equation (13) in this paper.
Eric Chua
Eric Chua le 21 Mai 2020
Hi, should i use symsum function for this equation?
Eric Chua
Eric Chua le 21 Mai 2020
How do i use loop to solve the unknown Cj?
Walter Roberson
Walter Roberson le 21 Mai 2020
"The ML estimate of the CIR for the D-MIMO channel at receiver j is obtained by solving a system of non-linear equations given below [14]:"
Notice that they are solving systems of such equations, which means more than one such equation, each of which has that form. You cannot solve just one at a time.
Eric Chua
Eric Chua le 21 Mai 2020
Thanks for the follow up. Any idea of solving this equation using Matlab? I really hope i can solve this equation but im too new for using Matlab.
Walter Roberson
Walter Roberson le 21 Mai 2020
Modifié(e) : Walter Roberson le 21 Mai 2020
I am having difficulty figuring out what the proper sizes are for the variables. I see that the paper discusses the notation in more detail; I will try again later to understand it when my head is a bit clearer.
But the subtraction of implies that the thing being subtracted from is also a vector, and that you would get a vector of results, and you would add a number of those together, getting a vector of results. But you want that summation, which would be a vector, to equal 0, which is a mismatch in sizes (vector compared to scalar.)
Eric Chua
Eric Chua le 22 Mai 2020
Thank you for the follow up again. Here is another paper discussing the same equation, the matrices were shown at page 29 to 31.
Eric Chua
Eric Chua le 24 Mai 2020
How do I write the code to find the unknown value of C (a vector) in case there is no summation in front of the equation? Please help me.

Connectez-vous pour commenter.

Tags

Question posée :

le 15 Mai 2020

Commenté :

le 24 Mai 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by