1
0
mirror of https://github.com/gsi-upm/soil synced 2025-08-23 11:52:19 +00:00

Settings models

This commit is contained in:
Tasio Mendez
2017-04-24 12:55:00 +02:00
parent 391ce5e9e0
commit aaf5f709f1
9 changed files with 125 additions and 118 deletions

View File

@@ -13,8 +13,8 @@ class BassModel(BaseBehaviour):
def __init__(self, environment=None, agent_id=0, state=()):
super().__init__(environment=environment, agent_id=agent_id, state=state)
self.innovation_prob = environment.innovation_prob
self.imitation_prob = environment.imitation_prob
self.innovation_prob = environment.environment_params['innovation_prob']
self.imitation_prob = environment.environment_params['imitation_prob']
sentimentCorrelationNodeArray[self.id][self.env.now] = 0
def step(self, now):

View File

@@ -21,21 +21,21 @@ class BigMarketModel(BaseBehaviour):
def __init__(self, environment=None, agent_id=0, state=()):
super().__init__(environment=environment, agent_id=agent_id, state=state)
self.enterprises = environment.enterprises
self.enterprises = environment.environment_params['enterprises']
self.type = ""
self.number_of_enterprises = len(environment.enterprises)
self.number_of_enterprises = len(environment.environment_params['enterprises'])
if self.id < self.number_of_enterprises: # Enterprises
self.state['id']=self.id
self.type="Enterprise"
self.tweet_probability = environment.tweet_probability_enterprises[self.id]
self.state['id'] = self.id
self.type = "Enterprise"
self.tweet_probability = environment.environment_params['tweet_probability_enterprises'][self.id]
else: # normal users
self.state['id']=self.number_of_enterprises
self.type="User"
self.tweet_probability = environment.tweet_probability_users
self.tweet_relevant_probability = environment.tweet_relevant_probability
self.tweet_probability_about = environment.tweet_probability_about # List
self.sentiment_about = environment.sentiment_about # List
self.state['id'] = self.number_of_enterprises
self.type = "User"
self.tweet_probability = environment.environment_params['tweet_probability_users']
self.tweet_relevant_probability = environment.environment_params['tweet_relevant_probability']
self.tweet_probability_about = environment.environment_params['tweet_probability_about'] # List
self.sentiment_about = environment.environment_params['sentiment_about'] # List
def step(self, now):

View File

@@ -13,8 +13,8 @@ class IndependentCascadeModel(BaseBehaviour):
def __init__(self, environment=None, agent_id=0, state=()):
super().__init__(environment=environment, agent_id=agent_id, state=state)
self.innovation_prob = environment.innovation_prob
self.imitation_prob = environment.imitation_prob
self.innovation_prob = environment.environment_params['innovation_prob']
self.imitation_prob = environment.environment_params['imitation_prob']
self.time_awareness = 0
sentimentCorrelationNodeArray[self.id][self.env.now] = 0

View File

@@ -24,8 +24,8 @@ class ControlModelM2(BaseBehaviour):
"""
# Init infected
init_states[random.randint(0, settings.number_of_nodes-1)] = {'id':1}
init_states[random.randint(0, settings.number_of_nodes-1)] = {'id':1}
init_states[random.randint(0, settings.number_of_nodes-1)] = {'id': 1}
init_states[random.randint(0, settings.number_of_nodes-1)] = {'id': 1}
# Init beacons
init_states[random.randint(0, settings.number_of_nodes-1)] = {'id': 4}
@@ -34,22 +34,23 @@ class ControlModelM2(BaseBehaviour):
def __init__(self, environment=None, agent_id=0, state=()):
super().__init__(environment=environment, agent_id=agent_id, state=state)
self.prob_neutral_making_denier = np.random.normal(environment.prob_neutral_making_denier,
environment.standard_variance)
self.prob_neutral_making_denier = np.random.normal(environment.environment_params['prob_neutral_making_denier'],
environment.environment_params['standard_variance'])
self.prob_infect = np.random.normal(environment.prob_infect, environment.standard_variance)
self.prob_infect = np.random.normal(environment.environment_params['prob_infect'],
environment.environment_params['standard_variance'])
self.prob_cured_healing_infected = np.random.normal(environment.prob_cured_healing_infected,
environment.standard_variance)
self.prob_cured_vaccinate_neutral = np.random.normal(environment.prob_cured_vaccinate_neutral,
environment.standard_variance)
self.prob_cured_healing_infected = np.random.normal(environment.environment_params['prob_cured_healing_infected'],
environment.environment_params['standard_variance'])
self.prob_cured_vaccinate_neutral = np.random.normal(environment.environment_params['prob_cured_vaccinate_neutral'],
environment.environment_params['standard_variance'])
self.prob_vaccinated_healing_infected = np.random.normal(environment.prob_vaccinated_healing_infected,
environment.standard_variance)
self.prob_vaccinated_vaccinate_neutral = np.random.normal(environment.prob_vaccinated_vaccinate_neutral,
environment.standard_variance)
self.prob_generate_anti_rumor = np.random.normal(environment.prob_generate_anti_rumor,
environment.standard_variance)
self.prob_vaccinated_healing_infected = np.random.normal(environment.environment_params['prob_vaccinated_healing_infected'],
environment.environment_params['standard_variance'])
self.prob_vaccinated_vaccinate_neutral = np.random.normal(environment.environment_params['prob_vaccinated_vaccinate_neutral'],
environment.environment_params['standard_variance'])
self.prob_generate_anti_rumor = np.random.normal(environment.environment_params['prob_generate_anti_rumor'],
environment.environment_params['standard_variance'])
def step(self, now):

View File

@@ -29,22 +29,23 @@ class SpreadModelM2(BaseBehaviour):
def __init__(self, environment=None, agent_id=0, state=()):
super().__init__(environment=environment, agent_id=agent_id, state=state)
self.prob_neutral_making_denier = np.random.normal(environment.prob_neutral_making_denier,
environment.standard_variance)
self.prob_neutral_making_denier = np.random.normal(environment.environment_params['prob_neutral_making_denier'],
environment.environment_params['standard_variance'])
self.prob_infect = np.random.normal(environment.prob_infect, environment.standard_variance)
self.prob_infect = np.random.normal(environment.environment_params['prob_infect'],
environment.environment_params['standard_variance'])
self.prob_cured_healing_infected = np.random.normal(environment.prob_cured_healing_infected,
environment.standard_variance)
self.prob_cured_vaccinate_neutral = np.random.normal(environment.prob_cured_vaccinate_neutral,
environment.standard_variance)
self.prob_cured_healing_infected = np.random.normal(environment.environment_params['prob_cured_healing_infected'],
environment.environment_params['standard_variance'])
self.prob_cured_vaccinate_neutral = np.random.normal(environment.environment_params['prob_cured_vaccinate_neutral'],
environment.environment_params['standard_variance'])
self.prob_vaccinated_healing_infected = np.random.normal(environment.prob_vaccinated_healing_infected,
environment.standard_variance)
self.prob_vaccinated_vaccinate_neutral = np.random.normal(environment.prob_vaccinated_vaccinate_neutral,
environment.standard_variance)
self.prob_generate_anti_rumor = np.random.normal(environment.prob_generate_anti_rumor,
environment.standard_variance)
self.prob_vaccinated_healing_infected = np.random.normal(environment.environment_params['prob_vaccinated_healing_infected'],
environment.environment_params['standard_variance'])
self.prob_vaccinated_vaccinate_neutral = np.random.normal(environment.environment_params['prob_vaccinated_vaccinate_neutral'],
environment.environment_params['standard_variance'])
self.prob_generate_anti_rumor = np.random.normal(environment.environment_params['prob_generate_anti_rumor'],
environment.environment_params['standard_variance'])
def step(self, now):

View File

@@ -32,20 +32,24 @@ class SISaModel(BaseBehaviour):
def __init__(self, environment=None, agent_id=0, state=()):
super().__init__(environment=environment, agent_id=agent_id, state=state)
self.neutral_discontent_spon_prob = np.random.normal(environment.neutral_discontent_spon_prob,
environment.standard_variance)
self.neutral_discontent_infected_prob = np.random.normal(environment.neutral_discontent_infected_prob,
environment.standard_variance)
self.neutral_content_spon_prob = np.random.normal(environment.neutral_content_spon_prob,
environment.standard_variance)
self.neutral_content_infected_prob = np.random.normal(environment.neutral_content_infected_prob,
environment.standard_variance)
self.neutral_discontent_spon_prob = np.random.normal(environment.environment_params['neutral_discontent_spon_prob'],
environment.environment_params['standard_variance'])
self.neutral_discontent_infected_prob = np.random.normal(environment.environment_params['neutral_discontent_infected_prob'],
environment.environment_params['standard_variance'])
self.neutral_content_spon_prob = np.random.normal(environment.environment_params['neutral_content_spon_prob'],
environment.environment_params['standard_variance'])
self.neutral_content_infected_prob = np.random.normal(environment.environment_params['neutral_content_infected_prob'],
environment.environment_params['standard_variance'])
self.discontent_neutral = np.random.normal(environment.discontent_neutral, environment.standard_variance)
self.discontent_content = np.random.normal(environment.discontent_content, environment.variance_d_c)
self.discontent_neutral = np.random.normal(environment.environment_params['discontent_neutral'],
environment.environment_params['standard_variance'])
self.discontent_content = np.random.normal(environment.environment_params['discontent_content'],
environment.environment_params['variance_d_c'])
self.content_discontent = np.random.normal(environment.content_discontent, environment.variance_c_d)
self.content_neutral = np.random.normal(environment.content_neutral, environment.standard_variance)
self.content_discontent = np.random.normal(environment.environment_params['content_discontent'],
environment.environment_params['variance_c_d'])
self.content_neutral = np.random.normal(environment.environment_params['content_neutral'],
environment.environment_params['standard_variance'])
def step(self, now):
if self.state['id'] == 0:

View File

@@ -19,11 +19,11 @@ class SentimentCorrelationModel(BaseBehaviour):
def __init__(self, environment=None, agent_id=0, state=()):
super().__init__(environment=environment, agent_id=agent_id, state=state)
self.outside_effects_prob = environment.outside_effects_prob
self.anger_prob = environment.anger_prob
self.joy_prob = environment.joy_prob
self.sadness_prob = environment.sadness_prob
self.disgust_prob = environment.disgust_prob
self.outside_effects_prob = environment.environment_params['outside_effects_prob']
self.anger_prob = environment.environment_params['anger_prob']
self.joy_prob = environment.environment_params['joy_prob']
self.sadness_prob = environment.environment_params['sadness_prob']
self.disgust_prob = environment.environment_params['disgust_prob']
self.time_awareness = []
for i in range(4): # In this model we have 4 sentiments
self.time_awareness.append(0) # 0-> Anger, 1-> joy, 2->sadness, 3 -> disgust