Skip to content

Commit

Permalink
Update app.py
Browse files Browse the repository at this point in the history
Update model.py

[pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Update agents.py

[pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Update agents.py

Update agents.py

[pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Update agents.py

Update configurations.py

[pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci
  • Loading branch information
vbv-shm authored and Vaibhav sharma committed Dec 14, 2024
1 parent 5c1d312 commit aedb32f
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 11 deletions.
4 changes: 2 additions & 2 deletions benchmarks/configurations.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"parameters": {
"height": 40,
"width": 40,
"homophily": 3,
"homophily_ratio": 0.3,
"radius": 1,
"density": 0.625,
},
Expand All @@ -47,7 +47,7 @@
"parameters": {
"height": 100,
"width": 100,
"homophily": 8,
"homophily_ratio": 0.8,
"radius": 2,
"density": 0.8,
},
Expand Down
16 changes: 11 additions & 5 deletions mesa/examples/basic/schelling/agents.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,19 @@ def step(self) -> None:
self.pos, moore=True, radius=self.model.radius
)

type_of_neighbors = [neighbor.type == self.type for neighbor in neighbors]

# Count similar neighbors
similar = sum(neighbor.type == self.type for neighbor in neighbors)
# Count total neighbors
total_neighbors=len(self.model.grid.get_neighbors(self.pos,moore=True))

similar = sum(type_of_neighbors)

# Count total neighbors
total_neighbors = len(type_of_neighbors)

# If unhappy, move to a random empty cell:
if total_neighbors!=0 and similar/total_neighbors < self.model.homophily_ratio:
if (
total_neighbors != 0
and similar / total_neighbors < self.model.homophily_ratio
):
self.model.grid.move_to_empty(self)
else:
self.model.happy += 1
2 changes: 1 addition & 1 deletion mesa/examples/basic/schelling/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ def agent_portrayal(agent):
},
"density": Slider("Agent density", 0.8, 0.1, 1.0, 0.1),
"minority_pc": Slider("Fraction minority", 0.2, 0.0, 1.0, 0.05),
"homophily": Slider("Homophily", 3, 0, 8, 1),
"homophily_ratio": Slider("Homophily_ratio", 0.3, 0, 1, 0.1),
"width": 20,
"height": 20,
}
Expand Down
6 changes: 3 additions & 3 deletions mesa/examples/basic/schelling/model.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ def __init__(
width: int = 40,
density: float = 0.8,
minority_pc: float = 0.5,
homophily: int = 3,
homophily_ratio: float = 0.3,
radius: int = 1,
seed=None,
):
Expand All @@ -24,7 +24,7 @@ def __init__(
height: Height of the grid
density: Initial chance for a cell to be populated (0-1)
minority_pc: Chance for an agent to be in minority class (0-1)
homophily: Minimum number of similar neighbors needed for happiness
homophily_ratio: Ratio of similar neighbors to total neighbors needed for happiness
radius: Search radius for checking neighbor similarity
seed: Seed for reproducibility
"""
Expand All @@ -35,7 +35,7 @@ def __init__(
self.width = width
self.density = density
self.minority_pc = minority_pc
self.homophily = homophily
self.homophily_ratio = homophily_ratio
self.radius = radius

# Initialize grid
Expand Down

0 comments on commit aedb32f

Please sign in to comment.