10 float average(
const std::vector<float> & tab);
14 float standardDeviation(
const std::vector<float> & tab);
18 typedef unsigned int IdAgent;
24 extern std::mt19937 g_m_t_generator;
54 void init(
unsigned int nbAgents);
89 std::uniform_real_distribution<float>
g_noise;
98 Leviathan(
float delta_,
float sigma_,
unsigned int nbAgents_,
unsigned int nbGossips_);
103 float borne(
float value);
177 #endif // LEVIATHAN_H
void directInteraction(IdAgent Ai, IdAgent Aj)
Definition: Leviathan.cpp:122
Definition: Leviathan.h:74
float delta
Definition: Leviathan.h:78
float getOpinion(IdAgent other)
Definition: Leviathan.h:68
unsigned int nbStep
Definition: Leviathan.h:83
float getStdReputation()
Definition: Leviathan.cpp:195
bool oneInteractionParStep
Definition: Leviathan.h:86
Leviathan(float delta_, float sigma_, unsigned int nbAgents_, unsigned int nbGossips_)
Definition: Leviathan.cpp:85
std::vector< float > deltaOpinions
Definition: Leviathan.h:38
unsigned int gossip
Definition: Leviathan.h:79
IdAgent directInteraction
Definition: Leviathan.h:40
float sigma
Definition: Leviathan.h:80
void step()
Definition: Leviathan.cpp:94
unsigned int countGossipAbout
Definition: Leviathan.h:43
void init(unsigned int nbAgents)
Definition: Leviathan.cpp:30
float borne(float value)
Definition: Leviathan.cpp:74
std::uniform_real_distribution< float > g_noise
Definition: Leviathan.h:89
void gossipInteraction(IdAgent Ai, IdAgent Aj)
Definition: Leviathan.cpp:129
void updateOpinions()
Definition: Leviathan.cpp:59
void selectCoupleForInterraction(IdAgent &Ai, IdAgent &Aj)
Definition: Leviathan.cpp:113
bool useBorder
Definition: Leviathan.h:85
Definition: Leviathan.h:31
Leviathan * dady
Definition: Leviathan.h:35
std::vector< IdAgent > listGossip
Definition: Leviathan.h:39
std::vector< float > opinions
Definition: Leviathan.h:37
void oneGossip(IdAgent Ai, IdAgent Aj)
Definition: Leviathan.cpp:136
IdAgent gossipToWho()
Definition: Leviathan.cpp:39
float influenceOther
Definition: Leviathan.h:41
float getStdOpinionTo(IdAgent a)
Definition: Leviathan.cpp:180
Agent(Leviathan *father, IdAgent agent_)
Definition: Leviathan.h:49
float getAverageStdOpinion()
Definition: Leviathan.cpp:188
void setAgentReputation(IdAgent Ai, float newReputation)
Definition: Leviathan.cpp:146
unsigned int getNbAgents()
Definition: Leviathan.h:164
float getStdOpinion()
Definition: Leviathan.cpp:171
IdAgent id
Definition: Leviathan.h:36
float getAverageOpinionTo(IdAgent a)
Definition: Leviathan.cpp:163
std::vector< Agent > agents
Definition: Leviathan.h:84
std::vector< IdAgent > gossipAbout
Definition: Leviathan.h:42
void writeOpinions(std::string fileName)
Definition: Leviathan.cpp:203
float getAverageOpinion()
Definition: Leviathan.cpp:153
IdAgent getRandomAgent()
Definition: Leviathan.h:167
float getOpinion(IdAgent i, IdAgent j)
Definition: Leviathan.h:161