https://github.com/samuelterra22/machine-task-allocation-optimization
Script for allocating a set of tasks to a number of available machines respecting a deadline.
https://github.com/samuelterra22/machine-task-allocation-optimization
algorithm allocation deadline goal instance machine minimal minimization python task
Last synced: 4 days ago
JSON representation
Script for allocating a set of tasks to a number of available machines respecting a deadline.
- Host: GitHub
- URL: https://github.com/samuelterra22/machine-task-allocation-optimization
- Owner: samuelterra22
- Created: 2019-11-13T21:19:36.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-03-07T00:23:52.000Z (over 2 years ago)
- Last Synced: 2025-05-18T07:15:30.581Z (about 2 months ago)
- Topics: algorithm, allocation, deadline, goal, instance, machine, minimal, minimization, python, task
- Language: Python
- Homepage:
- Size: 77.1 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Machine Task Allocation Optimization
### Install linux dependencies
```shell script
sudo apt update
sudo apt install build-essential \
software-properties-common \
python3-pip \
python3-distutils
```### Create environment and install python dependencies
```shell script
pip3 install virtualenv
virtualenv venv
source venv/bin/activate
pip install -r requirements.txt
```### Instance
Um conjunto de _n_ tarefas, cada uma com tempo de processamento _p[i]_ não negativos
, _i=f, ..., n_ e número _m_ de máquinas disponíveis e um deadline _d_.### Solution
Determinar:
- _(i)_ uma distribuição das tarefas às máquinas, tal que cada tarefa esteja em exatamente
uma máquina;- _(ii)_ tempos de início _s[i]_, _i=1, ..., n_, de cada tarefa, tal que tarefas na mesma
máquina não tenham sobreposição durante as execuções, e tal que nenhuma tarefa
termine depois do deadline.
### GoalMinimizar o tempo de espera total das taredas antes do deadline, ou seja,

### Instance format
- 1ª linha: número de máquinas
- 2ª linha: número de itens _n_
- 3ª linha: due date _d_
- _i_ linhas seguintes: tempos de processamento das tarefas