How to do probalistic routing in Simulink/Simevents?
2 次查看(过去 30 天)
显示 更早的评论
I'm looking for a way to take a single input, and then based on statistics, route that signal to different blocks. For example, signal A has a 70% chance of going to Block 1, and a 30% chance of going to Block 2. So when running the model many times, sometimes the signal will take one route and sometimes another. How can I do this? Is there a way to associate probabilities with lines/branches? Thanks so much, N
0 个评论
回答(2 个)
Albert Yam
2012-7-5
Have you tried a Random Number block, with a switch.
5 个评论
Sebastian Stankiewicz
2017-8-7
Could you possibly send an example of how you did this? How could you control the probability of an event using the RN generator? Also, how did you route the entity based on the attribute?
Marco Fanti
2019-1-16
get a probability vector, like
D= [1 0.2 ; 2 0,5 ; 3 0,3];
the first column contains the port you wanna send the entity to, the second one the probability
sort it so to have the greatest probability at the bottom and call it with a different name like
Ds= [1 0.2 ; 3 0.3 ; 2 0.5];
now set the output switch as swtich from attribute
in in a block that preceeds the outputswitch type in this code as event action
rnum=rand();
for i=1:size(Ds,1)
if rnum<=sum(Ds(1:i,2))
entity.Type=Ds(i,1);
break
end
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Discrete-Event Simulation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!