Optimization library for workforce management planning
Project description
wfmplan
Optimizing Workforce managemet planning : Our Python library, wfmplan, is designed to streamline workforce planning across industries. It calculates the optimal number of agents required to meet SLA targets for expected incoming traffic, applicable in scenarios such as call centers, customer support, live chat, retail stores, and help desks. By analyzing expected customer interactions and SLA requirements, it enhances planning accuracy, reduces wait times, and improves operational efficiency.
Features
- Calculate the number of agents required based on expected call volume, average handling time, and interval.
- Adjust for SLA or ASA (average speed of answer) targets.
- Account for maximum occupancy and shrinkage.
- Run optimization for a DataFrame containing multiple scenarios.
Installation
You can install the library using pip:
pip install wfmplan
Usage
Here's a basic example of how to use the Optimizer class:
from wfmplan.AgentOptimizer import Optimizer
# Create an optimizer instance
optimizer = Optimizer(exp_vol=100, aht=300, interval=3600, method='asa', asa=20)
# Get the predicted agent requirements
result = optimizer.predict()
print(result)
For batch processing using the BatchOptimizer class, you can use the following example:
from wfmplan.AgentOptimizer import BatchOptimizer
import pandas as pd
# Example usage
df = pd.DataFrame({
'exp_vol': [1000, 1500, 2000],
'exp_aht': [300, 200, 250],
'interval_start': pd.to_datetime(['2024-06-01 08:00:00', '2024-06-01 09:00:00', '2024-06-01 10:00:00']),
'interval_end': pd.to_datetime(['2024-06-01 09:00:00', '2024-06-01 10:00:00', '2024-06-01 11:00:00'])
})
operational_targets = {
'max_occupancy': 0.95,
'shrink': 0.1,
'asa': 20,
'method': 'asa'
}
batch_optimizer = BatchOptimizer(df, operational_targets)
result_df = batch_optimizer.run_optimization()
print(result_df)
For more details and advanced usage, refer to the documentation.
License
This project is licensed under the MIT License - see the LICENSE file for details.
If you're interested in collaborating to enhance the library further, please don't hesitate to contact me. This project is open source because I believe in empowering everyone and avoiding redundant work.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wfmplan-1.2.2.tar.gz.
File metadata
- Download URL: wfmplan-1.2.2.tar.gz
- Upload date:
- Size: 5.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.9.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
775abbdad7f614385da8dd42d7968a78de80cdda7972bfacee1961534457e000
|
|
| MD5 |
193435eb9f549fe17fd0bef2e458d1dd
|
|
| BLAKE2b-256 |
ea18a799752aebc68825e14838526e2e0e15905bd86968a5b336fa43d01ca24a
|
File details
Details for the file wfmplan-1.2.2-py3-none-any.whl.
File metadata
- Download URL: wfmplan-1.2.2-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.9.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db1b9fd5107608930424623f6f89a131efe16683558336ea848f167a1e058a66
|
|
| MD5 |
636975ed1863e70034a9b1f8bb809bb7
|
|
| BLAKE2b-256 |
2298444cc997adfa3ca84f51eb4072a64e732ec9627449389500b332489110f7
|