semvec/pypi-packages huggingface dataset:
PyPRS 1.0.0
A Python Software Package for Parallel Ranking and Selection Procedures.
Requires Python: >=3.8
Keywords: ranking, selection, simulation, operations research, GSP, KT, PASS, FBKT



# PyPRS: A Python Software Package for Parallel Ranking and Selection Procedures



**PyPRS** is a Python software package specifically developed to solve large-scale ranking and selection (R&S) problems in parallel computing environments. The underlying parallel computing framework is **Ray**. PyPRS incorporates four well-known parallel procedures: 

- **The Good Selection Procedure (GSP)**
- **The Knockout-Tournament (KT) Procedure**
- **The Parallel Adaptive Survivor Selection (PASS) Procedure**
- **The Fixed-Budget Knockout-Tournament (FBKT) Procedure**

Users can also upload custom procedures to test and compare performance against these built-in procedures.

---
## 📋 Prerequisites
- Python **3.10** is recommended for optimal compatibility.
- Required packages:  `ray==2.44.1`, `numpy`, `scipy`, `matplotlib`, `mrg32k3a_numba`. Install them using:
```bash
python -m pip install ray==2.44.1 numpy scipy matplotlib mrg32k3a_numba
```

## 📦 Installation

```bash
python -m pip install PyPRS
```

## 🖥️ How to use
To run PyPRS on a single computer, users just need to execute the **`GUI.py`** file located in the `UserInterface` package in a Python environment： 
- If the PyPRS is downloaded from the source repository,  users should first navigate to the parent folder of `PyPRS` folder and then execute the `python -m PyPRS.UserInterface.GUI` command in the terminal or command prompt.
- If users installed PyPRS using `pip`, users can directly run `python -m PyPRS.UserInterface.GUI` in the terminal or command prompt.

Once the command is executed, the **Graphical User Interface (GUI)** will launch. In the GUI, users can:
- **select a procedure**
- **configure input parameters**
- **upload required files**
- **run the procedure**