381
S p
S
x
x
v M
j r J j
w W W
j
j
S p
j
r
S S
jw
rw
jr
j
r
W W
W W
+
p j
p
≤
⋅
( (
) )
−
( )
∀ ∈
j r
j
≠ ∀
r
∈
δ j Δ
M
2 x
x
jw
1
−
) + (
r J
∈
r
,
(19)
S p
S
x
x M v M
j r J j
w W W
r
j
S p
S
r
j
S
jw
rw
jr
j
r
W W
W W
+
p j
p
≤
⋅
−
( (
) +
∀ ∈
j r
j
≠ ∀
r
∈
δ r Δ
2
r J
∈
r
,
(20)
Moreover, if two jobs are processed by the same machine, a driving time between the jobs
must be taken into account.
S p d
S
v M
j r J j
m G G
j
j
S p
jr
d m
j
r
j
S S
y m
r
y
j j
m
j
M
v r
j j
j
G
+
p j
p
+
S r
S (
) ) ( ( )
∀ ∈
j r
j
≠ ∀
r
∈ ∩
j
δ
M M
2 y
y
y
r
y m
1
− y
) (
r J
∈
r
,
r r
G
(21)
S p d
S
y
y M v M
j r J j
m G G
r
j
S p
S
rj
d d m
r
j j
j
j
S
y m
r
y
j j
m
j
M v r
j j
j
r
G G
+
p j
p
+
S j
S
− y
(
)
∀ ∈
j r
j
≠ ∀
r
∈
r
δ
2
r J
∈
r
,
(22)
After processing the last job on a machine, last technical services must be performed for
the machine. Let Shift be the duration of the working shift. The following constraints guarantee that if the processing of a job exceeds Shift (id j = 1), continuous decision variable
grad jw
d m specifies, which percentage of j is achieved during the shift.
S p
td y
Shift S
d M
j J
j
j
S p
j
m G
m
j
d y m
j
Shift S S
id
j j
j
G
+
p j
p
⋅ +
⋅ y y
+
∀
id M
j
j
j
id
∈
∑
δ j
ω
Δ
(23)
Shift S
f f
p
t d y
id M
j J
j
j
S p
j
m G
m
j
d y
d
m
j
id
j j
j
G
+
S j
S
td d
−
+ ( (
) ∀ ∈
j j
∑ ∑
δ
ω
Δ
1
(24)
S
g rad
PT
t d y
Shift
i
f
d
j
j
S
w W m G
jw
d m
j
PT T wm
m G
m
j
d y
d
j
id
m
Shift f f
j j
j
j
W m G
j
G
grad d
td d
≤ Shift f f
Shift f f (
W m
j
W m
∑ ∑
∑ ∑
∑ ∑
δ
ω
1
) ) ∀ ∈
M j
∀ J
(25)
S
g rad
PT
t d y
Shift i
f d j
j
j
S
w W m G
jw
d m
j
PT T wm
m G
m
j
d y
d
m
j
Shift i
f f d
j j
j
j
W m G
j
G
grad d
td d
≥ Shift f f
Shift f f
∈
j j
W m
j
W m
∑ ∑
∑ ∑
∑ ∑
δ
ω
J J
(26)
Consequently, if a job is processed (b j = 1) and its duration does not exceed the working
shift (id j = 0), grad jwm must take the value of 1.
w W m G
jwm
j
j
j
j
W m G
grad j
j
id b M
j
j J
W m
j
W m
∑ ∑
+
j
id j
≤ ( (
) ∀ ∈
j j
(27)
1 (
) ≤
∀
∑ ∑
id b
M
1 )
grad
j J
∀ ∈
j
j
d b
w W
∈ m G
∈
jw
d m
j
j
W m G
∈
(28)
For the other mining-specific requirements R2–R5, we formulate the following constraints.
Note that we write j r if job j must be completed before job r can be started.
R2:
S p
S
b b M
v M
j r J j
l ul
j
j
S p
j
r
S S
j
r
b b b
jr
j
r
ul
+
p j
p
≤
⋅
( (
) )
−
( )
∀ ∈
j r
j
≠ r ul j
l
δ j Δ
M
b b
j
b b
1
−
+ (
r J
∈
r
,
(29)
S p
S
b b M v M
j r J j
l ul
r
j
S p
S
r
j
S
j
r
b b b
jr
j
r
ul l
+
p j
p
≤
⋅
−
( (
) +
∀ ∈
j r
j
≠ r ul j
l
δ r Δ
r J
∈
r
,
(30)
S p
S
x
x
v M
j r J j
w W W
j
j
S p
j
r
S S
jw
rw
jr
j
r
W W
W W
+
p j
p
≤
⋅
( (
) )
−
( )
∀ ∈
j r
j
≠ ∀
r
∈
δ j Δ
M
2 x
x
jw
1
−
) + (
r J
∈
r
,
(19)
S p
S
x
x M v M
j r J j
w W W
r
j
S p
S
r
j
S
jw
rw
jr
j
r
W W
W W
+
p j
p
≤
⋅
−
( (
) +
∀ ∈
j r
j
≠ ∀
r
∈
δ r Δ
2
r J
∈
r
,
(20)
Moreover, if two jobs are processed by the same machine, a driving time between the jobs
must be taken into account.
S p d
S
v M
j r J j
m G G
j
j
S p
jr
d m
j
r
j
S S
y m
r
y
j j
m
j
M
v r
j j
j
G
+
p j
p
+
S r
S (
) ) ( ( )
∀ ∈
j r
j
≠ ∀
r
∈ ∩
j
δ
M M
2 y
y
y
r
y m
1
− y
) (
r J
∈
r
,
r r
G
(21)
S p d
S
y
y M v M
j r J j
m G G
r
j
S p
S
rj
d d m
r
j j
j
j
S
y m
r
y
j j
m
j
M v r
j j
j
r
G G
+
p j
p
+
S j
S
− y
(
)
∀ ∈
j r
j
≠ ∀
r
∈
r
δ
2
r J
∈
r
,
(22)
After processing the last job on a machine, last technical services must be performed for
the machine. Let Shift be the duration of the working shift. The following constraints guarantee that if the processing of a job exceeds Shift (id j = 1), continuous decision variable
grad jw
d m specifies, which percentage of j is achieved during the shift.
S p
td y
Shift S
d M
j J
j
j
S p
j
m G
m
j
d y m
j
Shift S S
id
j j
j
G
+
p j
p
⋅ +
⋅ y y
+
∀
id M
j
j
j
id
∈
∑
δ j
ω
Δ
(23)
Shift S
f f
p
t d y
id M
j J
j
j
S p
j
m G
m
j
d y
d
m
j
id
j j
j
G
+
S j
S
td d
−
+ ( (
) ∀ ∈
j j
∑ ∑
δ
ω
Δ
1
(24)
S
g rad
PT
t d y
Shift
i
f
d
j
j
S
w W m G
jw
d m
j
PT T wm
m G
m
j
d y
d
j
id
m
Shift f f
j j
j
j
W m G
j
G
grad d
td d
≤ Shift f f
Shift f f (
W m
j
W m
∑ ∑
∑ ∑
∑ ∑
δ
ω
1
) ) ∀ ∈
M j
∀ J
(25)
S
g rad
PT
t d y
Shift i
f d j
j
j
S
w W m G
jw
d m
j
PT T wm
m G
m
j
d y
d
m
j
Shift i
f f d
j j
j
j
W m G
j
G
grad d
td d
≥ Shift f f
Shift f f
∈
j j
W m
j
W m
∑ ∑
∑ ∑
∑ ∑
δ
ω
J J
(26)
Consequently, if a job is processed (b j = 1) and its duration does not exceed the working
shift (id j = 0), grad jwm must take the value of 1.
w W m G
jwm
j
j
j
j
W m G
grad j
j
id b M
j
j J
W m
j
W m
∑ ∑
+
j
id j
≤ ( (
) ∀ ∈
j j
(27)
1 (
) ≤
∀
∑ ∑
id b
M
1 )
grad
j J
∀ ∈
j
j
d b
w W
∈ m G
∈
jw
d m
j
j
W m G
∈
(28)
For the other mining-specific requirements R2–R5, we formulate the following constraints.
Note that we write j r if job j must be completed before job r can be started.
R2:
S p
S
b b M
v M
j r J j
l ul
j
j
S p
j
r
S S
j
r
b b b
jr
j
r
ul
+
p j
p
≤
⋅
( (
) )
−
( )
∀ ∈
j r
j
≠ r ul j
l
δ j Δ
M
b b
j
b b
1
−
+ (
r J
∈
r
,
(29)
S p
S
b b M v M
j r J j
l ul
r
j
S p
S
r
j
S
j
r
b b b
jr
j
r
ul l
+
p j
p
≤
⋅
−
( (
) +
∀ ∈
j r
j
≠ r ul j
l
δ r Δ
r J
∈
r
,
(30)
