This repository contains a consolidated collection of assignments, projects, and learning materials from my Economic Algorithms coursework at Ariel University.
This repository was reorganized on May 18, 2025, to use a consistent folder structure. All content is now located in folders named Assignment_X (where X is the assignment number). The old folders (Economic_Algorithms_Assignment_X) remain but contain only README files that redirect to the new locations.
Economic Algorithms is a field that combines economics, game theory, and computer science to design and analyze algorithms for economic scenarios. This repository includes implementations of various economic algorithms, mathematical proofs, and solutions to complex economic problems.
The repository is organized by assignment topics:
- Assignment_2: Fair division algorithms and leximin comparison
- Assignment_3: Advanced fair division techniques
- Assignment_5: Envy-free allocations and fair division concepts
- Assignment_7: Resource allocation algorithms
- Assignment_10: Nash welfare optimization for budget allocation
- Assignment_11: Mechanism design implementations
- Assignment_12: Auction theory and simulations
- Fair Division Algorithms: Methods for dividing resources fairly among participants
- Matching Algorithms: Solutions for optimal matching problems (e.g., stable matching)
- Game Theory: Strategic decision-making and equilibrium concepts
- Auction Theory: Different auction formats and their properties
- Mechanism Design: Creating systems that align incentives with desired outcomes
- Social Choice Theory: Aggregating individual preferences into collective decisions
Implementations of leximin ordering for comparing allocations and algorithms for finding almost envy-free allocations.
Focuses on more advanced fair division techniques and their implementations.
Implementation of the EF1 (Envy-Free up to 1 item) property and algorithms to check fair allocation of indivisible goods.
Implementation of different choice rules and threshold-based payment mechanisms.
Algorithms for optimizing Nash welfare in budget allocation problems using convex optimization.
Implementations focused on designing economic mechanisms with specific properties.
Algorithms for various auction formats and their simulations.
- Python: Primary programming language for algorithm implementation
- CVXPY: For convex optimization problems
- NumPy/SciPy: For mathematical operations and simulations
- Matplotlib: For data visualization
- Python 3.x
- Required packages:
- NumPy
- CVXPY
- Matplotlib
- Copy
# Clone this repository
git clone https://github.com/YairRaviv/Economic_Algorithms.git
# Install dependencies
pip install numpy cvxpy matplotlib- Course: Economic Algorithms
- Institution: Ariel University
- Academic Year: 2021-2022
- Leximin Comparison: Implementation in Assignment_2/BetterLeximin.py
- EF1 Check: Implementation in Assignment_5/Assignment_5.py
- Payment Mechanisms: Implementation in Assignment_7/Assignment_7.py
- Nash Budget Allocation: Implementation in Assignment_10/Assignment_10.py
This project is available for educational purposes. Please respect academic integrity policies when using this code.
Special thanks to the course instructors and teaching assistants for their guidance throughout this learning journey.