Game of Life - Not able to collect data for each simulation

Hello there,
I am creating a Game of Life through Matlab (something that I am not familiar with). I have made several simulations of game of life and I need to collect data from each simulation through function of time and then plot it. This is a sample of what I did:
A = sparse(round(rand(n,m)));
B = sparse(size(A));
A = B;
subplot(2,4,1);
imagesc(A); pause(0.01);
yA = nnz(A);
subplot(2,4,5);
hold on
plot(t,yA,'r.-');
hold off
xlim([0 tmax]);
ylim auto;
pause(0.01);
But I am not able to collect any values and with this code I can plot but the points wont connect since I am planting single numbers onto the plot.
Help please and thank you.

 Accepted Answer

Image Analyst
Image Analyst on 28 Feb 2016
Edited: Image Analyst on 28 Feb 2016
Like I said in your original question before you deleted it (thank goodness for Lazarus):
"You know that yA is just a single number, right? It's the count of the number of non-zeros in A but not the actual non-zero numbers themselves."
Now, what does "collect" mean to you? A game of life will have iterations (generations or days or time periods or whatever) where you change the population. I don't see any loops where you're changing the population in any way. If you did, then you could "collect" or store each population in a 3D array. But first you need some algorithm for how you want to change the population at each iteration. Can you tell us how you plan to do that?

4 Comments

What are you passing in for n,m,tmax? Can you post a screenshot? What are the "points" that you want to connect?
But I am getting an error for the plots not having the vectors being the same length
Nevermind, fixed that as well but doing some thing
plot(G(1:t),'c-');
your presence is helping me a lot ... thank you

Sign in to comment.

More Answers (0)

Categories

Find more on Conway's Game of Life in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!