RMSE plot of Monte Carlo simulation
18 次查看(过去 30 天)
显示 更早的评论
Hello
I would like your help for this problem that has been bothering me for quite some time.
So, I want to plot the Monte Carlo Simulation of the Root Mean Square Error (RMSE) between a parameter and an estimated parameter
I've written the attached code which was easy enough but the problem is that the plot seems off. From what I know RMSE is supposed to decrease with the number of simulations not oscillate like this.
What I am doing wrong ? And what to do to have a correct plot ?
Thanks in advance
Here's the code :
param = 1 ;
paramest = 1.2 ;
N = 1000;
for n = 1:N
y = param*rand(1,N);
yest = paramest*rand(1,N);
RMSE(n) = sqrt(mean((y - yest).^2));
end
plot(RMSE)
3 个评论
采纳的回答
Jeff Miller
2020-12-2
RMSE is not supposed to decrease with the number of iterations, but it should stabilize.
Your plot oscillates because each point is based on a single estimate--the one generated at each value of n--nothing is being computed cumulatively across iterations. Try changing the end of your script to this:
cumRMSE = cumsum(RMSE) ./ [1:N];
plot(cumRMSE)
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!