This project simulates a dating market where users (males and females) engage in swiping interactions. The goal is to model user behavior based on attractiveness and like rates, track matches, and analyze trends over time.
- Generate a population of users with customizable male-to-female ratios.
- Simulate swiping interactions with probabilistic liking behavior.
- Track matches, seen users, and like rate evolution.
- Analyze user interactions using data visualization.
- Export results as a structured dataframe using Polars.
Ensure you have Python installed along with the required dependencies: Use uv to setup the virtual environment.
uv sync
from dating_market import Market
market = Market(n_users=100, male_ratio=0.5, n_days=10)
market.run()
data_users = market.get_users_data()
data_market = market.get_market_data()
See the notebook here !