IGJSP 0.0.5__py3-none-any.whl → 0.0.7__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
IGJSP/generador.py
CHANGED
|
@@ -27,11 +27,11 @@ class JSP:
|
|
|
27
27
|
def __init__(self, jobs, machines, ProcessingTime=np.array([]), EnergyConsumption=np.array([]), ReleaseDateDueDate=np.array([]), Orden=np.array([])) -> None:
|
|
28
28
|
self.numJobs = jobs
|
|
29
29
|
self.numMchs = machines
|
|
30
|
-
self.speed = ProcessingTime.shape[-1] if ProcessingTime else 0
|
|
30
|
+
self.speed = ProcessingTime.shape[-1] if ProcessingTime.size else 0
|
|
31
31
|
self.ProcessingTime = ProcessingTime
|
|
32
32
|
self.EnergyConsumption = EnergyConsumption
|
|
33
33
|
self.Orden = Orden
|
|
34
|
-
self.rddd = ReleaseDateDueDate.ndim - 1 if ReleaseDateDueDate else 0
|
|
34
|
+
self.rddd = ReleaseDateDueDate.ndim - 1 if ReleaseDateDueDate.size else 0
|
|
35
35
|
|
|
36
36
|
def fill_random_values(self, speed, rddd, distribution, seed, tpm=[]):
|
|
37
37
|
np.random.seed(seed)
|
|
@@ -451,8 +451,8 @@ class Generator:
|
|
|
451
451
|
self.taillard = taillard
|
|
452
452
|
self.savepath = savepath
|
|
453
453
|
|
|
454
|
-
def generate_new_instance(self, jobs = 10, machines = 4,
|
|
455
|
-
jsp = JSP(jobs=jobs, machines=machines
|
|
454
|
+
def generate_new_instance(self, jobs = 10, machines = 4,speed = 1, ReleaseDateDueDate = 0, distribution = "uniform" , seed = 0, tpm=[]):
|
|
455
|
+
jsp = JSP(jobs=jobs, machines=machines)
|
|
456
456
|
jsp.fill_random_values(speed = speed, rddd = ReleaseDateDueDate, distribution = distribution, seed = seed,tpm = tpm)
|
|
457
457
|
if not (self.json or self.dzn or self.taillard): return jsp
|
|
458
458
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: IGJSP
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.7
|
|
4
4
|
Summary: Instance generator for JSP
|
|
5
5
|
Project-URL: Homepage, https://gps.blogs.upv.es/
|
|
6
6
|
Author-email: GPS-UPV <gps@dsic.upv.es>
|
|
@@ -14,31 +14,31 @@ Requires-Dist: scipy
|
|
|
14
14
|
Requires-Dist: tqdm
|
|
15
15
|
Description-Content-Type: text/markdown
|
|
16
16
|
|
|
17
|
-
#
|
|
17
|
+
# Instance Generator Job Shop Scheduling
|
|
18
18
|
|
|
19
19
|
## Description
|
|
20
20
|
Benchmark generator for the Job Shop Problem (BG-JSP)
|
|
21
21
|
|
|
22
22
|
## Generating a JSP problem instance
|
|
23
23
|
|
|
24
|
-
To generate an instance of the problem we will use the Generator class, located
|
|
24
|
+
To generate an instance of the problem, we will use the Generator class, located in the Generador module.
|
|
25
25
|
To do this, we initialize the generator, giving it the following parameters:
|
|
26
26
|
|
|
27
27
|
1. **JSON:`json`**
|
|
28
28
|
- **Description**: Parameter that indicates if the generated instance will be stored in JSON format.
|
|
29
|
-
- **Possible values**: Boolean value. Only
|
|
29
|
+
- **Possible values**: Boolean value. Only the values True or False can be obtained.
|
|
30
30
|
- **Example of possible values**: `True`, `False`
|
|
31
31
|
- **Default value**: `False`
|
|
32
32
|
|
|
33
33
|
2. **DZN:`dzn`**
|
|
34
34
|
- **Description**: Parameter that indicates if the generated instance will be stored in DZN format.
|
|
35
|
-
- **Possible values**: Boolean value. Only
|
|
35
|
+
- **Possible values**: Boolean value. Only the values True or False can be obtained.
|
|
36
36
|
- **Example of possible values**: `True`, `False`
|
|
37
37
|
- **Default value**: `False`
|
|
38
38
|
|
|
39
39
|
3. **Taillard:`taillard`**
|
|
40
40
|
- **Description**: Parameter that indicates if the generated instance will be stored in taillard format.
|
|
41
|
-
- **Possible values**: Boolean value. Only
|
|
41
|
+
- **Possible values**: Boolean value. Only the values True or False can be obtained.
|
|
42
42
|
- **Example of possible values**: `True`, `False`
|
|
43
43
|
- **Default value**: `False`
|
|
44
44
|
|
|
@@ -49,7 +49,7 @@ To do this, we initialize the generator, giving it the following parameters:
|
|
|
49
49
|
- **Default value**: `./output`
|
|
50
50
|
|
|
51
51
|
|
|
52
|
-
Once the generator has been initialized we proceed to generate different instances of the JSP problem with different values for this initialization
|
|
52
|
+
Once the generator has been initialized, we proceed to generate different instances of the JSP problem with different values for this initialization; for that we use the following function using the following parameters to customize the generated instances:
|
|
53
53
|
|
|
54
54
|
1. **Jobs:`jobs`**
|
|
55
55
|
- **Description**: Number of jobs that will have the problem generated.
|
|
@@ -64,10 +64,10 @@ Once the generator has been initialized we proceed to generate different instanc
|
|
|
64
64
|
- **Default value**: `4`
|
|
65
65
|
|
|
66
66
|
3. **Release and Due Date:`ReleaseDateDueDate`**
|
|
67
|
-
- **Descripción**: Establish that each task has an instant of release and
|
|
67
|
+
- **Descripción**: Establish that each task has an instant of release and completion limit.
|
|
68
68
|
- **Possible values**:
|
|
69
|
-
- `0`: Neither the works
|
|
70
|
-
- `1`: The work will have instant of release and instant of completion limit.
|
|
69
|
+
- `0`: Neither the works nor the operations of each of them will have an instant release or time limit for completion.
|
|
70
|
+
- `1`: The work will have an instant of release and instant of completion limit.
|
|
71
71
|
- `2`: The operations of each job will have a release time and a limiting end time.
|
|
72
72
|
- **Example of possible values**: `1`, `2`
|
|
73
73
|
- **Default value**: `0`
|
|
@@ -80,7 +80,7 @@ Once the generator has been initialized we proceed to generate different instanc
|
|
|
80
80
|
|
|
81
81
|
5. **Distribution:`distribution`**
|
|
82
82
|
- **Description**: Type of distribution to be followed for data generation.
|
|
83
|
-
- **Possible values**: You can only set one of the following values: `uniform` `normal` `exponential
|
|
83
|
+
- **Possible values**: You can only set one of the following values: `uniform` `normal` `exponential.`
|
|
84
84
|
- **Example of possible values**: `uniform`, `exponential`
|
|
85
85
|
- **Default value**: `normal`
|
|
86
86
|
|
|
@@ -92,7 +92,7 @@ Once the generator has been initialized we proceed to generate different instanc
|
|
|
92
92
|
|
|
93
93
|
## Example of JSON generated
|
|
94
94
|
|
|
95
|
-
This JSON shows how the data generated from
|
|
95
|
+
This JSON shows how the data generated from a JSP problem with 2 machines and 4 jobs will look. For this generation, we have the following code:
|
|
96
96
|
``` python
|
|
97
97
|
from IGJSP.generador import Generator
|
|
98
98
|
generator = Generator(json=True,savepath="output")
|
|
@@ -213,4 +213,4 @@ generator.generate_new_instance(jobs=4,machines=2,ReleaseDateDueDate=2,distribut
|
|
|
213
213
|
"maxMinMakespan": 14,
|
|
214
214
|
"maxMinEnergy": 0
|
|
215
215
|
}
|
|
216
|
-
```
|
|
216
|
+
```
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
IGJSP/generador.py,sha256=
|
|
1
|
+
IGJSP/generador.py,sha256=SCrBT8lMOHUMk6ga__yhnYKFdSZL4c38WCNupZsVsxg,21983
|
|
2
2
|
IGJSP/main.py,sha256=qnpAdI9Nymfbb2t674EHKCZr1vG80tGyVT5RKMiGvZM,2727
|
|
3
3
|
IGJSP/Minizinc/Models/RD/JSP0.mzn,sha256=cfN_E3RQ6nBulGfaOOYTd-zAgA5SI6E2saDlYtKCflg,2282
|
|
4
4
|
IGJSP/Minizinc/Models/RD/JSP1.mzn,sha256=5B8cyw2WyKR8yEL1fFd0TaCAVhjPoxEJRJDPPEjJGEk,2840
|
|
@@ -9,7 +9,7 @@ IGJSP/Minizinc/Types/RD/JSP2.mzn,sha256=ATqpg-Ow_VzjQJ_hZSSXiTXmwmqNqFsq81TZgcnj
|
|
|
9
9
|
IGJSP/Minizinc/Types/RD/type0.dzn,sha256=alo54TrPd2svp-YeOq8rNhb42Aj5w4N1y1WYRxZ-aWM,225
|
|
10
10
|
IGJSP/Minizinc/Types/RD/type1.dzn,sha256=r3f1uOoDnscjpXHbpvOWPGhGN0tmwkJ3NYIRP-NGk5M,298
|
|
11
11
|
IGJSP/Minizinc/Types/RD/type2.dzn,sha256=ddJxLqR_WlUpycHhA_QulxiTx3o9neIzNESEt59VUx0,344
|
|
12
|
-
igjsp-0.0.
|
|
13
|
-
igjsp-0.0.
|
|
14
|
-
igjsp-0.0.
|
|
15
|
-
igjsp-0.0.
|
|
12
|
+
igjsp-0.0.7.dist-info/METADATA,sha256=UdQnruAWlMoiVnF9FJ-2V3Brpa2EI4NWUwLYITlUe4g,7406
|
|
13
|
+
igjsp-0.0.7.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
14
|
+
igjsp-0.0.7.dist-info/licenses/LICENSE,sha256=f7RDRO-z_nMoooAya7NAb8sXtrHR6WnttYtyUc9fB-c,1116
|
|
15
|
+
igjsp-0.0.7.dist-info/RECORD,,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c)
|
|
3
|
+
Copyright (c) 2025 Planning and Scheduling Research Group
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
|
@@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
18
18
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
19
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
20
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
21
|
+
SOFTWARE.
|
|
File without changes
|