University of Minho School of Engineering Concurrency...

12
University of Minho School of Engineering Concurrency Detection on Finish-to-Start Activity Precedence Networks Anabela Tereso (Department of Production and Systems) Rui Moutinho (Masters Degree on Informatics)

Transcript of University of Minho School of Engineering Concurrency...

Page 1: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

University of MinhoSchool of Engineering

Concurrency Detection on

Finish-to-Start Activity

Precedence Networks

Anabela Tereso (Department of Production and Systems)

Rui Moutinho (Masters Degree on Informatics)

Page 2: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

Motivation

Project

Renewable Resources with Maximum Availability

Multimodal ActivitiesFinish-to-Start Precedence

To assess the impact of the

availability constraint

Concurrency Trade-off

Allows concurrency

Resource requirement

Fixed availability (at all times)

Fully released after activity

completion

2

Page 3: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

Concurrency Detection Method

Collection

• Precedence relation Transformation

• Parallel relation Identification

• Sets of project activities that can execute concurrently with each other

3

Page 4: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

Detection Method: Collection

3

4

1 5

2

1

2

3 5 7

4

6

1 4 7652 3

1

4

7

6

5

2

3

Finish-to-Start Activity Precedence Relation

usually specified through either AoA or AoN networks

(here, in AoA: 7 arcs – 7 activities)

Finish-to-Start Precedence (matrix form)

𝑟𝑜𝑤 × 𝑐𝑜𝑙𝑢𝑚𝑛 = ∎ reads:

“𝑟𝑜𝑤” precedes “𝑐𝑜𝑙𝑢𝑚𝑛”Intuitively Transitive

Transitive Precedence (matrix form)

𝑟𝑜𝑤 × 𝑐𝑜𝑙𝑢𝑚𝑛 = ∎ reads:

“𝑟𝑜𝑤” must occur before “𝑐𝑜𝑙𝑢𝑚𝑛”

4

Page 5: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

Detection Method: Transformation

3

4

1 5

2

1

2

3 5 7

4

6

1 4 7652 3

1

4

7

6

5

2

3

Parallel Relation (matrix form)

𝑟𝑜𝑤 × 𝑐𝑜𝑙𝑢𝑚𝑛 = ∎ means

“𝑟𝑜𝑤” can execute in parallel

with “𝑐𝑜𝑙𝑢𝑚𝑛”

1 4 7652 3

1

4

7

6

5

2

3

Transitive Precedence Relation

𝑟𝑜𝑤 × 𝑐𝑜𝑙𝑢𝑚𝑛 = ∎ means

“𝑟𝑜𝑤” must occur before “𝑐𝑜𝑙𝑢𝑚𝑛”

If neither activity a or b precedes the other

they can execute concurrently

5

Page 6: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

Detection Method: Identification6

Set of activities, such:

Any two different activities may execute

in parallel

There is no activity outside the set which

can occur in parallel to any from the set

Set of nodes, such:

Any two different nodes are directly

connected

There is no node outside the set which is

directly connected to all in the set

The largest possible set whose activities

can execute in parallel

Parallel Set

The largest possible set of nodes which

are connected to each other

Maximal Clique

Parallel Relation Matrix Simple Undirected Graphadjacency

All Parallel Sets ⇋ All Maximal Cliques

Page 7: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

Detection Method: Identification

3

4

1 5

2

1

2

3 5 7

4

6

1 4 7652 3

1

4

7

6

5

2

3

4

5

2 6

31 7

Parallel Sets:

{1, 2}

{2, 3, 4}

{4, 5, 6}

{6, 7}

7

Page 8: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

Application: Resource Availability

Constraint

3

4

1 5

2

1

2

3 5 7

4

6

Multimodal Activities:

1. Min = 2; Max = 7

2. Min = 1; Max = 5

3. Min = 1; Max = 4

4. Min = 1; Max = 4

5. Min = 2; Max = 3

6. Min = 2; Max = 5

7. Min = 2; Max = 3

3 3

54

1213

12

8

{1,2} {2,3,4} {4,5,6} {6,7}

PARALLEL SET REQUIREMENTS

Cumulative Minimum Cumulative Maximum

With 13 units or more, no resource constraint is imposed

With 5 units or more, any set is supported

With less than 3 units, no concurrency will be possible

8

Page 9: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

Application: Resource Stress

3 3

54

1213

12

8

{1,2} {2,3,4} {4,5,6} {6,7}

PARALLEL SET REQUIREMENTS

Cumulative Minimum Cumulative Maximum

Maximum Availability:

8 units

Availability prohibitsconcurrency scenarios

Availability allows anyconcurrency scenarios

The probability of the cumulative requirement

being greater than the maximum availability

Resource Stress (of a parallel set)

𝑠𝑡𝑟𝑒𝑠𝑠 ≈ 0.444 𝑠𝑡𝑟𝑒𝑠𝑠 = 0.5 𝑠𝑡𝑟𝑒𝑠𝑠 ≈ 0.571 𝑠𝑡𝑟𝑒𝑠𝑠 = 0

The maximum stress is about 57%12 − 8

12 − 3≈ 0.444

13 − 8

13 − 3= 0.5

12 − 8

12 − 5≈ 0.571

8 − 8

8 − 4= 0

9

K

m M

𝑠𝑡𝑟𝑒𝑠𝑠 =

𝑀−𝐾𝑀−𝑚 𝑚≤𝐾≤𝑀

0 𝐾<𝑀1 𝐾<𝑚

Page 10: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

Conclusions & Future Research

Pro

s Concurrencypotential

Earlyassessment

Resource Stress

Co

ns

Maximal Clique

NP method

Exponentialoutput

Finish-to-Start

precedence

Parallel SetParallel Set

Parallel Set

10

Page 11: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

Conclusions & Future Research11

Dealing withNP nature

Reducing Output

SelectLarger sets

How?

FindMaximum clique

NP

Reducing Complexity

Exploitpartitions

Initial Activities

Final Activities

Others?

Page 12: University of Minho School of Engineering Concurrency ...pessoais.dps.uminho.pt/anabelat/objectos/WorldCIST'15 - RMAPT.pdf · usually specified through either AoA or AoN networks

References12

Bron, C., Kerbosch, J.: Algorithm 457: Finding all cliques of an undirected graph. Commun. ACM 16(9),

575–577 (Sep 1973)

Cazals, F., Karande, C.: A note on the problem of reporting maximal cliques. Theoretical Computer

Science 407(13), 564 – 568 (2008)

Chang, L., Yu, J., Qin, L.: Fast maximal cliques enumeration in sparse graphs. Algorithmica 66(1), 173–186

(2013)

Demeulemeester, E.L., Herroelen, W.S.: Project Scheduling - A Research Handbook, International Series in

Operations Research & Management Science, vol. 49. Kluwer Academic Publishers (2002)

Moutinho, R., Tereso, A.: Scheduling of multimodal activities with multiple renewable and availability

constrained resources under stochastic conditions. Procedia Technology 16(0), 1106 – 1115 (2014)

Pattabiraman, B., Patwary, M., Gebremedhin, A., Liao, W.k., Choudhary, A.: Fast algorithms for the

maximum clique problem on massive sparse graphs. In: Bonato, A., Mitzenmacher, M., Praat, P. (eds.)

Algorithms and Models for the Web Graph, Lecture Notes in Computer Science, vol. 8305, pp. 156–169.

Springer International Publishing (2013)

Prosser, P.: Exact algorithms for maximum clique: A computational study. Algorithms 5(4), 545–587 (2012)

Tomita, E., Tanaka, A., Takahashi, H.: The worst-case time complexity for generating all maximal cliques

and computational experiments. Theoretical Computer Science 363(1), 28 – 42 (2006), Computing and

Combinatorics 10th Annual International Conference on Computing and Combinatorics (COCOON

2004)