Need advice on my code for probability simulation

3 次查看(过去 30 天)
I am attempting to simulate this model below and output a transition matrix at the end.
I am having trouble with the last part of the code (see comment % help and % end help) where I am trying to list all possible outcomes and their probabilites (BB is the probability of buy buy, etc.) and output a transition matrix.
I have attempted this manually which is ok for a simulation of this size but if I wanted a larger simulation is there any way I can code this section instead of typing it all out manually?
A = [0 1
0 0]; % sets A equal to adjacency matrix of network of agents
j = [1
1] % sets j equal to pre-set states of agents in network
AgentStates = repmat( { 'Buy' }, numel( j ), 1 );
AgentStates( j == -1 ) = { 'Sell' } % lists agent states
A1 = j(1,1);
A2 = j(2,1);
K = 0.85; % sets value of constant 'k'
J = 0.8; % sets value of constant 'j'
S = sum(j) % sets the sum of states in network
p = (-K*S)/J % sets p equal to the value E must be greater than or less than in probablity distribution
PD = makedist('Normal','mu',0,'sigma',1); % normal distribution with mean '0' and variance '1'
PB = 1-cdf(PD,p) % finds the probability of a buy state using normal distribution
PS = cdf(PD,p) % finds probability of sell state using normal distribution
BB = PB*PB; % NEED HELP
BS = PB*PS;
SB = PS*PB;
SS = PS*PS;
T = [BB*BB BB*BS BB*SB BB*SS
BS*BB BS*BS BS*SB BS*SS
SB*BB SB*BS SB*SB SB*SS
SS*BB SS*BS SS*SB SS*SS] % END HELP
G = digraph(A);
P = plot(G); % plots graph 'G'
title('Network of Agents'); % sets title of graph
  1 个评论
James Tursa
James Tursa 2016-11-9
"... if I wanted a larger simulation ..."
In what way would it be larger? I.e., which additional variables would you have and how would T be built differently?

请先登录,再进行评论。

回答(1 个)

Devraj Dutt
Devraj Dutt 2016-11-9
Have you tried transprob (https://www.mathworks.com/help/finance/estimation-of-transition-probabilities.html).

类别

Help CenterFile Exchange 中查找有关 Graph and Network Algorithms 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by