Skip to content

YairRaviv/Economic_Algorithms

Repository files navigation

Economic Algorithms Repository

This repository contains a consolidated collection of assignments, projects, and learning materials from my Economic Algorithms coursework at Ariel University.

Repository Organization Note

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.

Overview

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.

Repository Structure

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

Key Topics Covered

  • 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

Assignment Details

Assignment 2: Fair Division and Leximin Comparison

Implementations of leximin ordering for comparing allocations and algorithms for finding almost envy-free allocations.

Assignment 3: Advanced Fair Division

Focuses on more advanced fair division techniques and their implementations.

Assignment 5: Envy-Free Allocations

Implementation of the EF1 (Envy-Free up to 1 item) property and algorithms to check fair allocation of indivisible goods.

Assignment 7: Resource Allocation Algorithms

Implementation of different choice rules and threshold-based payment mechanisms.

Assignment 10: Nash Welfare Optimization

Algorithms for optimizing Nash welfare in budget allocation problems using convex optimization.

Assignment 11: Mechanism Design

Implementations focused on designing economic mechanisms with specific properties.

Assignment 12: Auction Theory and Simulations

Algorithms for various auction formats and their simulations.

Technologies Used

  • Python: Primary programming language for algorithm implementation
  • CVXPY: For convex optimization problems
  • NumPy/SciPy: For mathematical operations and simulations
  • Matplotlib: For data visualization

Getting Started

Prerequisites

  • Python 3.x
  • Required packages:
    • NumPy
    • CVXPY
    • Matplotlib
    • Copy

Installation

# Clone this repository
git clone https://github.com/YairRaviv/Economic_Algorithms.git

# Install dependencies
pip install numpy cvxpy matplotlib

Course Information

  • Course: Economic Algorithms
  • Institution: Ariel University
  • Academic Year: 2021-2022

Notable Implementations

  • 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

License

This project is available for educational purposes. Please respect academic integrity policies when using this code.

Acknowledgments

Special thanks to the course instructors and teaching assistants for their guidance throughout this learning journey.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages