blackopsrepl's picture
Upload 31 files
666f6cf verified
metadata
title: Meeting Scheduling (Python)
emoji: πŸ‘€
colorFrom: gray
colorTo: green
sdk: docker
app_port: 8080
pinned: false
license: apache-2.0
short_description: SolverForge Quickstart for the Meeting Scheduling problem

Meeting Scheduling (Python)

Schedule meetings between employees, where each meeting has a topic, duration, required and preferred attendees.

Prerequisites

  1. Install Python 3.11 or 3.12.

  2. Install JDK 17+, for example with Sdkman:

    $ sdk install java
    

Run the application

  1. Git clone the solverforge-quickstarts repo and navigate to this directory:

    $ git clone https://github.com/SolverForge/solverforge-quickstarts.git
    ...
    $ cd solverforge-quickstarts/fast/meeting-scheduling-fast
    
  2. Create a virtual environment:

    $ python -m venv .venv
    
  3. Activate the virtual environment:

    $ . .venv/bin/activate
    
  4. Install the application:

    $ pip install -e .
    
  5. Run the application:

    $ run-app
    
  6. Visit http://localhost:8080 in your browser.

  7. Click on the Solve button.

Test the application

  1. Run tests:

    $ pytest
    

Problem Description

Schedule meetings between employees, where:

  • Each meeting has a topic, duration, required and preferred attendees.
  • Each meeting needs a room with sufficient capacity.
  • Meetings should not overlap with other meetings if they share resources (room or attendees).
  • Meetings should be scheduled as soon as possible.
  • Preferred attendees should be able to attend if possible.

More information

Visit solverforge.org.