OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

200
OPTIMIZATION ALGORITHMS APPLIED TO LARGE PETRI NETS by AHMED TAREK, B.Sc.E.E.E., M.E. A DISSERTATION IN COMPUTER SCIENCE Submitted to the Graduate Faculty of Texas Tech University in Partial Fulfillment of the Requirements for the Degree of DOCTOR OF PHILOSOPHY Approved Accepted Interim Dean of the Graduate School Au^st, 2001

Transcript of OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Page 1: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

OPTIMIZATION ALGORITHMS APPLIED

TO LARGE PETRI NETS

by

AHMED TAREK, B.Sc.E.E.E., M.E.

A DISSERTATION

IN

COMPUTER SCIENCE

Submitted to the Graduate Faculty

of Texas Tech University in Partial Fulfillment of the Requirements for

the Degree of

DOCTOR OF PHILOSOPHY

Approved

Accepted

Interim Dean of the Graduate School

A u ^ s t , 2001

Page 2: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

ACKNOWLEDGEMENTS

I would like to convey my heartfelt gratitude to all the people of Texas Tech

University who helped me with this dissertation. I especially wish to thank all of my

committee members.

This dissertation would not have been possible without the expert guidance of my

advisor Dr. Lopez-Benitez. As the chairperson of the committee, he took special care

while I was preparing this dissertation. Not only was he readily available for me, but

he always read and responded to the drafts of each chapter of my work more carefully

than I could have hoped. He also advised and guided me from time to time.

Other people I want to thank are: my other committee members. Dr. W illiam M.

Marcy, Dr. Daniel E. Cooke, and Dr. Larry D. Pyeatt have been cordial and friendly

with me. They provided a unique combination of support, professional expertise and

experience for this dissertation. I want to especially thank Dr. Larry D. Pyeatt for

his helpful suggestions.

People at the Graduate School of Texas Tech University took enough care while

this dissertation was undergoing its preparation. Mrs. Barbi Dickensheet took her

time to carefully review the entire dissertation, and Mrs. Peggy Edmonson helped

me a lot by providing her experienced suggestions.

I wish to thank my family from the core of my heart in coming out with this

dissertation. A special word of thanks goes to my wife Rubina Khan for her patience

and understanding. My children Ahmed Farhan and Ahmed Alveed specially missed

their father while I was conducting this work.

Page 3: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

TABLE OF CONTENTS

ACKNOWLEDGEMENTS ii

ABSTRACT viii

LIST OF TABLES x

LIST OF FIGURES xi

1 INTRODUCTION AND MOTIVATION 1

1.1 Introduction 1

1.2 Motivation 2

1.3 Research Methodology 4

1.4 Organization of the Dissertation 12

2 NOTATION AND DEFINITIONS 14

2.1 Elementary Notations 14

2.2 Useful Definitions 17

2.3 Reachability Problem with Known u and d 21

2.4 Critical Siphons and Critical Transitions 23

2.5 Token-Free PNs 27

3 PRELIMINARY WORK 29

3.1 Preliminary Work on Single Step LP 30

3.2 Previous Work on DP 32

3.3 Preliminary Work on DP-Based LP Method 32

3.4 Previous Work on Pontryagin's Minimum Principle-Based LP Method 36

iii

Page 4: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

4 STRUCTURAL AND BEHAVIORAL PROPERTIES 43

4.1 On Siphons and Traps 43

4.2 Liveness Properties 53

5 A SINGLE-STEP LINEAR PROGRAMMING-BASED METHOD . . 57

5.1 From the Basic Reachability Equation to the Single-Step LP Method 57

5.2 Computational Mechanism 58

5.3 Spurious Firing Count Vectors 62

5.4 Time Complexity 63

5.5 Computation Time 63

5.6 Computational Aspects 65

6 THE LP METHOD BASED ON THE OPTIMALITY PRINCIPLE . 67

6.1 The Optimality Principle and LFSs in PNs 67

6.2 Description of the OP-Based LP Method 68

6.3 The Objective Function 71

6.4 Optimal LFS in Ordinary Petri Nets Containing Self-loops 74

6.5 Computation in PNs Having Cycles 78

6.6 Unimodularity 80

7 A DYNAMIC PROGRAMMING METHOD 84

7.1 Basic DP Formulation 84

7.2 The DP Algorithm 86

7.3 Computational Performance 89

7.4 Computational Characteristics 91

iv

Page 5: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

7.5 Complexity Analysis 92

7.6 Optimal Control Related Properties 92

8 A LP METHOD BASED ON DYNAMIC PROGRAMMING 95

8.1 Results on Reversed Nets 95

8.2 A Computational Algorithm for DP 104

8.3 Modified Reachability Problem on the Reversed Net 106

8.4 Formulation of the DP-Based LP Method 107

8.5 -Analytical Results 108

8.6 Time Complexity I l l

8.7 Use of the Upper Bounded Revised Simplex Method 112

8.8 An Analysis of Geometrical Properties 115

8.9 Numerical Examples . . 115

8.10 Observations 117

9 A FORWARD RECURSIVE DP-BASED LP METHOD 118

9.1 Basic Principle 118

9.2 Deduction 119

9.3 -Advantages 120

9.4 Time Complexity 121

9.5 Computation Time 121

9.6 Example 122

9.7 Unimodularity 122

10 THE PONTRYAGIN'S MINIMUM PRINCIPLE-BASED LP METHOD 127

V

Page 6: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

10.1 Introducrion 127

10.2 Discrete Time Pontryagin's Minimum Principle 128

10.3 State Equation 130

10.4 Derivation 130

10.5 Statement of the Pontryagin's Minimum Principle 136

10.6 Convexity Properties of the Computational Solutions 137

10.7 LP Relaxation 138

10.8 Computations in Unrestricted Petri Nets 140

10.9 Advantage 142

lO.lOz-Directional Convexity 142

10.11-A. Geometric Approach to the z-directional Convexity 145

10.12An Analysis of the Heuristic Procedure 150

lO.lSExamples 151

10.14Optimal Control-Based Analysis 156

10.15Computational Characteristics 163

10.16An Analysis of the Objective Function 164

11 ANALYSIS AND APPLICATIONS 168

11.1 Analysis of Computation Time 168

11.2 An -Application 174

11.3 Comparisons Among Three Different LP Methods 178

12 CONCLUSIONS 180

12.1 Future Research Directions 182

vi

Page 7: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

BIBLIOGRAPHY 184

Vll

Page 8: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

ABSTRACT

Petri nets (PNs) are important modeling tools for many practical control prob­

lems which include concurrent, asynchronous systems. Analysis of reachability is

important in connection to the characterization of PN models and many important

properties of P-Ns are related to it. Very little work has been reported which combines

optimization theory with PNs, Computation of legal firing sequences (LFSs) to de­

cide the reachability using well-established optimization techniques is the main focus

of this dissertation. The fundamental problem of deciding the reachability with a pre-

specified firing count vector u and the total firing instances d = YjiLi Ui is considered.

Related computational issues are also considered.

Different optimization techniques are investigated. Some of these techniques ap­

pear to be extremely elegant. .A set of problems related to the reachability analysis in

PNs are identified. Starting with the basic reachability equations, the straightforward

Single step LP method which uses only one iteration of linear programming (LP) is

derived. .Another important method is based on the Optimality Principle (OP) which

is combined with LP to derive the OP-based LP method. With considerable problem

sizes, the combinatorial state-space-explosion-problem remains as a major computa­

tional barrier for a LP method which computes a LFS in one step. From elementary

net equations, the dynamic programming (DP) algorithm to compute LFSs of PNs

is derived. To avoid the state-space-explosion-problem, the reversed net N~^ of an

original PN TV has been used and the basic DP algorithm is modified to compute on

the reversed net. The original problem is subdivided into d recursive parts and each

part is solved using LP This is the principle of the DP-based LP method. To im­

prove computation time, a forward recursive DP-based LP method is derived. Firing

of the sink transition in a critical siphon is a major problem for the DP-based LP

method, since it deadlocks a computational process. To avoid this, an approxima-

viii

Page 9: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

tion algorithm which involves Pontryagin's Minimum Principle(PMP)-based LP for a

known firing count vector u and the total firing instance d'xs introduced and discussed.

The method computes on an original PN A . A heuristic algorithm which supports

the computation of the PMP-based LP method is derived. This heuristic algorithm

suppresses firing of the sink transition of a potential critical siphon. The complete

method avoids potential critical transitions and computes complex problems.

-Analysis of complexity is important for the computer implementation of a com­

putational method. Therefore, time and space complexities are considered in order

to compute LFSs of PNs. Time complexity becomes about d~^ times to that of a

single step LP method if a complete problem is subdivided into d subproblems. This

technique is adopted with the FDP-based LP method, the DP-based LP method and

the PMP-based LP method with known u and d. Computation time curves for the

Single step LP, the DP-based LP and the PMP-based LP methods with a prespeci-

fied u and d which use the Revised Simplex DLPRS subroutine are obtained. Certain

subclasses of PNs have well-defined reachability criteria. Computation time curves

for these subclasses of PNs are obtained using a two-phase simplex subroutine.

Some application issues are considered in this dissertation. The identified prob­

lems are addressed. Future research directions are outlined.

IX

Page 10: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

LIST OF TABLES

2.1 Reachable states for the given problem 25

8.1 Incidence matrix a and u for the problem of Figure 8.2 116

8.2 Reachable states and the corresponding firing transitions 117

11.1 Improvements in computation time for using firing count subnets. . . 172

11.2 Roles of places and transitions in the complete controller model. . . . 177

11.3 Locus of the reachable states 178

11.4 Comparisons among three different LP methods 179

Page 11: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

LIST OF FIGURES

2.1 PN A^witha;(0) = [0,2,l,0,2]'anda;(rf) = [0,3,0,0,0f 23

2.2 A given PN iN,x{0)) 26

2.3 A given PN A with x{d) 28

3.1 An example PN for computing a LFS using the PMP-based LP method. 42

4.1 Three most common types of siphons 44

4.2 Three types of traps occurring frequently during computations 46

4.3 Structure of siphons and traps in GPNs 47

5.1 -A simplified geometrical entity generated in a 3-dimensional space. . . 61

5.2 -A PN used with the Single-Step LP method 65

5.3 -An ordinary PN A wfth a;(0) 66

6.1 A PN (A^,a;(0)) having cycles 79

6.2 A PN iV to verify Theorem 6.6.2 82

7.1 Flow-chart of the DP algorithm 88

7.2 DP algorithm applied to a PN. (a)(A'', a;(0)), (b) the states traversed. 89

7.3 The markings traversed by the DP algorithm for the net in Figure 2.3. 90

7.4 A BCF net 90

7.5 A PN to verify controllability 93

8.1 A PN iV and its reversed subnet.(a)(A^,a;(0)), (b)(A''-\a;„((i)) 103

8.2 An unrestricted PN with reversed subnet.(a)(A/',a;(0)), (b)(A/'-\a:„(d)). 115

9.1 A GPN {N,xiO)) 123

9.2 A PN N with a totally unimodular constraint matrix A 124

xi

Page 12: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

10.1 A Free-Choice PN N with x{0) 144

10.2 A GPN N with reachable markings which do not satisfy convexity. . 146

10.3 -A figure for the geometric interpretation of DTPMP 148

10.4 An asymmetric confusion at a;(0) 152

10.5 A GPN with a symmetric confusion at x(0) 153

10.6 A GPN used with the complete PMP-based LP method 154

10.7 A second example 155

10.8 A given PN and its reversed net(a)(Ar,x(0)), (b)(iV-Sx(d)) 162

11.1 Computation time curves for the DLPRS subroutine 169

11.2 Computation time curves for the two-phase simplex subroutine. . . . 170

11.3 -A PN for computation time assessment 171

11.4 An initial state of the automatic controller model 174

11.5 Reversed net of the controller model with an interlock, / = P13. . . 175

xu

Page 13: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 1

LNTRODUCTION AND MOTIVATION

1.1 Introduction

Petri nets (PNs) are a graphical and mathematical modeling tool for the formal

modeling and validation of systems. PNs are applicable to many discrete event dy­

namic systems (DEDS) that are characterized as being concurrent, asynchronous,

distributed, parallel, and/or nondeterministic. The reliability of PNs has been ver­

ified in practice [63]. Reachability and liveness are two of the most fundamental

problems concerning PNs. The basic reachability problem of PNs involves justify­

ing for a given initial marking x(0) and a final marking x(d) of the PN model of a

certain discrete event system whether the firing vector sequence {u(k):k=l, 2 , . . . , rf}

from x(0) to x{d) exists or not. If it exists, then compute such sequence {u(k)} in

a straight forward manner. This is a binary decision problem which can be solved

with a YES/NO answer. The firing vector at the kth firing, k = 1,2,.. .,d satisfies

the equation 2^_;^M(A;) = u, where d = YliLi'^^i- The vector u is referred to as the

firing count vector having m elements (some of which may be zero but not all). The

integer d denotes the total number of firings in the complete firing vector sequence.

Computations of legal firing sequences (LFSs) for deciding the reachability of PNs

are important in connection to the modeling of practical control problems and also

for the analysis of concurrent, asynchronous systems. Optimization techniques based

on linear programming (LP) for computing LFSs of PNs are considered. Dynamic

programming (DP) is the only direct method for sequential optimizations. DP-based

algorithms for computing LFSs of PNs are also discussed. Since the analysis based

on complexity is equally important for computer-based implementation of the algo-

Page 14: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

rithms, therefore time and space complexity are also considered for finding LFSs of

PNs. The time complexity is about d~^ times to that of a method dealing with the

problem as a whole by subdividing the large, complete problem into d sub-problem

stages.

Even though the reachability tree constitutes one of the preliminary methods for

deciding the reachability of PNs, it cannot be used for solving the reachability of

PNs with a prespecified firing count vector u and a total time d. This is due to

the loss of information which results from using the to symbol in the tree structure.

Therefore, other methods based on linear algebraic techniques are investigated in this

dissertation.

PNs are bipartite directed graphs; therefore, many of the graph theoretic proper­

ties play major roles in the analyses of PNs. Almost all of the properties like safeness,

liveness, boundedness, etc., can be obtained from the set of reachable markings. Also

for the optimum control of Discrete Event Dynamic Systems (DEDS), PNs are used

as effective graphical and mathematical modeling tools.

1.2 Motivation

The decidability of reachability has not been addressed since 1981 [47]. Once again,

the reachability tree and the coverability tree remain as the only useful methods for

verifying the reachability of unrestricted PNs [51]. However, for certain sub-classes

of PNs, the necessary and sufficient conditions for simple, useful reachability criteria

have been reported in [27]. A necessary condition for the reachability from a;(0) to

x{d) in unrestricted PNs is that the difference x(d) - x{0)=au should have at least

one non-negative integer solution vector (as the firing count vector u should always

be a non-negative integer). For the reachability problem with prespecified u and d,

each element of the set {u(k)} is an m x 1 firing vector having only one element equal

Page 15: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

to one and the rest of the elements equal to zero. Therefore, this is an all-integer-

programming-problem having fixed initial and end states as well as a total number of

firings d. For most real case applications, computation of an optimal LFS is impor­

tant. In an LFS, there is no spurious firing vector. A computed optimal LFS satisfies

the minimum transfer of tokens control objective. Therefore, the PN reachability

problem with an objective of computing an optimal LFS can be formulated as an

optimization problem with the objective function determining the transfer of tokens

control. Then it is possible to use standard optimization algorithms for solving the

reachability of PNs. Very little work is reported that combines optimization theory

and PNs until now. Visualizing the large potential of applications for computations

of optimal LFS of PNs has motivated the initiation of this research. Different re­

searchers and theoreticians were consulted from time-to-time during different phases

of the algorithm developments.

Methods of analysis for PNs can be classified into three groups: (1) the coverabihty

or the reachability tree method, (2) the matrix-equation approach, and (3) reduction

or decomposition techniques [51]. Even though the reachability and coverabihty tree

remain as effective methods for computing optimal LFSs of PNs, it cannot be used

for unbounded PNs due to the presence of the pseudo-infinity symbol co [15]. The

use of the reachability tree is too limited due to the state-space-explosion for large

problems [51], Reduction or decomposition techniques are too theoretical and lack

practical applicability [51], This limits the use of decomposition techniques. The

matrix-equation approach comes out to be the most useful and reliable technique due

to its mathematical rigor, rigidity and wide applicability [51]. This is a quite different

technique for analyzing PNs based on matrix linear algebra [51]. The advantage

of the matrix-equation techniques over the reachability-tree or the coverability-tree

technique is the existence of simple linear-algebraic equations that aid in determining

Page 16: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

PN properties.

1.3 Research Methodology

PNs are useful in modeling concurrent/parallel systems. But their applications

are too slow due to lack of sufficient computational tools and techniques capable of

dealing with large PNs and problems. Reachability analysis is a fundamental base

for analyzing the properties of PNs.

The existing methods for reachability analysis like the reachability tree and the

coverability tree methods are exhaustive enumeration techniques and are limited to

small PNs due to the state-space explosion problem. There is no general useful

method except the reachability tree to find a LFS even for a bounded PN.

A difficult problem regarding the PN reachability analysis with a prespecified u

and d is that the judgment and removal of the spurious (false) solution values for the

firing vectors in the LFS. .Also, there is a shortage of effective computational schemes

for computing LFSs of PNs employing useful, simple and straightforward techniques.

Complex algorithms are rather difficult to implement and analyze.

PNs are effectively used to model optimal control systems. But there are not

enough PN-based computational techniques for computing the optimal control vector

sequences (in the corresponding PN models these are optimal LFSs) for optimal

control problems. Self-loops and cycles in PN models are related to closed-loops or

feedbacks [35] in the corresponding control systems. It is hard to find computational

methods capable of computing ordinary PNs with self-loops and GPNs having cycles.

Computations in unrestricted PNs having arc weights greater than one poses another

difficulty in finding LFSs of PNs. To address the computation of this type of PNs,

relatively stronger and more powerful techniques are required.

Computational deadlocks are a major concern for existing computational tools

Page 17: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

and techniques which do not use exhaustive enumeration. Deadlock detection and

avoidance is a problem associated with the current computational tools and tech­

niques. That is why computational deadlocks have drawn significant interest among

the researchers in the PN community. It is important to characterize computational

deadlocks for the analysis of PNs. For modeling systems with PNs, conflict for re­

sources is a common event. Effective and efficient methods are required for avoiding

computational deadlocks and also to resolve the conflict for resources during compu­

tations.

Concurrent sv-stems consist of components that can operate concurrently and com­

municate with one another. But these are rather complex and difficult to design.

Hence, effective tools and techniques are required in order to verify and validate the

design of concurrent systems. PNs are a formal and graphical modeling tool for

concurrent system design verification and validation. But one problem associated

with the modeling of a concurrent system using PNs is that the number of reachable

states for the analysis becomes enormous. This extremely large number of reachable

states results in a combinatorial state-space-explosion problem. This is due to the all

possible reachable states arising from the possible interactions between the different

concurrent parts of a complete system. Therefore, effective computational methods

are required in order to analyze reasonable sized PN models of the concurrent com­

ponents of a system.

The method proposed by Fujii and Sekiguchi [18] to analyze PNs using LP has one

major drawback, which is the number of specification constraints. Also the number

of unknown variables increases whenever there is an increase in the length of the legal

firing sequence d.

Computational experience reveals that not all computational techniques/methods

are supported by each and every powerful scientific compiler. For example, Fortran 77

and COBOL compilers do not support recursions. Therefore, techniques and methods

5

Page 18: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

are required for the generalized implementation of a computational algorithm. This

enhances the applicability of the computational techniques.

As pointed out previously, reasonable sized PNs can be analysed with a method

described in [IS]. But in practice, effective computational methods are required in

order to compute large PNs and problems. As the problem size increases, the com­

plexity due to processing and analysis also increases. This complexity is associated

with the computational ability of the algorithm to compute large problems, the com­

putation time required by the algorithm, the time complexity and the memory space

requirements for implementing the algorithm, etc. Time complexity and memory

space requirements are two major issues of the computational algorithms. There­

fore, computational methods are required in order to compute large problems with

reasonable computation time, time complexity and memory space requirements.

For computing optimal firing vectors to find optimal LFSs, directional convexity

plays a significant role. For this sort of computations, the optimal state trajectory

needs to be computed. Therefore, computational characteristics of these problems

differ significantly from those of the regular modeUng problems. To design sound

computational methods for the solution of optimal control problems, the computa­

tional characteristics of these problems need to be identified.

Computations of LFSs having x{d) as the state-of-rest [10] may find additional dif­

ficulties during a computational process. ControUabihty [10] is an important concept

related to this issue. Effective techniques are required for establishing the controlla­

bility in PNs.

In summary, this dissertation addresses the following set of problems encountered

in dealing with PN representations:

1. Finding out suitable techniques for the polynomial time computations of LFSs.

This includes computing unbounded and unrestricted PNs and eliminating spu-

Page 19: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

rious firing vectors from the computation of a LFS. Straightforward design of a

computational method is always desired.

2. Identifying suitable methods for computing PN models of optimal control prob­

lems. This also covers computing ordinary PNs having self-loops and GPNs

having cycles. Identifying the difficulties related to the computation of optimal

state trajectories for optimal control problems poses another significant prob­

lem. Analyzing the difficulties and also justifying the computability for estab­

lishing the controllability and also the observability of a given PN reachability

problem are also important.

3. Deadlock detection and characterization in the computational process and iden­

tifying suitable methods in order to avoid deadlocks. Framing of a formal and

mathematical approach for analysing deadlocks and forming theoretical foun­

dations for the computational deadlock detection and analysis.

4. Reducing the total number of constraints and also the number of total variables

to reasonable values for a computational process. This will cover broad issues

like addressing the combinatorial state-space-explosion problems [51].

5. Identifying the approaches necessary for large problems and finding out the re­

lated computational difficulties. The generalization of a computational method

is also important.

6. Computation of a LFS with reasonable computation time, time complexity and

memory space requirements.

The PN models considered in this dissertation addresses problem types which

broadly covers the following:

Page 20: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

1. Safety-critical system design such as the design of an automatic railroad crossing

system,

2. Design of concurrent real-time systems,

3. Flexible Manufacturing Systems (FMS),

4. Manufacturing system design and analysis,

5. Control Systems.

Both structural and behavioral properties of traps and siphons are important in

connection to the reachability analysis of GPNs. Therefore, prior to the deduction and

analysis of a computational algorithm, the properties and characteristics of siphons

and traps are investigated. This forms an elementary part of this dissertation.

Liveness is an important property for deciding the reachability of PNs. Many

important applications are directly related to this property. A sound analysis of

liveness properties of GPNs has been done. A background discussion of liveness

properties of GPNs is an introductory part of this dissertation.

Finding LFSs in PNs with a prespecified u and d is an optimization problem with

minimizing the total transfer of tokens control objective. Mathematical program­

ming techniques are powerful computational methods. The optimization problem of

computing a LFS for the PN reachability with a prespecified u and d can be framed

as an all-integer-programming-problem and can be solved using LP-relaxation. This

approach overcomes the difficulties associated with the reachability tree and the cov­

erability tree methods which are based on exhaustive enumeration techniques.

An LP-based method like the Simplex method behaves approximately linearly for

small problem sizes [9]. A mathematical programming approach like the one which is

Page 21: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

based on LP eliminates spurious firing vectors from the computation of a LFS. Such

an implementation is straightforward [70].

The Optimality Principle (OP) forms a basis of DP. OP may effectively be used

for computing optimal control problems. The OP-based LP method computes all the

firing vectors in a LFS in just a single LP step and overcomes the computational dif­

ficulties associated with self-loops and cycles in a PN model. This method overcomes

the computational difficulties associated with potential critical siphons and critical

transitions. OP-based LP overcomes the problems related to self-loops and cycles in

PNs.

In order to reduce the number of constraints and the number of unknown variables

to reasonable values for the purpose of computations, one possibility is to break down

the given problem. The complete reachability problem with a prespecified u and d

has been broken down into a multi-stage decision problem and each stage is solved

using DP. Iterative schemes are supported by almost all of the powerful compilers.

Therefore, an iterative version of the DP algorithm is implemented.

For modeling concurrent systems using PNs, the number of reachable states for

the analysis may become enormous. Hence, using the DP approach alone, there is a

chance of combinatorial state-space explosion for relatively large problems. A solution

to this problem is to combine two different optimization methods in order to have a

more powerful and versatile computational technique. One approach is to combine

DP with LP in order to have a DP-based LP method. Another technique is to use

the reversed net A ~ of an originally given PN A'' for the computations. This scheme

potentially strengthens the computation of a LFS and aids in avoiding the potential

critical transitions on the originally given net A''. Backward directional computational

technique of DP is used with the reversed net by splitting the complete problem into

a multi-stage decision problem and each stage has been solved using an application of

Page 22: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

LP. This gives rise to the DP-based LP method combining three different techniques:

1. Use of the Reversed net A''"^ of an originally given net A'',

2. using DP,

3. using LP.

Such a combined method is more powerful compared to the use of a single method

alone. The method has been successfully applied for solving the reachability in unre­

stricted PNs. The method discussed in [44] does not address application issues. Also

it needs further clarification and analysis. These incomplete works on the DP-based

LP method are completed in this dissertation.

Splitting up an originally given problem into a multi-stage decision problem defi­

nitely reduces the number of variables to be solved. It also reduces the total number of

specification constraints at each of the computational steps. Thus, this technique re­

duces the computation time, time complexity and also the memory space requirements

needed for a computation. Hence, large problems are solvable using this technique.

There are two forms of DP techniques. One is a forward iterative DP technique

and the other is a backward iterative DP technique. The computation time of an

algorithm is a major concern in developing a method. The forward iteration of DP

can conveniently be used for computing LFSs by subdividing the problem into a

multi-stage decision problem. This implementation is more powerful since LP is used

to compute a legal firing vector at each stage of the multi-stage decision problem to be

solved by the forward directional DP method. This straightforward implementation

enhances the computational process and decreases the computation time.

To compute optimal LFSs, the Discrete Time Pontryagin's Minimum Principle

(DTPMP) is proposed to effectively compute discrete optimal control problems. The

reachability problem with prespecified u and d is formulated as a two-point-boundary-

10

Page 23: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

value-problem (TPBVP) and the Hamiltonian function which needs to be minimized

is deduced. This takes additional complexity in designing a method based on DTPMP

and needs ^-directional convexity. A technique like LP is used for computing a legal

firing vector at each stage of the computations after the reachability problem has been

reformulated as a multi-stage decision problem for using with the DTPMP. With this

scheme an extra algorithm to avoid the firing of critical transitions is required. This

is a heuristic approach to make the computational process self-sufficient, automatic,

and user interaction independent. The issues pertaining to the computation of adjoint

coefficients for the DTPMP turned it into an approximation algorithm instead of

an exact algorithm. -An approximation algorithm provides a near optimal solution

instead of an optimal solution which is good enough for most real case applications. In

optimal control problems like those associated with a Flexible Manufacturing System

(FMS) or Manufacturing Systems, sometimes near optimal solution to a sequencing

problem is good enough to serve practical purposes. For a problem of this type, a

relatively large PN needs to be considered. Therefore, PMP-based LP method is a

good approach for these problems.

Necessary computational methods are developed to address the problems identi­

fied. Methods are developed to approach the identified problems according to strate­

gies outlined in this section. None of these methods is capable of addressing all of the

identified problems. But based upon the characteristics of each method developed,

it potentially addresses some of these problems. This dissertation discusses these

methods and also related results in a unified framework. Also the related analysis is

provided.

11

Page 24: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

1.4 Organization of the Dissertation

Chapter 2 consists of preliminary discussions which include elementary notations,

basic definitions, the characterization of reachability criteria and the analysis of

siphons and traps. It also discusses the basic reachability problem with prespec­

ified u and d. It contains some analysis related to the reachability problem with

known u and d. The importance of the problem is also discussed.

In Chapter 3, some preliminary work is presented. It discusses single-step LP,

DP-I-LP (DP-based LP in this dissertation) and PMP-I-LP (Pontryagin's Minimum

Principle-based LP in this dissertation) methods in connection to previous publica­

tions [44, 45, 46].

Chapter 4 discusses important computational properties of siphons and traps. The

results discussed are important in connection to the algorithms developed and also for

computational deadlock detection and analysis. This chapter also considers safeness

and liveness properties of PNs from a computational standpoint.

Chapter 5 analyses the Single-Step LP method. Some related results for the com­

putations are presented. A computational mechanism of the single-step LP method

is illustrated.

In Chapter 6, the Optimality Principle (OP)-based LP method is presented. The

difficulties associated with self-loops and cycles in PN models are addressed and

solutions are discussed. Controllability and Observability in connection to the OP-

based LP method are also discussed.

Chapter 7 discusses the DP algorithm for computing LFSs of PNs. The method

to avoid computational deadlocks using dynamic programming (DP) is described.

Also the solution for reducing the number of constraints and also the number of

unknown variables to reasonable values using DP is detailed. Not all computational

techniques/methods are supported by each and every powerful scientific compiler.

12

Page 25: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

This chapter also deals with this problem.

Chapter 8 introduces reversed nets and discusses the DP-based LP method. The

technique to combine two different optimization methods is presented. The compu­

tational advantages in using reversed nets are described. This chapter also addresses

unrestricted PNs having arc weights greater than one, which poses another difficulty

in finding LFSs of PNs. To this type of PNs, relatively stronger and more powerful

techniques are required. One problem associated with the modeling of a concurrent

system using PNs is that the number of reachable states becomes enormous. This

chapter deals with these problems.

Chapter 9 is based on the FDP-based LP method. The properties of unimodularity

to compute a LFS of PNs are also considered. The FDP-based LP algorithm to

address large problems is introduced in this chapter. This chapter also discusses the

complexity associated with this algorithm.

Chapter 10 presents the Discrete Time Pontryagin's Minimum Principle (DTPMP)

for both states and the final time fixed problem. The goal of this chapter is to give

a general overview of the LP relaxation of Pontryagin's Minimum Principle (PMP)

with appropriate examples, to show the advantages behind adopting the relaxed PMP-

based LP method and the need for the z-directional convexity. Optimal control-based

analysis is provided. Characterization of computational deadlocks for the analysis of

PNs is detailed. This chapter also addresses deadlock detection and avoidance in

PN models, which is a problem associated with the current computational tools and

techniques.

Chapter 11 discusses computation time consumed by the methods. A comparison

among the computational methods is presented. A brief summary based on the

characteristics of the methods is outlined in this chapter.

Chapter 12 summarizes the research and suggests future research topics. Also this

chapter explains window-based PN tool developments for future research.

13

Page 26: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 2

NOTATION AND DEFINITIONS

2.1 Elementary Notations

The following terms and notation will be used throughout the dissertation.

1. N = {P,T,a^,a'): The structure of PNs.

2. P: {pi,P2, • • • ,Pn} is a finite set of places.

3. T: {ti,t2, • • •, tm} is a finite set of transitions.

4. a'^: (n X m) incidence matrix with arcs from transitions to places. In other

words, a"*" is the matrix of the output arcs.

5. a": (n X m) incidence matrix with arcs from places to transitions. Therefore

a~ is the matrix of the input arcs.

6. [N, x{0)): PNs having an n x 1 initial marking a;(0).

7. R{x{0)): The set of states reachable from a;(0).

8. x{k): The n x 1 state or the marking vector after the fcth firing.

9. u{j): The m x 1 firing vector at the j th firing which is non-negative.

10. x{d) = Xd- The n x 1 state vector at the dth firing which is known.

11. d: The total number of firings assumed to be known.

12. Bnxi- An n X 1 column vector each entry of which is 1. In general, it is denoted

bye.

14

Page 27: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

13. a = a"*" — a : The nx m incidence matrix.

14. u: An m X 1 firing count vector each element of which is the total firing count

of the corresponding transition in the complete firing sequence a.

15. Imxm- An mx m Identity matrix.

16. Omxn- An m X n matrix each of whose entries is a zero. This is called an m x n

zero matrix.

17. 'P: The set of input transitions of places P.

18. P': The set of output transitions of places P.

19. Au = {Pu,Ty,,a'^,a~): The structure of a firing count subnet.

20. Py,: The set of places in a firing count subnet, and in general | Pu |< | P |.

21. Tu'. The set of transitions in a firing count subnet, and | T„ |< | T |.

22. a j : The | P« | x | T^ | incidence matrix with arcs from transitions to places.

23. a~: The | Pu | x | Tn | incidence matrix with arcs from places to transitions.

24. au = a^ - a~: The | P^ | x | T^ | incidence matrix.

25. Xuij)- Marking vector at the j th firing of the firing count subnet.

Note that P[jT y^ (f) and Pf]T = (j), where (f) stands for the empty set.

The following rules govern the firing of transitions:

1. A transition is enabled, if and only if each of its input places contain at least as

many tokens as the weights associated to the corresponding input arcs. Math­

ematically, this is expressed as:

x{k-l)>a-u{k), k = l,2,...,d (2.1)

15

Page 28: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

2. An enabled transition may or, may not fire.

3. When an enabled transition fires:

• The number of tokens equal to the weights of the input arcs (given by

a~u{k), k = 1,2,.. .,d) from each of the input places is removed; and

• The number of tokens equal to the weights of the output arcs (this is

a'^u{k), k = 1,2,.. .,d) is deposited into each of its output places.

Let {ie(A:)}, / = 1,2,... ,y be a set of enabled transitions at the k-th firing. If

4(A;) = A, *A = {PeJ, i = 1,2,. ..,r. Denote by w{p'-g.) the token content of the set

of places p'g., i = 1,2,..., r. But A' = {p[}, j = 1,2,...,v. Also w{p^^.) = token

content of the places Pg., j = 1,2,... ,v. The objective is to select a transition t^

from the set {t[{k)}, where / = 1, 2 , . . . , y with an optimum number of tokens given

by:

(w{pl.) - w(plj) = [Er=i([ay] X [uj{k)])], where ; = 1,2,..., m (2.2)

Here, u{k) is the firing vector at the kth. firing instance whose only one element is

one and the rest of the elements are zero. The total number of transitions is m and

n is the total number of places in the PN.

Considering the m x 1 firing vector u{k) and the n x 1 marking or the state vector

x{k) at the A;th firing, the changes of states are mathematically defined using the

following state equation:

x{k) = x{k -1)+ au{k), k = l,2,...,d (2.3)

At each firing instance k, only one transition is allowed to fire. This is expressed by

the following equation: m

J2ui{k) = l, k=l,2,...,d (2.4)

16

Page 29: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

If the optimal firing vector sequence {u{k) : k = l,2,...,d} from the initial state

(marking) a;(0) to the final state (marking) x{d) exists, then the following equations

are obtained using equation (2.3).

x{d) = x{0) + au, (2.5)

u = Y:i^{k) (2.6)

2.2 Useful Definitions

The following are useful definitions used throughout this work.

2.2.1 Legal Firing Sequence

The sequence of firing vectors a = {u{k)}, which transforms a given initial marking

or state x(0) to a given destination marking or state x{d), such that each of the

transitions in that sequence a can fire sequentially in the order of a starting from

x(0) and the total firing number a{t) of each transition t in a becomes equal to Ut,

then the sequence of firing vectors a is called a Legal Firing Sequence in the PN

terminology. Also a firing vector sequence a is called a firing sequence for short.

2.2.2 Optimal Legal Firing Sequence (OLFS)

An optimal legal firing sequence is a legal firing sequence (LFS) {u{k)}, k =

0,1,2,.. .,{d - 1) which corresponds to the optimal state trajectory x{k), for k =

0,1,2,...,d.

2.2.3 Firing Count Subnet

The firing count subnet is defined on {N,x{0)) with x{d) and u as follows [51]:

the firing count subnet Nu of a given PN N is obtained by removing the transitions

17

Page 30: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

(2.8)

and arcs connecting those transitions corresponding to the zero elements of the firing

count vector u.

2.2.4 Linear Programming (LP)

-A linear programming problem has the following standard form:

Minimize y + CiXi -\- c^x^. H V CnXn- (2.7)

subject to : anXi + 0 2X2 H h ai„a;„ -H Xn+i = k, (a)

a n d Xi,X2,---,Xn+m>0. (b )

y, Uij, Cj and hi are constants,

with i = 1,2,- •• ,Tn and j = 1,2,- • • n.

The above form of LP problem is called the canonical form [36]. The set of constraints

in equation 2.8(a) can be arranged in a standard matrix form.

-A LP problem is said to be in normal form if it has only equality constraints of

the form (2.8)(a) and nonnegativity constraints of the form (2.8)(b) [58].

A LP problem is said to be in restricted normal form if each equality constraint

of the form (2.8) (a) has at least one variable that has a positive coefficient and that

appears uniquely in that one constraint only [58].

2.2.5 Siphon

A siphon is a subset of places in a PN that as soon as it becomes token-free, it re­

mains token-free from the next firing instance and satisfies the following property [51]:

<j) C 'P C P\

Here, P is the partial set of non-empty places in a siphon and 4> is an empty set

of places. The total token count in any siphon either remains constant or decreases

18

Page 31: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

during a computational process. The latter is due to the sink transition (a transition

without any output place) effect. Therefore, once a siphon becomes token-free, it

remains token-free from the next firing instance or marking. A siphon does not

contain any source transition (a transition having no input place).

2.2.6 Trap

-A trap is a subset of places in a PN which, once gets marked, remains marked from

the following firing instance. A trap is defined mathematically as [51]:

(j) C P* C 'P.

The total number of tokens in a trap either remains constant or increases during the

computations. The increase in the total token count is due to the source transition

effect. Once a trap becomes marked, it remains marked or holds tokens from the

next marking or the next firing instance (A; -I-1). This is a very important property

regarding traps. From its definition, a trap does not contain any sink transition (a

transition with no output place).

A Basic Siphon (Trap) is a siphon (trap) which cannot be represented as a union

of other siphons (traps) [51].

A Minimal Siphon (Trap) is a siphon (trap) which does not contain any other

siphon(trap) as its exact subset [51].

2.2.7 Deadlock

Deadlock occurs in a discrete event dynamic system (DEDS) with nonsynchronized

parallel actions [76]. If a system reaches a deadlock, then some parallel actions wait

for some other actions (for the release of a resource), and the system cannot proceed

any further. In PN terminology, a deadlock occurs when a transition or a set of

transitions cannot fire. A deadlock may not occur in a PN which contains siphons.

19

Page 32: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

2.2.8 Reversed Net

The reversed net structure N-^ [51] of a net structure N = {P,T,a+,a-) is the

unmarked net obtained by reversing the direction of each arc in A .

2.2.9 Place Invariance

-A P-invariant is a set of weights associated with the corresponding places so that

the weighted sum of tokens on these places is constant for all markings reachable from

an initial marking [76]. These places are said to be covered by a P-invariant, denoted

bv' ]| Pi II . This property of the set of places || Pi \\ is known as place invariance. A

vector Ip with n columns, one row and with only non-negative integer elements is a

P-invariant to a given PN N if:

IpXa = 0, (2.9)

where a is the incidence matrix of the PN N and n is the total number of places.

2.2.10 Transition Invariance

-A T-invariant is a vector representing the firing counts of the corresponding tran­

sitions that belong to a LFS transforming a marking x(0) back to x(0) [76]. A

T-invariant indicates all the transitions that comprise the LFS transforming x(0)

back to x(0), and the number of times these transitions appear in this LFS. It does

not specify the order of transition firings. Properties of a T-invariant are known as

transition invariance. Let a be the nxm incidence matrix of a PN N having n places

and m transitions. If It is a m x 1 vector which is a T-invariant to the PN A'', then

the following relationship holds:

axlt = 0. (2.10)

20

Page 33: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

2.2,11 Ordinary Petri Nets

In an ordinary PN [56], each arc weight is one. This means if w(p,t) is the weight

of the arc from any place p to a transition t, then w(p,t) = 1.

Proposition 2.2.1

-All closed loops in an ordinary PN No are of even arc weight.

Proof: From the basic definition of closed-loops in a PN A'', a closed-loop starts from

some place Pdc and finally returns back to p^c- Consider a closed-loop 4 - If there is

a total of Udc places and nidc transitions, then there should be an arc of weight one

from Pdc to the next transition and also an arc of weight one from that transition to

the next place in the loop and so on. From the final transition in the loop, there must

be an arc of weight one back to the place pdc- Hence, the next condition generally

holds for any closed-loop in a GPN:

ride = rUdc- (2.11)

Thus, the total number of the arcs in a closed-loop dc={ndc+mdc)=2ndc- This number

2ndc is always even for any integer value of Udc- The minimum possible value of n c

is one, which is the case for a self-loop.

Q.E.D.

2.3 Reachability Problem with Known u and d

For the reachability problem under consideration, u and d are prespecified. This is

an all-integer-programming problem. With mathematical rigor, the basic problem is

to find the optimum firing sequence {u*{k)} to minimize the quantity:

d d

J=J2 ^'<k) = E e*{ ( - 1) + au{k)}, (2.12) fc=l k=l

21

Page 34: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

subject to (a) x{k) = x{k - 1) + au(k),

(b) x{k-l)>a-u(k),

(c) T,T=iUi{k) = l, u{k) = [ui{k)],

(d) Ei=iuik) = u, \ (2.13)

(e) x{0),x{d) and d are fixed,

(f) a;(0),2;(/c) > 0 ; integers,

(g) u>Q, u{k) > 0; integers,

where e* means the transpose of e.

Equation 2.13(a) specifies the basic movement of tokens in the given PN A''. The

incidence matrix a=a+ - a~ and x{k) - x{k - l)-l-(a''' - a~)u{k) means firing a

transition corresponding to the firing vector u(k) on x{k - 1), a marking x(k) is

reached by removing tokens a~u{k) from x{k — 1) and adding tokens a'^u{k) to it.

Equation 2.13(b) describes the enabling condition of a transition, corresponding to

the firing vector u{k). For a transition to be enabled on x[k — 1), x{k — 1) must

contain at least as many tokens as a~u{k) or greater, where u{k) is the firing vector

corresponding to the enabled transition under consideration. Equation 2.13(c) states

that the m x 1 firing vector u{k) has the summation of all its elements equal to one.

Equation 2.13(d) states that the sum of all firing vectors u(k) for k = l,2,...,d

should be equal to the firing count vector u. Equation 2.13(e) states that the initial

marking x{0), the final marking x{d) and the total number of firings d are predefined

and fixed. Equation 2.13(f) states that the initial marking x{0) and the marking x{k)

at the A;th firing, k = 1,2,... ,dshould be non-negative integers. Therefore, equation

2.13(c) automatically implies that only one element of the non-negative firing vector

u(k) could be unity at each firing instance k and the remaining (m — 1) elements of

u{k) should be zero.

22

Page 35: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Considering the objective funcrion (2.12) and the set of constraints (2.13), clearly

the objective function is in a linearly additive form. Also the net state equation

is linear which may be effectively used to derive any further form of the objective

function. Thus, the objective function is always linear. The set of constraints on the

objective function are all linear for a prespecified firing count vector. Therefore, the

PN reachability problem of finding the LFS is in linear form and is an LP problem.

Hence, any feasible LP technique could be used for finding LFSs of PNs with known

u and d. The two-phase simplex subroutine [58] and the revised simplex package

routine DLPRS from IMSL, Inc. [34] have been successfully used for it.

2.4 Critical Siphons and Critical Transitions

The concepts related to the critical siphons and critical transitions are introduced

and analyzed [44]. The analysis forms a foundation for identifying computational

deadlocks and provides effective guidelines for designing algorithms that overcome

the problems associated with a computational deadlock. To illustrate the concept of

critical siphons and critical transition, consider the PN of Figure 2.1.

^ ,. P*

Figure 2.1: PN A with x{0) = [0,2,1,0,2]' and x{d) = [0,3,0,0,0]*.

23

Page 36: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

For this PN, a;(0) = [0,2,1,0,2]*, x{d) = [0,3,0,0,0]* with u = [1,3,4,1,2]*.

-A possible LFS for this problem is, a = {ti,t3,t4,t5,t5,ts,t2,t3,t2,t3,t2). Table 2.1

shows the computation.

For j = l in Table 2.1, if t2 is selected, then clearly the problem which has been

given becomes unreachable (12 is the sink transition of the siphon Ps = {pi,P3,P4}

on the marking). If t^ is selected then the net is reachable (but for this given value

of •u=[1,3,4,1,2]' and d = 11, if 4 is allowed to fire then ultimately realizing the

firing count vector u = [0,1,1,1,2]*, the final marking a;(d)=[0, 3,0,0,0]* is reached

but the effective firing count vector u = (u — u) = [1,2,3,0,0]* becomes unrealizable

and the system is deadlocked. Transition t^ is the sink transition of the siphon

{P1)P3JP2} in this case with j = 1). On the other hand, if t2 or, ts is selected at

j = 3 and afterwards if 2 or, is is selected depending on the priority, then each of the

nets become unreachable at ; = 8 (transition 2 is the sink transition of the siphon

Ps = {Pl,P3,P4})-

Therefore, from this example, it is possible to have an idea about the concepts

pertaining to critical siphons and critical transitions. Considering that for a given

reachability problem of finding one optimal LFS cr, there exists an enabled transition

tp ^ Ts n{'Ps r\ Ps) ' ' ith Up{k) > 0 in a siphon Ns- Suppose that there is another

enabled transition tc e Ts\'Ps with Hdk) > 0 in Ns on x{k) e R{x{0)) at the k-th.

firing. Now, if at least one transition tp € Tg flCPs fl Ps) "^ith Up{q) > 0 cannot fire

at some marking x{q) e R{x{k)), k -\-1 < q < d, due to the firing of tc G Ts\'Ps at

the kth firing, then Ns will be called a critical siphon at x{k) e R{x(0)) for the given

reachability problem. The transition tc will be called a critical transition.

24

Page 37: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Table 2.1: Reachable states for the given problem.

Here x{0) = [03000]* and x{d) = [02102]*.

j [Au{d-j + l)f {t} [x{d-j)f

1

2

3

4

5

6

7

8

9

10

11

[1,3,4,1,2]

[0,3,4,1,2]

[0,3,3,1,2]

[0,3,3,0,2]

[0,3,3,0,1]

[0,3,3,0,0]

[0,3,2,0,0]

[0,2,2,0,0]

[0,2,1,0,0]

[0,1,1,0,0]

[0,1,0,0,0]

{ti,t2,U} [6,0,0,0,2]

{t_3} [4,0,1,0,2]

{ 2, 3, 4} [4,0,0,2,2]

{t3,t,} [5,0,0,1,1]

{t3,t5} [6,0,0,0,0]

{ta} [4,0,1,0,0]

{t_2,t3} [4,1,0,0,0]

{tj} [2,1,1,0,0]

0_2,t3} [2,2,0,0,0]

{t_3} [0,2,1,0,0]

{t_2} [0,3,0,0,0]

A marking x(k) is said to be critical at the kth firing, if there exists at least one

critical transition tc at x{k) with 0 < k < d. In other words, a marking Xc{k) is said

to be critical at the kth firing provided that there exists at least one critical transition

tc on that marking.

For the example considered, Ps = {pi,P3,p4} is a critical siphon on x(0) at

firing k = 1. Now Ts = {ti,t2,t3,t^,t5}. Also 'Ps = Oi,t3,t4,t5} and P's =

01,^2,^3,^4,^5}. But t2 E Ts\'Ps with ^ 2(0) = 3. Therefore, TsHCPsHPs) =

25

Page 38: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

{ti,t3,ti,tc,}. Now ti e Tsf]{'Psf)Ps) and ti cannot fire at A; = 2 on x{l) due to

the firing of 2 at x(0). Hence, Ps = {pi,P3,P4} is a crirical siphon at x(0) and x{0)

is a critical marking. Transition <2 is a critical transition at firing k = 1.

Let Tc be the set of all critical transitions and Ts be the set of all sink transitions

of the critical siphons for deciding any given reachability problem with a prespecified

u and d. Then the next relationship holds.

Ts C Tc. (2.14)

Figure 2.2: A given PN (A^,a;(0)).

To illustrate consider the net in Figure 2.2. The PN in Figure 2.2 represents

transitive conflicts at a;(0) for computing a LFS with x(0) — [1,1,0,0]*, x(d) =

[0,0,0,0]* and a firing count vector u = [1,1,1,1,1]*. Transitions ti , 2 and ts are

enabled at x(0). These transitions are in a transitive conflict at x{0). Transition ts

is the sink transition of the siphons {^1,^3}, {pi,p4} and {P2}. If 3 fires at x{0),

all three siphons will become token-free from x{l) and the computation is sure to

be deadlocked. Transition 3 is the sink transition of the potential critical siphons

{PiiP3}i {Pi,P4} and {P2} on x{0). Thus, 3 is a potential critical transition on

x{0). Hence, concepts pertaining to the critical siphons and critical transitions are

directly related to the concept pertaining to transitive conflict at some marking of

26

Page 39: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

a PN reachabilit}' problem. This relationship is of prime importance in designing a

computational algorithm for overcoming the difficulties mentioned.

Clearly the PN in Figure 2.1 contains a number of siphons and some of the arc

weights are greater than one, which is the case for an unrestricted PN. This sort of

PN needs a relatively stronger computational method.

In the previous research work, PNs are considered in such a way that sufficient

conclusions about these nets can be made and also their relevant properties can be

extracted. Initial markings considered with an example net play significant roles in

deciding the reachability with a prespecified u and d. Behavioral properties of a

PN means reachability, liveness and boundedness etc. Behavioral properties of PNs

depend to a large extent on the initial marking. For example, reconsider Figure 2.2.

for a given initial marking x(0)=[l, 1, 0,0]*, the PN exhibits transitive conflict at a:(0),

but if x(0) were [3,1, 0,0]*, the net would have been live at x{0).

2.5 Token-Free PNs

-A PN which does not have tokens (no resource) at a specific marking is known as

a token-free PN at that marking. Token-free PNs at the final marking x{d) play a

significant role in modefling control systems. For example, consider the PN in Figure

2.3. The net may be considered in connection to the computations for establishing

Controllability [10]. The net of Figure 2.3 contains both a sink and a source transition

[51].

27

Page 40: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Figure 2.3: A given PN A with x{d).

28

Page 41: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 3

PRELIMINARY WORK

A PN reachabihty problem is decidable [51]. However, it has exponential time

and space complexity. The reachability and the liveness problems are the two most

fundamental problems in PNs and solutions have not been attempted for a long

period of time. These problems had been addressed in [47]. However, the reachability

tree remains as the only useful method for verifying the reachability of unbounded

PNs. For certain sub-classes of PNs, necessary and suflScient conditions for simple,

useful reachability criteria have already been obtained [27]. A necessary condition

for unrestricted PNs to become reachable is that the state equation for the difference

between x{d) and x(0) should have non-negative integer results (the firing count

vector u should always be non-negative). Hence, the reachability problem with the

given u = [ui], i = 1,2,3,- •• ,m (where each component Ui denotes the total number

of firings of the z-th transition ti in the sequence) means computing the LFS {u{k)}

which satisfies the equations d

J2 u{k) = u k=l

and

d = ^Ui. j = i

But at each firing instance k, only one of the enabled transitions is allowed to fire. At

this point, this is an all- integer-programming-problem having fixed lower and upper

bounds. This problem has been solved using LP techniques with a polynomial time

algorithm described in [18]. A major drawback in this algorithm is that the number

of constraints and the number of unknown variables increase whenever there is an

29

Page 42: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

increase in the length of the LFS d. In order to reduce the number of variables and

the constraints, a new method has been proposed in [19]. The method can compute

a LFS of the PN reachability problem provided the net is not too large. But this has

been achieved at the expense of increased complexity and extra processing stages.

3.1 Preliminary Work on Single Step LP

The following definition is important in connection to the Single step LP method.

Definition 3.1.1

Basis Matrix: Let -A be a n x m constraint matrix of a LP problem in the standard

form. If /„ is an n X n unity matrix, then any nonsingular (n, n)-submatrix B of the

matrix [.4 /„] is called a basis matrix. The index / with a suffix n, /„ denotes an

(n X n) unity matrix. The columns of B form a basis of the space RP-. 0

In order to reduce complexity and to design a straight forward computational

method, a LP-based method is proposed and implemented [70]. The method is out­

lined in the following. For k = 1,2,.. .,d, find the optimum firing sequence {u*{k)}

such that

J* = min[e\dx{0)) + e*a(u(cf)) + e^a{2u{d - 1)) + . . .

+e*a(du(i)) + Er=i y} + E?=i y] - e ZU n = i 4], (3.1)

30

Page 43: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

subject to

*m X m •* m x r

Oly,n »(

O i xm C^lxm

On>

Onxm On>

^m X m J m X m Om X 1 • • • Omxn

O i x m O i x m / i x l . . . O l x n

O l x m O i x m O i x l . . . O l x n

^ m x l O i x m ••• i ' l x l O l x n

~ 1 O n x m O n x l . •• Inx-n.

—0. Onxm Onxl ••• InXn

On On> Onxn

OmXn

O i x n

O l x n

O l x n

OnXn

Onxn

'tnxn

-u{d)

u(d- 1)

«(1)

y'

y'

s^

s"

=

-u

A XI

/ i x i

x{0)

x(0)

_ ^(0) J

(3.2)

Consider the net in Figure 2.2, the initial marking is x(0) = [1,1,0,0]*, the destination

or the final marking is x[d) = [0, 0, 0, 0]* and a firing count vector is u = [1,1,1,1,1]*

with d = 5. On x(0), ti, t2 and ts are enabled. Firing ts, the total transfer of tokens

= (0 — 2)=—2, whereas the same for firing ti = (1 — 1) = 0 and for firing t2 = (1 — 1)

= 0. Therefore, firing ts at x{0), the total transfer of tokens is a minimum. But ts is

the sink transition of the critical siphons {pi,P3}, {pi,Pi} and {^2} at x{0). Single

step LP avoids the firing of ts at x[0) and the LFS obtained is a = (ti,t4, t2,i5,ts)

implying that the computation avoids the firing of ts at x(2). At x{2), both t2 and

ts are enabled with ts as the sink transition of the critical siphons {pi,P4} and {^2}-

The number of unknown variables for the LP method is (m -{• d -\- n x d -\- m x d).

The total number of constraints=(m -\- d-\-nx d). Let Y = (m + d-tnxd + mx

d) -\- (m -\- d + n X d)={2m -^ 2d -\- 2n x d + m x d) . Now, the time complexity

is of 0{hY) with h is a, constant of proportionality. .Assuming LP is a polynomial

time algorithm of order 4 of the size of the problem, then the time complexity of the

Single LP method is OihY)cx Y\ Therefore, Y^ = [2(m H- d + n x of) + m x d] ~

[2(m + n + 1) X d]^ ~ 16d^(n + m + 1)1

31

Page 44: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

This method needs further analysis and appropriate examples and applications

need to be investigated.

3.2 Previous Work on DP

DP is a powerful computational technique for sequential optimization. A DP algo­

rithm which uses the depth-first-search (dfs) for computing LFSs of PNs is proposed

in [44]. The method uses a recursive technique and relies on the following equation.

(the derivation is not shown here)

r{x{k-l),k) = „(^;^^{J(x(A;-l),t/(fc),fc)

+J*{x{k),k + 1)}, (3.3)

where J*(x{d),{d-\-l)) = 0 and k = 1,2,.. .,d.

The following characteristics are important in connection to the DP method:

•The computation starts at x{d) and proceeds in the backward direction.

•It computes all e*rr(A;) together with the reachable states x{k - 1) for which the ob­

jective function value is J{x{k -l),k) at the kth firing instance, fc = d, (d - 1 ) , • • •, 1.

•The method computes all reachable states in its search space. For example, re­

consider the net in Figure 2.3. An initial marking is x(0) = [0,0,0,0,0,0,0]* and

a final marking is x{d) = [2,0,0,1,0,0,0]* together with a firing count vector, u =

[0,0,1,1,1,1,1, 0]* and d = 5. An optimal LFS from the initial to the destination

marking has been computed to he a = {t^,t-j,t4,t3,t^) by the DP algorithm.

3.3 Preliminary Work on DP-Based LP Method

In order to apply DP for large, reasonably sized PNs, the reachabihty problem with

a prespecified u and d is organized as a d part process. The original form of DP based

on the optimization principle of Richard Bellman has been used in [44] where it is

32

Page 45: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

referred to as the DP-I-LP method. The DP-l-LP method is based on the following

characteristics:

•The method computes on the reversed net N~^ of an originally given PN N.

•The DP-I-LP starts computing at x{d).

•It uses d LP steps.

•Can compute reasonably large problems.

•The incidence matrix of the reversed net N~'^ of a given PN N is given by - a =

a~ — a'^, where the incidence matrix of N = (P, T,a'^,a~) is a = a'^ — a~. Therefore,

Ar-i = (P , r , a - , a+ ) .

The method is stated next (the derivation is not shown):

For A; = 1,2, • • •, d, find the optimum firing sequence {u*{k)} such that, k = ( d - j + l)

and for 7 = 1,2,... ,d

J * ( a ; ( d - j ) , d - j + l)

= f, ""!" , , , [ - e * W d - j + l ) - a n ( d - j + l)} u{d — J + 1) € c/

+r{x(d - J + 1), d - i + 2) + £y,'(d - j + 1)

+y^(d-j + l)-sJ2si{d-j + l)], (3.4) i=l

subject to:

33

Page 46: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

^mxm Imxm OmxX Omxn

^mxl Oixm hxl Olxn

^ Onxm OnxX Inxn

u{d - j + 1)

vHd-j + i)

V\d-j + l)

s(d -j + 1)

Au{d -j-\-l)

hxl

x{d)-aY:ff,u*{d-j-^l)

(3.5)

where for j = 2,3, • • •, d,

A u ( d - j + 1) = Au{d-j + 2)-u*(d-j + 2)

x(d - j + 1) = x{d - j + 2) - au*{d -j + 2)

and for j = 1 Au(d) = •u,x(d)and d are fixed. } (3-6)

Note that J*{x(d), d -f 1) = 0, and

x{0) = x{l) — au{l) is also fixed.

The initial value of the objective function J*(x(d—j), d—j-Hl) which is J*(x(d), d-l-

1) is 0 right at the beginning. Once values of the global optimal firing vector u*{d —

j + 1), artificial variables y^{d—j + l), j/^(d—j + l), and the slack variables s(d—j-l-1)

have been decided from the solution of LP at some iteration j , the objective function

J*(x(d — j),d — j + 1) is also computed which becomes a constant for the following

iteration. The normalized set of constraints is of the form, Ax = b. In this set of

constraints, the column matrix ((m + n -\- 1) x 1 matrix) b is updated after each

iteration. The first m elements of the vector b (i.e., from 62-i-m upto bm+n+i) is the

marking x(d) — oZ)j=i u'{d — j + 1). Therefore, after each iteration, these elements

of vector b except bm+i are recomputed. Thus, the basic DP technique is included in

34

Page 47: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

the LP formulations. That is why the method is called DP-fLP method in [44].

-A set of characteristics of the DP-I-LP method has been described in the introduc­

tory part of section 3.3. This description is based on the computational characteristics

of the method. But some of the characteristics outlined in the following describe the

significance of each and every term used in the DP-based LP method.

1. The global optimal firing vector u*(d-j-I-1) has been solved in the form of integer

solutions by using LP.

2. The number of the unknown variables for the DP+LP method is (2m -f n -|-1) and

the number of constraint equations are (m -I- n -I-1).

3. There is absolutely no non-linearity in the formulations which obey the precondi­

tions of the LP formulations.

4. The fourth term y^(d — j + l) on the right-hand side of the objective function must

be zero for all values of j . And the third term's y^{d — j + 1) is non-zero in general,

but if j = d, then y^{d — j + 1) must be zero. These facts have effectively been used

in each iteration of the DP-f LP method.

5. The fifth term on the right-hand side of the objective function is to select the

basic variables for all slack variables. Also e is a very small quantity which is always

positive.

6. If j = d then Au(l) = u(l) and if j = d then x{d — j)=x{d — j + 1) — au{d — j + 1)

must be x(0). These conditions are important for applying the method.

7. The optimal locus of the states {x*(A;)} for A; = 0 , 1 , . . . , d can be found easily, by

substituting the sequence of the optimal firing vectors {u*(d—j+l)} for j = 1,2,..., d

in the equation of states for PNs.

8. The computation starts from the final marking x(d) and proceeds, it may enter

into the deadlock by reaching a practically unreachable marking (dead marking). The

proposed DP algorithm uses the optimization principle on the backward direction for

35

Page 48: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

the computations. Therefore, the algorithm selects that particular enabled transition

as the firing transition t, from the set of the enabled transitions {t^} at the kth firing

for which the transfer of tokens is maximum in terms of the reversed net N~^. But

there may be multiple t^s in the set {t^} for which the total transfer of tokens are

exactly the same and at a maximum. In that case, the algorithm usually picks up the

first such enabled transition from the set as the firing transition and it is probable

that the computation is deadlocked instead of reaching the initial marking x(0).

-Applying DP-based LP, the number of unknown variables becomes about | of

that using LP directly [18]. The method to overcome the memory problem due to DP

using DP-based LP is discussed in [44]. Note that a problem size not only depends

on the total number of places n and the total number of transitions m but also on d,

the length of the LFS. Therefore, the size of a problem may be large for a longer d

even if the size of the PN is small.

3.4 Previous Work on Pontryagin's Minimum Principle-Based LP Method

In order to avoid the firing of sink transition of a critical siphon as with the DP-

based LP method, a new method based on the Minimum Principle of Pontryagin

(PMP) has been discussed in [46]. The Hamiltonian function H to be described later,

is related to the PN reachability problem with prespecified u and d. Discrete Time

Pontryagin's Minimum Principle (DTPMP) is derived based on the following set of

assumptions:

Condition (1): The matrices fx{x{k), u{k)) are non-singular for alU = 0 , 1 , . . . , (d-1).

Condition (2): The set w(x{k))= {{l{x{k),u{k)), f(x{k),u{k)y) : u(k) G U} is closed

and 2-directionally convex for every x{k). Here the superscript t denotes transpose.

Condition (3): The matrices f^(x{k),u{k)) are ^-directional matrices for all time

A;=0 , l , . . . , (d -1 ) .

36

Page 49: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

With proper selection of the adjoint coefficient values, the method can avoid fir­

ings of the sink transitions of critical siphons. Salient points regarding this method

are:

•It is particularly suitable for optimal control problems.

•Sometimes, the method is also referred to as the Prediction method, since it can pre­

dict computational deadlocks ahead. Due to this special property of the PMP-l-LP

method, a heuristic algorithm has been designed to automatically avoid the firing of

the sink transition of a critical siphon.

•DTPMP states that an optimal firing vector must minimize the Hamiltonian func­

tion H [35].

•The objective function J, the Hamiltonian function and the adjoint equations are

given in the following (the derivations are not shown):

J =J:tlKxik),u{k)) =EtJoei,,{x(k) + au(k)}. (3.7)

From the basic objective of PN reachability problems with known u and d,

lix(k),u(k)) = ei^^{x{k) + au{k)}.

H{X{k + l),x{k), u{k)) = {X{k + 1)* + A„e*„ J{x(/c) + au{k)}. (3-8)

X{ky = \{k + l)' + Xoeixi,

A(d) = XoCnxX-

(3.9)

37

Page 50: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

•The following are the necessary equations for the PMP-I-LP method.

x{k + 1) = f{x{k), u{k)) {system equation), (3.10)

x(0) = Xo {initial state condition), (3.11)

Xi{d) = Xdi, z = 1,2,..., n {terminal state conditions), (3.12)

X{ky = X{k + l)'f.{x{k), u{k)) + XoUx{k), u{k))

{adjoint equation), (3.13)

Xi{d) = Xoi)^{x{d))\, i = l,2,...,n

{adjoint final condition), (3.14)

For all k, k = 0,1,2,... ,{d-1), and u{k) e U,

H{X{k + l),x{k),u{k)) < H{X{k + l),x{k), v{k)),

or, H{X{k + l),x{k),u{k)) (minimum condition), (3.15)

where H is the Hamiltonian function,

H{X{k + l),x{k),u{k)) = X{k + lYf{x{k),u{k))

+Xol{x{k),u{k)). (3.16)

In the standard LP form, an optimal LFS {u{k)} corresponding to k=0,1, •• •, (d—1)

is computed like the following, where e is a positive and small quantity.

, ,T!! TM^(^ + 1) + Vnxi}*{a;(A;) + au{k)} U[K) € U

m n

+j:ylik) + y'i^)-'E'^ik)], (3.17) 2=1 i = l

38

Page 51: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

subject to:

^mxm Imxm Gmx\ Omxn

^mxX Oixm hxl Olxn

^ '^nxm Gnxl Inxn

u{k)

y'{k)

y'{k)

s{k)

Au{k)

hxl

m + aE'zlu{j)

(3.18)

Au{0) = u,

Au{k) = Au{k-l)-u{k-l). (3.19)

(3.20) A(A;) = X{k + l) + Xoenxi,

A(d) - AoC„xi. J

In the LP formulations, x(0) is the initial marking and x(d) is the destination

marking. The element AQ is a constant and is equal to 1.

3.4.1 Salient Points of PMP-based LP Method

The salient points regarding the PMP-based LP method which is referred to as the

PMP-hLP method in [46] follows:

1. The PMP-based LP method is an approximation algorithm in the sense that the

computation of a LFS is based on the assumption that close fractional solution

values are approximated to the nearest integer values and the solution computed

is not always optimal. This means that sometimes near optimal solution values

are obtained.

2. The first term {X{k + l)Y{x{k) + au{k)} of equation (3.17) is meant for the

minimization of moving tokens at the kth firing with a weight of A (A; -I-1). The

39

Page 52: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Hamiltonian H appears in the objective function of LP for minimization at each

firing instance k, since it is necessary for the minimum principle of Pontryagin

that the Hamiltonian be minimized at each firing instance.

3. The problem has been solved using DP and the objective function is given by a

recursive formulation mentioned at each firing instance k without A(A; -I-1). In

fact, the adjoint coefficients X{k + 1) carry out the corresponding functionality

for this method.

4. Finding a LFS using this method means computing an optimal firing sequence

{u{k)] corresponding to the optimal LFS a which is an all integer LP problem.

This is a relaxed problem, since the directional convexity under conditions 1, 2

and 3 are considered for global optimality.

5. The relaxed problem is identical to the original problem except that the z-

directional convexity is needed for global optimality.

6. Time complexity at a sub-problem stage using the PMP-based LP is polynomial.

The time complexity of the simplex algorithm is polynomial, whereas it behaves

linearly in practice [9]. If a complete problem consisting of d sub-problem stages

is solved, then it is solvable with semi-polynomial-time-complexity.

7. Since the method ensures that the state path {x{k)} and the control path

{u{k)], k = 0 , 1 , . . . , (d — 1) is linear, it is guaranteed that the chosen firing

vector is feasible.

8. The importance of Pontryagin's discrete time minimum principle in connection

to the PMP-based LP method is that it enables one to handle variational prob­

lems with constraints of boundedness in the firing vectors, where the classical

calculus of variation no longer apphes. Here, the principle is extended for the

40

Page 53: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

reachability problem with known u and d where the state variables are subjected

to inequality constraint also.

9. The method shows good computational performance in GPNs containing sym­

metric confusions at x(0) [51].

10. The convexity assumptions which are based on the 2-directional convexity are

used with the method to ensure uniqueness of the minimizing firing vectors.

11. ^-directional convexity has been introduced to extend the applicability of the

results, specifically, results on the optimal control of discrete time event sys­

tems having a basic discrete time characteristics. These are systems described

by difference equations, such as the PMP-l-LP method applied to the decision

problem of finding one LFS of PNs. Regular convexity assumptions are always

justified in case of a system of difference equations approximating a system of

differential equations or for a system described by differential equations. These

assumptions are not always justified in case of a system of difference equations

describing a control process which is basically discrete.

Example 3.4.1

As an example, consider the PN in Figure 3.1.

•For the net in Figure 3.1, x(0) = [0,0,0,0,1,0,1,0,0]* = x(d).

Also u = [1,1,1, 2,2,1,1,1,1,1,1,1]* and d = 14.

•A computed LFS for the example net is,

cr = {til, ho, ti2, ii, h, t&,tQ, ts, t4, ts, ti, t4, ts, te).

•The computed A(d) value is

A*(d)=[20.0, 1.0, 25.0, 1.0, -7.0, 1.0, 1.0, 1.0, 1.0].

41

Page 54: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Figure 3.1: An example PN for computing a LFS using the PMP-based LP method.

•This is an example of T-invariance since. Ax = x(d) — x(0) = 0 (the initial and the

final markings are the same even though there are transition firings in the net). This

Ax includes other T-invariants as sub-problems within itself

42

Page 55: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 4

STRUCTURAL AND BEHAVIORAL PROPERTIES

Structural and behavioral characterization is important in connection to deadlock

detection and analysis in PN models. Algorithms are developed based on structural

and behavioural properties of PNs which can avoid computational deadlocks in PN

models of systems.

4.1 On Siphons and Traps

Siphons and traps play major roles in computing optimal LFSs in PN models of

concurrent systems. During computations of LFSs in PNs, the following are the types

of siphons frequently encountered.

4.1.1 Closed-Loop Siphon

Closed-loop siphons are commonly encountered during computations. For closed-

loop siphons, all places in the siphon belong to a closed-loop. Figure 4.1(a) is an

example of a closed-loop siphon. The set of places {pi,P2,P3,P4,P5} constitutes

a siphon with te as a sink transition. Since, '{pi,P2,Pz,P4,P5} = Os, ^1, 2, is, ^4}

and {pi,P2,P3,P4,P5V = {h,t6,t2,t3,t4,t5}. Therefore, (f> C •{pi,P2,P3,P4,P5} Q

{Pi,P2,P3,P4,P5}* and the set of places {pi,P2,P3,P4,P5} satisfies the definition of a

siphon. A\sopi,ti,p2,t2,P3,t3,P4,t4,P5,'t5,Pi form a closcd-path in the slphou. Hence

{Pi,P2,P3,P4,P5} is a closed-loop siphon.

43

Page 56: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

(a) Closed-loop Siphon.

0^ (b) AcycUc Siphon.

(c) Semicyclic Siphon.

Figure 4.1: Three most common types of siphons.

4.1.2 Acychc Siphon

Consider the set of places {pi}. The set of transitions *{pi} = (j), {pi}* — {ti}.

Therefore, <j) C *{pi} C {pi}* and {pi} is a siphon. Similarly, {pi,P2}, {pi,P2,P3},

{Pi,P2,P3,P4} and {pi,P2,Pz,P4,Pb} are siphons. All these are examples of acyclic

siphons. For these siphons, the reachability criteria is well-defined and well-known.

Figure 4.1(b) is an example of acyclic siphons.

44

Page 57: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

4.1.3 Semi-Cyclic Siphon

For semi-cyclic siphons, all places do not belong to a closed-loop. Some places are

within a closed-loop and some are not. Consider the net in Figure 4.1(c). The set of

places {p4,P3,P2,Pi} constitutes a siphon, since •{p4,P3,P2,Pi} = {t4,t2,ti,t3} and

{P4,P3,P2,Pi}* = {U,h,t2,t5,ti}. Therefore, ^ C •{p4,P3,P2,Pi} C {p4,P3,P2,Pi}*.

Hence {p4,P3,p2,Pi} is a semi-cyclic siphon.

The following are the three most commonly encountered traps during computa­

tions:

4.1.4 Closed-Loop Traps

Closed-loop traps are the most frequently encountered traps during computations.

Consider the trap in Figure 4.2(a). The set of places {pi,P2,P3,P4,P5} forms a closed-

loop trap. Since *{Pi,P2,P3,P4,P5} = {t6,h,'t2,'t3,U,'t5} and {pi,P2,P3,P4,P5}' =

{ti,t2,t3,t4,ts}. Therefore, (f) C {pi,P2,P3,P4,P5}* Q '{Pi,P2,P3,P4,P5}- Hence, the

set of places {pi,P2,P3,P4,P5} forms a trap and pi,ti,p2,t2,P3,t3,P4,i4,P5,*5,Pi is a

closed-loop.

4.1.5 -Acyclic Trap

A trap may be acyclic. Consider the trap in Figure 4.2(b). For the set of places

{Pi,P2,P3,P4,P5}, the set of input transitions is •{pi,P2,P3,P4,P5} ={h,h,t3,t4,'t5},

the set of output transitions is {pi,P2,P3,P4,P5}*={i2,i3,i4,*5}. Therefore , (j) C

{Pi,P2,P3,P4,P5}* Q '{PUP2,P3,PA,P5}- Hcnce, {pi,P2,P3,P4,P5} is an acyclic trap.

45

Page 58: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

(a) Closed-loop Trap.

0-( )—Q-Ri ft a

(b) Acyclic Trap.

(c) Semicyclic Trap.

Figure 4.2: Three types of traps occurring frequently during computations.

4.1.6 Semi-Cyclic Trap

In a semi-cyclic trap, all places do not belong to a closed-loop. Sometimes this

sort of traps appear during computations. Consider Figure 4.2(c), the set of places

{Pi, P2, P3, P4} forms a trap, since •{pi,p2,P3,P4 } = {h,h,t3,U,h,t6} ^T^d {pi,p2,P3,P4}'

={t2,t3,t4,t5}- Therefore (j) C {pi,P2,P3,P4}* ^ '{Pi,P2,P3,P4} and the set of places

{Pi,P2,P3,P4} forms a trap. But only the set of places {ps,P4} belongs to a closed-

loop. Therefore, Figure 4.2 (c) is an example of semi-cyclic trap. All the siphons and

traps considered in this discussion are structural siphons and structural traps.

46

Page 59: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Figure 4.3: Structure of siphons and traps in GPNs.

Figure 4.3 shows a typical structure of siphons and traps in PNs. Consider the

structure of a siphon with a given firing count vector u. It is possible to consider

only the firing count subnet {Nu,Xu{0)) and hence the initial marking is of prime

importance which emphasizes the marking of the siphon at the A; = 0 firing instance.

Let Ns = {Ps, Ts, a^, as) be a siphon with pi G Ps and i = 1,2,.. .,v. For Ns to be

a siphon at the A;th firing, if t, e 'pj for some Pj € Ps, then t, G p', where pi € Ps-

The number of firings Xg{k) corresponding to the transition t, in the effective firing

count vector u{k) is not zero, i.e., Xq{k) 7 0 as ^ C *Ps C P | . For Ns to be a siphon,

there must be at least one Xi{k) such that Xi{k) > 0 with pi G Ps and i = 1,2,.. .,v

at the A;th firing. Now if t G p ' for some Pz G Ps and t ^ 'Pi, i = 1,2,... ,v, then

the number of firings Xz{k) > 0 as (f> C 'Ps C Pg. If the siphon Ns is such that

the number of total tokens within Ns at the ^;th firing = Ei=i"i = ' z = w{pz,tz)

47

Page 60: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

= the weight of the arc from p^ to t^, then the only token in the siphon exists at Pz

and at the A;th firing. At this firing instance, if tz fires, it results in a Ns which is

token-free starting at the (A; -t- l)th firing provided some number of firings Xi{l) > 0,

1 < i < V with (A; -I- 1) < / < ( d - 1 ) . Then the computation is deadlocked at

a later firing instance y with (A; -I- 1) < y < d. But if n^ > w{pz,tz), then the

difference of tokens [n^ - w{p,,t,)] is a positive integer and the siphon Ns may or

may not be critical at the A;th firing. For a general PN, the weight w{pz,tz) = 1

and the token difference is [n^ — 1]. To avoid deadlock at a later firing instance y,

{nz - 1) > w{pz,tz) with a t" G 'Pz for Pz G Ps and tz G p* with pz G Ps, where

X:{1) > 0 with (A;-fl) < Z < (d— 1). An elementary siphon is a single place with only

one sink transition. Next consider the firing of transitions Ts QTs, such that tj ^Ts.

Therefore, tj G *Pj with pj G Ps and tj E Pj', pj G Ps and j = 1,2,... ,e. From this

a property is derived about a siphon Ns that a single token at some place p G Ps is

necessary, even though not sufficient for firing all the tj G Ts with j = 1,2,..., e.

On the other hand, once a trap is marked at some firing instance A;, it never

looses tokens completely starting from the next firing instance. Thus, traps have the

property of trapping tokens.

The following results form a theoretical foundation for finding a LFS from a given

initial marking x(0) to a destination marking x(d) with a given firing count vector u.

Lemma 4.1.1

The siphon Ns = {Ps,Ts,a's,as) in a GPN N should contain at least one token

to fire transitions tj G Ts which are members of the set of transitions of the siphon

A''5 for J = 1,2,..., s. This is just a necessary condition but not sufficient.

Proof: First consider the initial part of Lemma 4.1.1. The siphon Ns cannot contain

any source transition, since 4> C *Ps C P^. Therefore, the siphon Ns cannot have

any supplier of tokens. If all the places of Ns are token-free at the initial marking

48

Page 61: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

x(0), then starting from the A; = 0th firing, there are no tokens and no supply of

tokens to any of the places of Ps at any time A;, A; = 0 , 1 , . . . , d. Therefore, tj G Ts for

;' = 1,2,..., s which are members of the effective firing count vector j | u{k) \\ cannot

fire forever starting from the beginning at firing A; = 0. This means that ultimately

the computations are deadlocked at some firing instance q, with 0 < q < d. Therefore,

to realize a LFS corresponding to the firing count vector w in a GPN, there should be

at least one token present in any place of a siphon starting from the firing instance

A; = 0.

On the other hand, this is just a necessary condition, but not sufficient. Because,

some transitions tj G Ts fori = 1,2, ...,g might have incoming arcs from places

which are not members of the siphon under consideration. In that case, if some

of these nonmember places are token-free at the time when the transitions ti G Ts

for i = 1,2,... ,^ should fire in the legal firing sequence, then some of these later

transitions ti G T5 for z = 1, 2 , . . . ,^ would be deadlocked and the firing sequence a

which is legal on x(0) with respect to u is far from realization.

Q.E.D.

Example 4.1.1

Consider the net in Figure 4.3, if there is a token at the place p4 of the siphon

{Pi,P5,P4,P3,P2}, and no token in the net elsewhere, then only ts fires at x(0) and

ultimately t4 cannot fire due to the absence of token at pe. Hence, for a given firing

count vector u = [1,1,1,1,1,0,0,0,0,0,0,0]*, the computations are sure to be dead­

locked, even though the siphon {pi,P5,P4,P3,P2} contains a token. Therefore, Lemma

4.1.1 imposes only a necessary condition but it is not sufficient.

49

Page 62: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Lemma 4.1.2

Given a trap NT = (Pr,Tr,aj;,o^) in a GPN A , which is token-free at the initial

marking x(0) but is marked at the terminal marking x(d) with a prespecified firing

count vector u and the total firing instances d, then the trap NT has at least one source

transition, whose firing is absolutely necessary prior to the firing of any transition tc

such that tc G TT Cli'Pr f) P-r) in order to realize the firing of Ty.

Proof: Since a given trap NT should be within the firing count subnet (Nu, 3: (0)) for

a prespecified u and d, therefore, for all t , i = 1,2,..., r, if ti G TT, then ti GJj u ||.

-As the trap is unmarked at x(0), therefore, any place Pj G PT is token-free at x(0).

As any pi €'ti with t/ G TT must have at least one token to enable t/, therefore none

of the transitions tc G TT []{'PT f) PT) are enabled. Source transitions supply tokens

within the trap NT by firing. As for a source transition tx to the trap NT, t^ G *Px

for some Px G PT and tx ^ pj for any Px e PT- A place Px and a place Px may be the

same or different but both have to be within the trap NT- Hence firing tx at least

once provides a token to a place px G PT- As only GPNs are under considerations,

this is absolutely necessary for firing any transition tc G TT [){'PT f) PT) within the

trap PT at a later firing instance q with (A; -I-1) < g < (d - 1).

Q.E.D.

Lemma 4.1.3

.An effective siphon NST = (Psr ,TsT,4r ,%T) ' which is also a trap on {N,x{0)),

is marked at x(0) and is a place-invariant.

Proof Since, NST is a siphon and if a siphon is token-free at some marking, then

it remains token-free for the successive markings. As NST is an effective siphon at

x(0), it must be marked at x(0). Therefore, NST contains at least one token. Hence,

'PsT Q PsT^ i-e-' th^ set of input places is a proper subset of the set of output places.

From the given assumptions, NST is also a trap at x(0). Therefore, P^T ^ 'PST,

50

Page 63: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

consequently *PST = PST i-e., the set of input places = the set of output places.

If (aJr) is the output incidence matrix and (a^^)* is the input incidence matrix,

then (a^r)* x PST = 'PST and (ai-^)* x PST = P'ST which provides (ojj.)* x PST =

{^STY X PST- Therefore, (aj^^-a^^p)* x P^^ = Omxi- Here, O^xi is a (m x 1) column

vector with each element equal to 0. Hence, a^sT x PST = Omxi- Thus, NST satisfies

the definition of place-invariant.

Q.E.D.

Lemma 4.1.4

For finding a LFS a, each siphon within the firing count subnet (A „, x„(0)) of the

given PN (A'',x(0)) are all effective and should be marked at x(0), and all traps of

(A'u,Xu(d)) should be marked at x(d).

Proof: Firing of elements of a given firing count vector u must be realized in order

to find a LFS a, which is legal on x(0) with respect to u. But an unmarked siphon

remains unmarked from the successive marking. And transitions that are members

of the unmarked siphon are deadlocked. Thus, no effective siphon within the firing

count subnet {Nu,Xu{0)) may remain token-free at x(0). For computations using a

Reversed net (A''~'^,x(d)), the backward directional computation starts at x(d) and

all traps within the firing count subnet {Nu,Xu{d)) are siphons on {N~^,x{d)). There

does not exist a token-free siphon on the Reversed subnet {N~'^,Xu{d)) for finding

one LFS a. A trap does not contain a sink transition but can only contain source

transitions. Therefore, if a trap is unmarked at x(d), it was unmarked at x(0), since

no token-supplying source transition possibly has fired in this case. This means firing

of any ti e TT for i = 1,2,..., v is impossible, where TT is a set of transitions for the

trap under consideration. Therefore, token-free traps in {N,x{d)) is impossible.

Q.E.D.

51

Page 64: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Example 4.1.2

Consider Figure 4.3 once again. Let x(0) = [0,0,0,1,0,0,0,0,0,0,0]* and u =

[1,1,1,1,1,0,0,0,0,0,0,0]*. Since {pi,p2,p3,p4,p5,p6} = {pi,p2,p3,p4,p5}U{p6} and

one of the basic siphons {pe} within the firing count subnet {N^,Xu{0)) are un­

marked at x(0), a LFS corresponding to u is impossible, even though the siphons

{Pi.P2,P3,P4,P5} and {pi,P2,P3,P4,P5,P6} are marked at x(0).

Consider now a final marking x(d) = [0,0,0,0,0,0,0,0,1,0,0]* with a prespecified

firing count vector u = [0,0,0,0,0,1,1,0,0,0,0,0]*. The traps {p7,p8,p9} and {p7,p9}

are marked at x(d), but {p7,P8,P9} = {P7,P9}U{P8} and one of the basic traps {ps}

within the firing count subnet (A'u,x„(d)) is unmarked at x(d). Therefore, with the

given firing count vector u and a final marking x(d), there is no initial marking x(0)

for which the net is reachable from x(0) to x(d).

Lemma 4.1.5

In a given PN N, any minimal siphon is a basic siphon, but the opposite of this

statement is not always true.

Proof: Consider one minimal siphon Ajvf and the corresponding basic siphon NB-

From the basic definition, a siphon is a minimal siphon if other siphons are not its

partial set [51]. A siphon is called a basic siphon, if the siphon cannot be expressed

as the set union of other siphons. Since NM is a minimal siphon and NB is the

corresponding basic siphon, the next relationship holds:

NM C NB (4.1)

But

NB % NM (4.2)

The above is a straightforward equation from the definition of NM- Hence, the result

follows immediately.

Q.E.D.

52

Page 65: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

4.2 Liveness Properties

Definition 4.2.1

Liveness of PNs: A PN {N,x{0)) is said to be live [51] (or equivalently x(0) is said

to be a live marking for A ) if, no matter what marking has been reached from x(0),

it is possible to ultimately fire any transition of the net by progressing through some

further firing sequence. -A five PN always guarantees a deadlock-free operation, no

matter what firing sequence is chosen. This property of PNs is known as liveness.

There are different levels of liveness for the reachability problems:

Level 0 live (dead):

A transition t in a PN (A'',x(0)) is said to be Level 0 live (LO-live) or a dead

transition if t can never be fired in any firing sequence in L(x(0)). Here, L{x{0))

denotes the set of all possible firing sequences from x(0) in a given PN (A'',x(0)).

The PN {N,x{0)) is said to be a Level 0 live or a dead PN if each and every

transition in it is dead.

Level 1 live (potentially firable):

If a transition t in a given PN (A ,3;(0)) can be fired at least once in some firing

sequence in L{x{0)), then it is said to be a Level 1 live (Ll-live) or potentially

firable transition. The PN {N,x{0)) is Level 1 five if each and every transition

in it is Level 1 live.

Level 2 live:

If a transition t in a given PN (iV,x(0)) can be fired at least k times in some

firing sequence in L{x{0)), where k is any positive integer, then t is said to be

a Level 2 live (L2-Iive) transition. {N,x{0)) is Level 2 live, if every transition in

it is Level 2 live.

53

Page 66: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Level 3 live:

If a transition t in a PN (A ,a;(0)) appears infinitely, often in some firing sequence

in L{x{0)), then it is said to be a Level 3 live (L3-live) transition. The PN A

with the initial marking (A , x(0)) is Level 3 live if each and every transition in

it is Level 3 live.

Level 4 five (live):

If a transition t in a PN {N,x{0)) is Level 1 live for every marking x{j) in the

reachability set of (A , x(0)), then t is said to Level 4 live (L4-hve) or simply live.

Here, j is zero or a positive integer. In other other words, a live transition t can

potentially fire in any firing sequence reachable from any marking x{j), which is

potentially reachable from x(0). A PN {N, x(0)) is said to be Level 4 live or live,

if each and every transition in it is Level 4 live. Therefore, the computations in

a live PN is never deadlocked due to the presence of live transitions in it. <C>

Liveness properties of PNs are closely related to resource issues in a net model. A

general notation to represent Uveness is Lk, where A; = 0,1, 2,3,4. L4-liveness implies

L3-liveness and L3-liveness implies L2-liveness. L2-liveness also implies Ll-liveness.

But Ll-liveness does not imply LO-liveness. Therefore, a L4-live PN is L3-live, L2-live

and Ll-live but not LO-live. A transition is said to be strictly LA;-live, if it is LA;-live

but not L(A; + l)-live. A; = 1,2,3.

Lemma 4.2.1

In a given PN A'' with a firing count vector u = [ui] with each Ui, i = 1,2,.. .,m

denoting the total number of firings of a transition tj, an initial marking x(0) and a

final marking x(d), there is a LFS a, provided that (A'',x(0)) and {N~'^,x{d)) are at

least level 1 live under x(0) and x(d), respectively.

Proof If (A'',x(0)) and (A''"\x(d)) are Level 0 live under x(0) and x(d) respectively,

then the computations are deadlocked under the original or the reversed PN right

54

Page 67: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

from the beginning, and the firing sequence o which is legal on x(0) with respect to

u can not be realized.

Q.E.D.

A close analysis of Lemma 4.1.1, gives the next result.

Lemma 4.2.2

For a given PN A', a firing count vector u = \uf\ with each component Ui, % =

1,2,..., m denoting total number of firings of the i-th transition ti, an initial marking

x(0) and a final marking x(d), the final marking x(d) is reachable from x(0) provided

that the following conditions are satisfied.

1. The firing count subnet with x(0) (A''„,x„(0)) has no token-free basic siphons,

and

2. The firing count subnet with x(d) (A'u,x„(d)) has no token-free basic traps.

Proof:

1. From the basic definition, a basic siphon [51] is a siphon which cannot be ex­

pressed as the set union of other siphons. If this is the case, then every possible

siphons are marked at x(0) within the firing count subnet {Nu, x^iO)) and there

is no token-free effective siphon in the firing count subnet. The result follows

applying the first part of Lemma 4.2.1 directly.

2. From the elementary definition, a basic trap is a trap which cannot be expressed

as the set union of other traps. If this condition prevails within the firing count

subnet on x(d), then the condition imposed by the latter part of Lemma 4.2.1

applies directly and the result follows from there.

Q.E.D.

55

Page 68: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Lemma 4.2.3

For finding a LFS a which is legal on x(0) with respect to u, the firing count subnet

(N„,Xu(0)) is not live at x(0) provided that there is a critical siphon at x(A;) within

the firing count subnet A/u for 0 < A; < (d - 1). But there does not exist a critical

siphon at x(A;) not necessarily implies that (Nu,x„(0)) is always Level 4 live at x(0).

Proof: From the basic definition of a critical siphon, if there is a critical siphon at

some marking x{k) within the firing count subnet A „, where 0 < A; < (d - 1), then

the sink transition t, of a critical siphon and some other transition tj, G|| u{k) \\, must

be enabled at x(A;), where || u{k) \\ are non-zero elements of u at the A;th firing. If the

sink transition tg is allowed to fire at x(A;), clearly the computations are deadlocked

at a later firing instance j , {k + 1) < j < {d- 1). Hence, (A4, Xu(0)) can not be level

4 live at x(0).

On the other hand, if {Nu,Xu{0)) is not level 4 live at x(0) does not imply that

there is at least one critical siphon at some marking x(A;), with 0 < A; < (d — 1).

-All siphons within the initial firing count subnet (A/u,x„(0)) are effective and not

necessarily critical at x(A;). For instance, with a prespecified x(0),x(d) and u for an

Acyclic PN, the net is not generally live for the given problem and AcycUc PNs never

contain a critical siphon. Hence, there does not exist a critical siphon at x(A;) not

necessarily implies that {Ny,,Xy,{0)) is always level 4 live at x(0).

Q.E.D.

56

Page 69: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 5

A SINGLE-STEP LINEAR PROGRAMMING-BASED METHOD

5.1 From the Basic Reachability Equation to the Single-Step LP Method

Mathematical programming techniques are powerful techniques of optimization. If

the PN reachability problem can be formulated as a LP problem which computes

all the firing vectors in one LP step, it is possible to avoid spurious firing vectors.

Off-course, for such a formulation, the total transfer of tokens as a control objective

needs to be minimized. This is the basis of single-step LP method.

Finding LFSs of PNs is an all-integer-programming problem. But with the single-

step LP method, the firing vectors are allowed to have real numbers (even though

these are always integer quantities). Soving the reachability problem in this way is

called LP-relaxation. With LP-relaxation, it is not always guaranteed that integer

optimal results will be obtained.

The basic objective in finding a firing sequence a legal on x(0) with respect to u

is to minimize the quantity,

J = f : 4 , i x ( A ; ) . (5.1) fc=i

where e„xi is a n x 1 row vector having each element equal to 1 and e j i is the

transpose of Cnxi- Equation 6.1 can be expressed in terms of the initial marking x(0)

and the firing vectors u{k) for A; = 1,2,..., d using equation 2.13(a) as follows:

J = [e*(dx(0)) + e'a{u{d)) + e'a{2u{d -1)) + ... + e'a{du{l))\. (5.2)

Introducing artificial variables and slacks in the LP formulations, the general LP

form of equations (3.1) and (3.2) result.

57

Page 70: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

.All variables considered in the LP formulations must be non-negative. Other

notation and symbols are consistent with those in equations (2.12) and (2.13). The

total number NV of unknown variables is calculated as NV = {m + d+ (m + n) x d)

and the total number MV of the constraint equations is given as MV = {m+d+nxd),

where m = the total number of transitions and n = the total number of the places

in the PN. -Also d is the length of the optimal LFS. Note particularly that prior to

appl3'ing the two-phase simplex method, the LP formulations must be converted to

the restricted normal form and the dimension of the matrix A used for the Simplex

tableau should be at least {MV + 2) x (NV + 2) [58].

The LP formulation by equations (3.1) and (3.2) are particularly suited for the two-

phase simplex subroutine [58], but if the revised simplex package routine DLPRS [34]

is used, a simpler form of the Single-Step LP method without any slacks or artificials

variables is possible. This simpler form has only mxd variables with (m -f- d -I- n x d)

constraints.

5.2 Computational Mechanism

The following definitions are required in connection to the computational mecha­

nism of the Single-Step LP method.

Definition 5.2.1

Convex Set: A subset S of i?" is called convex [36] if for any two different points

a and b in S the line segment joining a and b Ues in S. That is, S is convex if,

whenever a and be S, so does c = ra + (1 - r)6, /or 0 < r < 1. Here P" denotes

the n-dimensional euclidean space. v

58

Page 71: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Definition 5.2.2

Convex Combination of Points: A point x G P" is a convex combination of the

points [36] Xi,X2,..., Xr in P" if there exist real numbers Ci, C2,..., c . which satisfy

T

E c i = l, (5.3) i=l

Ci > 0, 1 < i < r, (5.4)

can provide T

x = Yl'^i^i- (5.5) 1=1

Definition 5.2.3

Closed Convex Set: A closed convex set is a convex set which includes its bound­

aries [29]. For example, a circle and its interior is a closed convex set. The interior

of a circle is a convex set, but is not closed. ^

Definition 5.2.4

Extreme Point of a Convex Set: A point y in a convex set S is called an extreme

point of S if it is not an interior point of any line segment in S [36]. That is,

y is an extreme point of S if there are no distinct points a and 6 in 5 such that

y = Ta+{l-T)b,0<T<l. 0

The following results appear in [36] and can be used to analyze and interpret the

computational results based on the Single-Step LP based method.

Theorem 5.2.1

The intersection of a finite collection of convex sets is convex.

Theorem 5.2.2

Let A be an n x m matrix, and let 6 be a vector in P". The set of solutions to the

system of linear equations Ax = b, if it is not empty, is a convex set.

59

Page 72: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Theorem 5.2.3

The set of all convex combinations of a finite set of points in P" is a convex set.

Theorem 5.2.4

Let 5 be a convex set in P'^. A point y in 5 is an extreme point of S if and only if y

is not a convex combination of other points of S.

Theorem 5.2.5

Extreme Point Theorem: Let S be the set of feasible solutions to a general LP

problem.

1. If 5 is nonempty and bounded, then an optimal solution to the problem exists

and occurs at an extreme point.

2. If 5 is nonempty and not bounded and if an optimal solution to the problem

exists, then an optimal solution occurs at an extreme point.

3. If an optimal solution to the problem does not exist, then either S is empty or

S is unbounded.

Theorem 5.2.6

A LP problem in the standard form has a finite number of basic feasible solutions.

Theorem 5.2.7

For a LP problem in standard form, every basic feasible solution is an extreme point,

and, conversely, every extreme point is a basic feasible solution.

Theorem 5.2.8

Let S be the set of feasible solutions to a standard LP problem and let S be the set of

feasible solutions to the associated canonical LP problem. Then every extreme point

of S yields an extreme point of S when slack variables are added. Conversely, every

extreme point of S, when truncated, yields an extreme point of S.

60

Page 73: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Theorem 5.2.9

The convex set S of all feasible solutions to a LP problem in standard form has a

finite number of extreme points.

Single-step LP is a straightforward relaxed LP computational method. Extreme

points of convex polyhedrons are of interest as candidates for optimal solutions to

LP problems. There is a simplex in NV dimensions where A''^ = total number of

variables having a total of {NV+1) extreme points. Finding LFSs using single step LP

is one of the all-integer-programming-problems, and it is not guaranteed that integer

optimal results are alwav's obtained. But the necessary and sufficient conditions to

get an integer optimal result are known. Decision variables are allowed to be real

quantities and each of them is permitted to vary within the range 0 ~ 1. Therefore,

sometimes pseudo-solutions are obtained, which have fractional solution values and

are close to their actual solution values. It is a common practice to adjust such

solution values to their actual values.

Reasons behind obtaining pseudo-solutions are explained next.

s

Figure 5.1: A simplified geometrical entity generated in a 3-dimensional space.

61

Page 74: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Figure 5.1 presents the e.xtreme feasible solution points for a LP problem with three

variables. If solution vectors are bounded to take on discrete integer values, the

solurions are only obtainable at extreme points B, C, H, I, K, L, E or F. The objective

function can only take a minimum value at one of these corner points of the three

dimensional cube BCIHLKEF. On the other hand, if each element of the solution

vector is considered to vary within the range 0 ~ 1, then the objective function can

take minimum values at one of the extreme points A, G, M, H, B, X, V, L, F, W, S,

E, K, T, Q, D, J, R, C, I, 0, P, N, U. It may be the case that the objective function is

a minimum for a certain problem at an extreme point A which is close to the point B

where all its corresponding elements are integers. Then, the elements corresponding

to -A will be of very close values to the elements corresponding to the point B.

5.3 Spurious Firing Count Vectors

-Any given firing count vector Usp which contains integers, unfirable firing vectors or

for which the given reachability problem is not decidable, is known as spurious firing

count vector. If a given predefined firing count vector u^p contains a fractional or a

negative element, it will be called a spurious firing count vector. A spurious firing

count vector causes computations getting into deadlock.

Lemma 5.3.1

Let a firing count vector u-[ui], Ui,i = 1,2,.. .,m denote total firing numbers of

ti. If x(0) is the initial marking and x(d) a final marking, there is a LFS a which is

legal on x(0) with respect to u provided that {N,x{0)) and (A/-\x(d)) are at least

level-1 live under x(0) and x(d), respectively (refer to definition 4.2.1).

Proof: If (A ,2;(0)) and {N-\x{d)) are level-0 live under x(0) and x(d), respectively,

then the computations are deadlocked under the original or the reversed net right

from the beginning. Therefore, the firing sequence a which is legal on x(0) with

62

Page 75: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

respect to u becomes far from realizations.

Q.E.D.

5.4 Time Complexity

Recall from section 5.1 that the number of unknown variables NV = {m + d +

nx d + m X d) and the number of constraints MV = {m + d + n x d). Let F =

NV + MV = {m + d + nxd + mx d) + {m + d + nxd)-{2m + 2d + 2nxd + mx d).

Therefore, the time complexity of Single-Step LP is 0{hY), where h is a. constant

of proportionality. If the order of LP is 4, then the time complexity of the Single

step LP method is 0{hY)oc Y^. Therefore, Y^ = [2(m + d -I- n x d) + m x d]^ ~

[2{m + n + l)xdY^ 16d^(n + m + 1)\

5.5 Computation Time

An analysis for the two-phase simplex method is carried out in the following. In

this case, there is only one iteration of LP and the total size of the matrix A is

(Tn4-d- | -nxd)x(Tn-j-d-t-nxd-fmxd). If the consumed time is denoted by tojvE,

then

toNE ex {m + d + n X d) x {m + d + n x d + m x d). (5.6)

Introducing the constant of proportionality, the above equation is,

toNE = c[{m + d + nxd)x (m + d + nxd + mx d)]. (5.7)

Therefore, time per u{k), tuk is given by,

tuk = ^-^ = c(^ + l + n){m + d + nxd + mxd). (5.8) d d

For smaller PNs m ^ d, the above equation can be approximated by:

tuk^c{l + l + n){m + d + nd + md). (5.9)

63

Page 76: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

For a constant n, let c = c(2 -f n). Therefore,

tuk ~ c[m + d{l + n + m)] '^cm + d{c + nc + mc). (5.10)

For a particular net, cm and (c-I- nc-I- mc) are constants and these will depend

only on the values of d. Therefore, under ideal conditions, time per u{k) is directly

proportional to the total number of firings d.

Let E be the total number of arcs in a given PN A''. The total number of con­

straints MV = (m -I- d -1- n X d). The total number of variables NV = (m-l-d-i-nxd4-

mxd). The size of the matrix A, | A j= (m-f d-t-nxd) x (m-t-d-Fnxd-f mxd) . Let

g be the fraction or part of the incidence matrix a which is non-zero. The number of

non-zero elements in the incidence matrix a is, \ E \= g x n x m (for a general PN).

Therefore, the size of the PN = (^ x n x m H- n -I- m). The ratio of the size of the PN

to I -4 1=, qxnxm+n+m ' {m+d+nxd){m+d+nxd+mxd) '

Consider now the Single-Step LP which uses the revised simplex package routine

DLPRS. In this case, there is only one iteration of LP and the total size of the matrices

.4i and -42 is [(m + d) x md + nd x md]. If this time is denoted by tip, then

tip oc [(m -i- d) X md + ndx md]. (5-11)

Introducing the proportionality constant c,

*z,p = c[(m-l-d) X md-f-nd X md], (5.12)

If time per u{k) is T^p, then

TLP = -if = c[{m + d) X m + nmd] = d{cm + cnm) + err?. (5.13) d

For a particular PN, the parameters {cm + cnm) and cm"^ are constants and Tip

will depend only on the value of d. Under these conditions, time per u{k) is directly

proportional to the total number of firings d.

64

Page 77: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

For using the revised simplex DLPRS routine, the total size of the matrix | ^ | is

Ai -H .42=(m -F d-t- n X d) X m X d. Let 5 be the part of the incidence matrix a, which

is non-zero (ratio of non-zero elements to total number of elements). Therefore, the

number of non-zero elements in the incidence matrix a, | E |= p x n x m (for a GPN).

Hence, net size = g xnm + n + m. The ratio of net size to (Ai -I- Ao)= ,1^^^'^'^^^ .

Figure 5.2: A PN used with the Single-Step LP method.

5.6 Computational Aspects

Consider the net in Figure 5.2, with initial marking is x(0) = [1,0,0, 0,1]*, a final

marking is x(d) = [1,0,0,0,1]* with u = [1,1,1,1,1]* and d = 5. This is an example

of transition invariance. An optimal LFS obtained using the Single-Step LP method

is (7 = (ti,t2,t3,t4,t5) which is legal on x(0) with respect to u. Closed-loop siphons

{Pi,P2} and {p4,P5} never become token-free in the sequence, since there is no sink

transition. The only potential deadlock in the computation is obtained by firing the

sink transition ts of the siphon {ps,P4} at A; = 3 on x(2). This has been successfully

avoided through the computations.

Consider an ordinary PN containing self-loops as in Figure 6.3. In order to find a

LFS from x(0) = [1,0,1, 0]* to x(d) = [0,1,0,0]* with au = [l, 1,1,1,1]* and d = 5.

65

Page 78: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

=0-

Figure 5.3: An ordinary PN N with x(0).

-A LFS a exists from x(0) to x(d) and is obtained as a = (t4,t5,ti,t2,t3). If ts

is allowed to fire at A; = 1, then the problem becomes unreachable. Transition ts is

the sink transition of the siphon {pi,P2,P3,P4}. On the other hand, if transition ti is

allowed to fire either at instance A; = 1 or at A; = 2, the problem becomes unreachable.

Transition ti is the sink transition of the siphon {pi}.

66

Page 79: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 6

THE LP METHOD BASED ON THE OPTIMALITY PRINCIPLE

6.1 The Optimality Principle and LFSs in PNs

The Optimality Principle (OP) concept appears in the literature with a variety of

forms and formulations. The following is a formal definition of OP.

Definition 6.1.1

Optimality Principle(OP): -An optimal policy (defined later in connection to PNs) has

the property that whatever the initial state and initial decision are, the remaining

decisions must constitute an optimal policy with regard to the state resulting from

the first decision [35]. The property of an optimal policy is known as the Optimality

Principle. 0

In modeling with PNs, the initial marking x(0) corresponds to the initial state

and the initial firing vector u{0) is the initial decision. The objective is to find an

optimal LFS cr which is legal on x(0) with respect to the firing count vector u. LP

formulations, where the objective function is independent of the initial state x(0) and

the initial firing vector u{Q) are derived.

The term optimal control in connection to the LFSs of PNs means that discrete

event dynamic systems are controlled such that the minimum transfer of tokens as a

control objective in the corresponding PN models is satisfied. The time integral of

a function of the final state and the firing vectors are minimized, firing vectors are

restricted to a specified closed and bounded region.

67

Page 80: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

6.2 Description of the OP-Based LP Method

The total transfer of tokens in a given PN is expressed by,

d

J = Y.^'<J)- (6-1) 3 = 1

With the optimality constraints:

r = mm[e^,ix(l) 4- e^xi^(2) + . . . + el^^x{d)]. (6.2)

Hence,

J* = min[e^{x{d) - au{d - 1) - au{d - 2) - . . . - au{l)}

4-e*{x(d) - au{d - 1) - . . . - au{2)} + ... + e*{x(d) - au{d - 1)} + e*x(d)]. (6.3)

Equation (6.3) can be rewritten as:

r = min[e'{dx{d)} - e^a{{d - l)u{d - 1)} - e'a{{d - 2)u{d - 2)}

-e'a{{d - 3)u{d - 3)} - . . . - e*a{u(l)} - Oixm{u{0)}]. (6.4)

Now the marking vector x(d — 1) at A: = (d — 1) satisfies x(d — 1) > a~u{d — 1),

which provides x(d) — au(d—l) > a~u(d—1). Therefore, x(d) > ati(d—l)-l-a~'u(d—1)

which derives into x(d) > (a"*" — a~ + a~)u{d — 1). Finally,

a + u ( d - l ) <x(d). (6.5)

Also x(d - 2) > a~u{d - 2) provides x(d) - au{d - 1) - au{d - 2) > a'u{d - 2). The

simplified form is:

o u ( d - l ) + a + u ( d - 2 ) <x(d) . (6.6)

Proceeding this way, the following set of equations is obtained which defines the set

of constraints for the OP-based LP method.

au{d -1)+ au{d -2) + a'^u{d - 3) < x(d)

68

Page 81: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

au{d-l) + au{d-2) + ... + a-^u{0) < x{d). (6.7)

Introducing slacks and artificial variables and arranging in the standard LP form, an

optimal LFS {u*{k)}, k ^ 0,1,2,... ,{d-l) on an originally given net A is computed

as follows. If J* denotes the optimal objective function value, then:

J* = min[e*(dx(d)) - e'a{{d - l)u{d - 1)} - e'a{{d - 2)u{d - 2)} - . . .

-e*a{u(l)} + E£: y] + EU y] " ^ HU ^U ^^ (6-8)

subject to:

/ ' • TnXm -'^. xm

O l x m

Oixm e{^.^

'^IXm

^TriXm ^mXTn Omxi

O l x m O l x m hxl

Olxm Olxm Olxl

Olxm Olxm e J x m O l x m ••• O i x n

0- Onxm ' • • Onxm Onxm Onxl

"• 2 + . - • Onxm Onxm Onxl

^rnxn

Olxn •

Olxn •

Olxn •

*nXn

Ojixn

Omxn \

•• O l x n

•• O l x n

• O l x n

Onxn

Onxn

\

/u(d-l)\

u(d - 2)

"(0)

y'

y^

s i

=

/ U V

A x l

^ i x l

hxl

x{d)

x{d)

(6.9)

Onxm Onxl •• Onxn •• Inxn J \ S^ J \ x{d) J

In the standard LP form for the OP-based LP method, the initial marking x(0)

and also the initial firing vector u{0) is absent from the objective function. A simpli­

fied implementation of the OP-based LP method without using slacks and artificial

variables having only mxd variables and {m + d + n x d) constraints is possible,

provided that the revised simplex subroutine DLPRS is used instead of the two-phase

simplex subroutine.

Note that the initial marking x(0) and the initial firing vector u{0) are absent

from the objective function. The artificial variables y], i — 1, 2 , . . . , m and y|, k =

1,2,... ,d are used with the equality constraints, whereas the slack variables s^, k =

1,2,... ,d; j = 1,2,... ,n are used with the inequaUty constraints.

69

Page 82: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Lemma 6.2.1

The OP-based LP method computes an OLFS {u*{j)} for ; = 0,1,2, • • •, (d - 1)

in the reversed order of the original firing sequence.

Proof: Each firing vector u{k) for A: = 0,1,2,-• •, (d - 1) should be a member of

the set U of firing vectors. Also note that the initial decision u{0) is totally absent

from the objective function. Also marking x(0) is completely absent from the set of

constraint equations. Hence, no initial state condition is used and only the terminal

state conditions are available. The solution vector determined with only one iteration

of LP is [u{d - 1)*, u{d - 2)*, • • •, u(0)*]* which is obtained in the reversed order of

computations of the optimal firing sequence {u*{j)} for j = 0,1,2, • • •, (d - 1).

Q.E.D.

Lemma 6.2.2

The OP-based LP method starts computing at x(d) on the original net A'" and

proceeds in the backward direction.

Proof: The LP formulation is derived by considering all the basic reachability equa­

tions on the original PN N and a'^u{k — 1) < x{k) for A; = 2 , 3 , . . . , d has been derived

from the equation x(A; — 1) > a~u{k — 1). Now, the condition x(d) > a'^u{d — 1) also

takes care off the non-empty place condition at x(d — 1). After firing the transition

enabled in marking x(d— 1), the token distribution vector is given by a'^u{d-1). The

vector a+«(d—1) considers token-free conditions at the marking x(d—1), since x(d—1)

can never contain negative elements, i.e., the condition x(d) > a'^u{d—l) is enough to

determine which transitions are enabled at x(d). Proceeding this way, the same rea­

soning holds for selecting u{k — 1) at each firing instance A;, with A; = 1, 2, • • •, (d — 1).

Also the initial state x(0) is completely absent from the formulation. Q.E.D.

70

Page 83: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Lemma 6.2.3

The OP-based LP method finds one OLFS a, which is legal on x(0), provided the

network is not too large.

Proof: The method chooses u{d - 1) as the firing transition at A; = (d - 1) for which

a possible firing vector u{d - 2) exists at A; = (d - 2) such that e^a{{d - l)u{d - 1)}

is a maximum. It selects the firing transition as u(d - 2) for which there exists one

u{d - 3) at the firing instance A; = (d - 3) and e^a{{d - 2)u{d - 2)} is a maximum.

Proceeding this way, it selects up to u(l). Since,

(d-1)

n(0) = ( u - Y. «(^))' (6-10) k=l

therefore, ii(0) depends completely on the right-hand side of equation 6.10. Once

YXZI '^(k) has been determined, u{0) is automatically fixed. Therefore, for (small)

reachabihty problems, the OP-based LP method finds one OLFS, a={u*{k)} for

A; = 0,1,2, • • •, (d — 1), provided there is one. For relatively large problems, a state-

space-explosion results, Q.E.D.

A simplified formulation and implementation of the method having only mxd

variables and (m-l-d+n x d) constraints are possible provided that the revised simplex

subroutine DLPRS [34] is used instead of the two-phase simplex subroutine [58].

6.3 The Objective Function

In the final objective function, the initial firing vector u{0) and the initial marking

x(0) are totally absent. This is a characteristic feature of the OP-based LP method.

Therefore, the objective function needs to be analyzed thoroughly. Since the optimal

objective function value J* is given by

J* = min[e\dx{d) - e*a{{d - l)u{d - 1)} - e*a{{d - 2)u{d - 2)}

-e'a{{d - 3)u{d - 3)} e'a{u{l)} - OixmMO)}]. (6.11)

71

Page 84: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

e*{dx(d)} is fixed and constant, since d and x(d) are completely defined at the begin­

ning of the computations. Therefore,

r = e*{(dx(d))} + min[-e'a{{d - l)u{d - 1)} - e'a{{d - 2)u{d - 2)}

-e'a{{d - 3)u{d - 3)} e'a{u{l)} - Oixm{u{0)}]. (6.12)

The above equation can be written as,

J* = e*{(dx(d))} + max[e'a{{d - l)u{d - 1)} + e*a{(d - 2)u{d - 2)}

+e'a{{d - 3)u{d - 3)} + • • • -t- e'a{u{l)} + Oixm{u{0)}]. (6.13)

Let J = J* - e*{dx(d)}. Therefore, the final objective function is given as follows:

J = max[e^a{{d - l)ii(d - 1)} -I- e^a{{d - 2)u{d - 2)}

+e'a{{d - 3)u{d - 3)} + • • • + e'a{u{l)} + Oixm{u{0)}]. (6.14)

and since:

x(l) =x(0) + a?x(0); (6.15)

the sequence of firing vectors {u{k)}, k = 1,2,3,- ••, (d—1) must constitute an optimal

firing sequence of length (d — 1) starting at x(l) as evidenced by equation 6.14.

Corollary 6.3.1

If the optimal LFS {u*{k)} for k = i,i + l, i+2, • • •, (d— 1) is an optimal solution to

the PN reachability problem with a prespecified u and d, then the sequence {u*{j)}

for jf = i + l,i + 2,- • • ,{d — 1) must constitute an optimal solution to the modified

problem induced by {x{i),u*{i)). Here, u*{0) is the initial decision and u*{d— 1) is

the final decision.

Proof: The method of induction is used to prove the corollary. Let i = (d — 1), and

r = {d — i). Therefore, A; = (d — 1) is the only choice and «*(d — 1) is an optimal

solution. Next take i = (d—2), therefore A; = (d—2), (d—1). Since by the postulation,

72

Page 85: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

u*{d - 2) is an optimal firing vector and also {u*{d - 2),u*{d - 1)} constitutes an

optimal solution to the problem, therefore u*{d-l) must be an optimal firing vector.

Hence, the corollary is true for i = {d - 1) and i = {d-2). But r = {d-i), hence

the corollary is also true for r = {d - (d - 1)) = 1 and r = (d - (d - 2)) = 2. If the

corollary is true for r = 1, then it is true for r = 2. As it is true for r = 2, therefore it

must be true for r = 3. Proceeding this way, it is possible to show that the corollary

is true for r = d.

Since r = d, therefore, d = (d - i) or i = 0. Hence, if {u*{k)} for k -

0,1,2, • • •, (d - 1) is an optimal solution to the given problem, then the sequence

{u*{j)}, j = 1, 2, •. •, (d - 1) must constitute an optimal solution to the modified

problem induced by (x(0), u*{0)). Q.E.D.

6.3.1 Set of Constraint Equations

The firing count vector u = Y1\.SQ u{k) is predefined and this information has been

used in the set of constraints for the LP formulation in finding an optimal LFS. At each

firing instance A: with 0 < A; < (d—1), only one transition element of the effective firing

count vector ii(k)=[u -YA=Q ^(0] is allowed to fire on the corresponding marking

x(A;). This fact is inserted in the set of constraints using Yl^i Ui{k) = 1.

The number of tokens at each place should be at least equal to the weight of the

outgoing arcs (if they exist) from the input places of the enabled transitions at any

firing instance k, where 0 < A; < (d — 1). This fact is used in the set of constraints

by inserting the relationship a~u{k) < x{k) for 0 < A; < (d - 1). It is used in the

normalized form using the state equation x{j) = x{j — l)+au{j—1) for 1 < j < (d—1),

which provides,

a-u{k)<x{k + l)-au{k), k = 0,1,2,-•• ,{d-1). (6.16)

73

Page 86: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Likewise,

a-u{k) < x{k + 3)- au{k + 2) - au{k + 1)- au{k). (6.17)

Proceeding this way,

a-u{k) < x(d) - a{u{d - 1)+u{d-2) + u{d-3) +• - - + u{k)}. (6.18)

Therefore,

a-u{k) + a{u{d - 1) + u{d - 2) + u{d - 3) + • • • + u{k)} < x{d). (6.19)

Hence, the general form of the above equation is

(d-1)

[a-u{k) + a ^ u{j)] < x(d), 0 < A; < (d - 1). (6.20) j=k

6.4 Optimal LFS in Ordinary Petri Nets Containing Self-loops

One advantage of the OP-based LP method is that ordinary PNs containing self-

loops can be treated equally well like the general PNs for the computations, in order

to find an optimal LFS while deciding the reachability in PNs. This is addressed

as one of the identified problems in the dissertation proposal. But the DP-based

techniques [44] do not have this computational advantage. The following definitions

are important in connection to the computational results to be discussed next.

Consider now the ordinary PN in Figure 6.3 containing self-loops for finding one

OLFS using the OP-based LP method from x(0) = [1,0,1,0]* to x(d) = [0,1,0,0]*

with u = [1,1,1,1,1]* and d = 5. For this case, m = 5 and n = 4. Therefore, to

apply OP-based LP, there will be (5 x 5 -I- 5 -I- 5 -f 4 x 5) = (35 H- 20) = 55 variables

(including slacks and artificial variables) and a total of (5 -f 5 -F 5 x 4)=30 constraint

equations. This is evident from equations (6.7). From equations (6.7):

/Sx5t'(4) + hx5u{3) + hxoU{2) + I5X5U{1) + I5x5u{0) + y'= u (6.21)

74

Page 87: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Since u = [1,1,1,1,1]*, therefore,

ui{4) + ui{3) + ui{2) + ui{l) + ui{0) + yl =

U2(4) + U2(3) + U2{2) + U2{1) + U2{0) + yl =

U3(4) + U3(3) + U3{2) + U3{1) + U3{0) + y^ =

Ui{4) + U4{3) + U4{2) + U4{1) + U4{0) + yl =

us(4) + U5{3) + U5{2) + U5(l) + U5{0) + yl =

ui{4) + U2(4) + lis (4) + Ui{4) + lis (4) + yf =

ui{3) + U2{3) + Us (3) + U4(3) + Us (3) + yj =

ui{2) + U2{2) + us(2) + U4(2) + U5(2) + yj =

Ui{l) + U2{1) + Us(l) + U4(l) + U5(l) + yj =

ui{0) + U2{0) + us(0) + U4(0) + us(0) + yl =

(6.22)

(6.23)

(6.24)

(6.25)

(6.26)

(6.27)

(6.28)

(6.29)

(6.30)

(6.31)

However, from equation (6.9),

4x5 X [ui(4),U2(4),Us(4),U4(4),'a5(4)]* + s i = x(5)

From the net in Figure 5.3,

a =

-1 0 0 0 (1 - 1 )

1 ( 1 - 1 ) 0 0 0

0 1 - 1 - 1 0

0 0 0 1 - 1

(6.32)

a+ is easily obtainable from a. Now,

Us (4) + sl = 0,

^i(4) + U2(4) + s^ = l ,

(6.33)

(6.34)

75

Page 88: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

ti2(4) + sj = 0, (6.35)

U4(4) + 4 = 0. (6.36)

Similarly,

-ui(4) + U5(3)-Fs? = 0, (6.37)

ui(4) + ui(3)+U2(3) + s = l, (6.38)

,2(4) - U3(4) - U4(4) + U2(3) + sl = 0, (6.39)

U4(4) - U5(4) + U4{3) + s = 0, (6.40)

-Ui(4)-Ui(3) + U5(2) + s? = 0, (6.41)

ui(4) + ui(3) + ui(2) + U2(2) +sl = l, (6.42)

U2(4) - Us(4) - U4(4) + U2(3) - Us(3) - U4(3) -f U2(2) -f s = 0, (6.43)

U4 (4) - Us (4) -f- U4 (3) - Us (3) + U4 (2) -f si = 0, (6.44)

-ui(4) - ui(3) - ui(2) + us(l) + s\ = 0, (6.45)

ui(4) + ui(3) + ui(2) + ui(l) + U2(l) + st = l, (6.46)

U2(4) - Us (4) - U4(4) + U2(3) - Us(3) - U4(3)

+U2(2) - U3(2) - U4(2) + U2(l) + s\ = 0, (6.47)

U4(4) - U5(4) + U4(3) - U5(3) + U4(2) - U5(2) + U4(l) + s\ = 0, (6.48)

-ui(4) - ui(3) - ui(2) - ui(l) + U5(0) + s? = 0, (6.49)

ui(4) + ui(3) + ui(2) + ui(l) + ui(0) + U2(0) + s| = 1, (6.50)

U2(4) - U3(4) - U4(4) + U2{3) - us(3) - U4(3) + U2(2)

-U3(2) - U4(2) + U2{1) - us(l) - U4{1) + U2{0) + s = 0, (6.51)

U4(4) - us(4) + U4(3) - us(3) + U4(2) - U5(2)

+U4(1) - U5(l) + U4(0) + s\ = 0. (6.52)

Equations (6.22)-(6.31) and (6.33)-(6.52) are the set of constraint equations. The

76

Page 89: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

solution obtained is, Ui(4) = U2(4) = U4(4) = 0, U3(4) = 1, U5(4) = 0, ui(3) =

^ 3(3) = U4(3) = U5(3) = 0, U2(3) = 1, ui(2) = 1, U2(2) = us(2) = U4(2) = us(2) = 0,

Ui(l) = U2(l) = U3{1) = U4(l) = 0, U5(l) = 1, Ui(0) = U2(0) = U3(0) = Us(0) = 0,

U4(0) = 1, yl = yl = yl = y] = yl = Q, y^ = yl = y | = y| = j / | = 0, s\ = 0, si = 1,

si = 0,s\ = 0, si = 0,sl = 0, si = 0, si = 0,5? = 0,sl = 0, sf = 0, 5| = 0, sj = 0,

si = 0, s | = 0, st = 0, sf = 1, s | = 0, si = 0, 5 = 0. Therefore, u(4) = [0,0,1,0,0]*,

u(3) = [0,1,0,0,0]*, u(2) = [1,0,0,0,0]*, u(l) = [0,0,0,0,1]* and u(0) = [0,0,0,1,0]*

and CT = (t4,t5,ti,t2,t3). The computed objective function value is

J* = mm[e*(5 x x(5)) - e*a{4 x u(4)} - e*a{3 x u(3)}

-e*a{2 X u(2)} - e*a{u(l)} + E y/ + E ?/? - ^ E E ^Pi- (6-53) 2=1 j i = l j=l i=l

With an e value of 0.000001,

j ; = 5 - (-4) - ( 3 ) - 0 - ( - l ) + 0 + 0 - 2 e = 9 - 3 + l - 0.000002 = 6.999999 « 7.00.

(6.54)

Agaiui

j ; = mm[e*^4x(l) + e*^4x(2) + e*^4x(3) + el^4x(4) + e*^4x(5)]. (6.55)

For this example, x(l) = [1,0,0,1]*, x(2) = [1,0,0,0]*, x(3) = [0,1,0,0]*, x(4) =

[0,1,1, 0]* and x(5) = [0,1,0,0]*. Hence,

j ; = (2 + 1 + 1 + 2 + 1) = 7 = j ; . (6.56)

The OP-based LP method computes an optimal LFS, a = (t4,ts,ti,t2,t3) which

is legal on x(0) with respect to u.

Note that the self-loop {pi} and also {pi,P2,P3,P4} are siphons whereas {p2} is

a trap on the original PN N. In Figure 5.3, ti, ts and t4 are enabled at x(0). If ti

is allowed to fire at x(0), ts will never be enabled in the sequence. Transition ti is

77

Page 90: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

the sink transition of the siphon {pi} at x(0). Similarly, ts is the sink transition of

the siphon {pi,P2,P3,P4} (if 13 is allowed to fire at x(0), ts will never be able to fire).

Clearly, if ti fires at x(0), the total transfer of tokens = (1 - 1)=0. Similarly, if t4

fires at x(0), the total transfer of tokens = (1 - 1)=0. The index of ti is smaller

than that of t4. Therefore, the OP-based LP method avoids the firing of the sink

transition ti at x(0). Both ti and ts are enabled at x(l)=[l,0,0,1]*. If ti is allowed

to fire at x(l), ts can never fire in the sequence. Transition tj is the sink transition

of the siphon {pi} at x(l)=[l,0,0,1]*, In other words, ti is a sink transition of a

siphon at x(l) and firing ti leads to a computational deadlock at a later marking.

Thus, the sink transition of a siphon plays a major role in the computational deadlock

characterization associated with the analysis of PNs.

In Figure 5.3, {pi} is a minimal siphon which is also a basic siphon and {P2} is a

minimal trap as well as a basic trap. This means that if a self-loop is a siphon, then

it is a minimal and a basic siphon. If a self-loop is a trap, then it is a minimal and a

basic trap.

OP-based LP is a method capable of computing all firing vectors in just a single

step. This avoids the computational deadlocks due to the firing of a sink transition

in a siphon.

6.5 Computation in PNs Having Cycles

Figure 6.1 shows a cyclic PN. Let a~-, afj, and aij denote, respectively, the number

of tokens removed, added and changed in place Pi when transition tj fires once.

Transition tj is enabled and fires at x(A;), A; = 0,1,2, • • •, (d - 1) iff

a~<Xi(A;), i = 1,2, . . . , n and i = 1,2,..., m. (6.57)

A mapping function / is defined such that,

fij) = 1, iff[xi{k)-a^>0 (6.58)

78

Page 91: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

" r y i f o )

Figure 6.1: A PN {N,x{0)) having cycles.

fU) = 0, iff [Xi{k) - a:-j] < 0. (6.59)

Clearly, iff f{j) — 1, then transition tj is enabled. In Figure 6.1, the initial

marking is x(0) = [1,1,1,0,0]*. For t4, the input places are p2, ps. Hence, [2 2(0) -0^4]

= [1 - 1]=0, [x3(0) - aj4]=[l - 1]=0 and /(4) = 1. Therefore, transition t4 is enabled

at x(0). For ti, the input places are pi and ps, z = 1 with j = 1 and 2 = 5 with

j = 1. Hence, [xi(0) - ari]=[l-l]=0, [xs(0) - a^i]=[0-l]=-l and / ( I ) = 0, which

means that ti is disabled at x(0). Consider now transition ts, the input place is

P4, and X4(0)=0. The difference between the number of tokens at place p4 and the

weight of the arc from P4 to the transition ts is [x4(0)-a^5] = [0-1] = -1 and /(5) =

0. Therefore, ts is disabled at x(0). Similarly, f{2) = /(3)=1 and transitions t2 and

ts are also enabled at x(0). The final marking x(d)=[l, 0,0,0, 0]* with a firing count

vector u = [1,1,1,1,1]*. The length of the LFS is d = 5. An optimal LFS which has

been computed using the OP-based LP is a = (t4,ti,t2,t3,ts).

Because of the OP-based objective function formulation, the computational pro­

cess inhibits the firing of t2 and ts at A; = 0 on marking x(0) = [1,1,1,0,0]* (as a

LP method always tends to optimize the objective function). If transition t2 fires at

x(0), then x(l) = [1,0,2,0,0]*, and the effective firing count vector u = [1,0,1,1,1]*.

79

Page 92: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

If transition ts fires at x(l), then x(2) = [1,0,1,1,0]* and u = [1,0,0,1,1]* and tg

becomes enabled at x(2). If transition ts fires at x(2), then x(3) = [2,0,1,0,0]*,

u = [1,0,0,1,0]* and the computation gets into deadlock. Transition t2 is the sink

transition of the siphon {p2,P5} at x(0). If ts fires at x(0), then x(l) = [1,1,0,1,0]* and

the effective firing count vector u is [1,1,0,1,1]* with the superfix t denotes the trans­

pose. Both t2 and ts are enabled at x(l). If transition t2 fires, then x(2) = [1,0,1,1,0]*

and u = [1.0,0,1,1]*. If ts is allowed to fire next at x(2), then x(3) = [2,0,1,0,0]*,

u = [1,0,0,1,0]* and the computation is deadlocked. Transition ts is the sink transi­

tion of the siphon {p2, ps, Ps} at x(0). Similarly, it can be shown that each and every

other computation gets into deadlock except for the OLFS a = (t4,ti,t2,t3,t5).

In this example, d = (1 + 1 + 1 + 1 + 1) = 5. All firing vectors u(A;)'s for A; =

0,1,2,3,4 are determined in one single iteration of LP. The computed firing vectors

are u(4) = [0,0,0,0,1]*, u(3) = [0,0,1,0,0]*, u(2) = [0,1,0,0,0]*, u(l) = [1,0,0,0,0]*

and u(0) = [0,0, 0,1,0]*, respectively. The incidence matrix a of the PN in Figure 6.1

is shown as follows: / \

- 1 0 0 0 1

1 - 1 0 - 1 0

0 1 - 1 - 1 0 0 0 1 0 -1

v / - 1 0 0 1 0

Therefore, the optimal objective function J* = mm[l — 0 — 0 — 2 — 1] = —2 shows

that two tokens are absorbed during the computations of the OLFS a.

6.6 Unimodularity

Due to its special structure, the OP-based LP method has integer optimal solutions.

The notion of unimodularity and its properties play a crucial role. Next the definitions

80

Page 93: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

of unimodularity and total unimodularity are provided.

Definition 6.6.1

Unimodularity: A matrix 'A' of rank r is said to be unimodular if all entries of A are

integers, and the determinant of every square submatrix of A of order r is either 0,-1

o r + 1 . 0

Definition 6.6.2

Total Unimodularity: A matrix A is called totally unimodular if the determinant of

every square submatrix of A is either 0, —1 or +1. Any totally unimodular matrix

contains 0 and ±1 entries only. 0

Some of the results discussed next appear in [66].

Theorem 6.6.1

The constraint matrix A (the leftmost matrix) in equation (6.9) is totally unimod­

ular.

Proof The proof is straight forward from the structure of A. The matrix A contains

entries with only / , O and e. Also / is a unity matrix and each of its diagonal elements

is a 1 and the rest of the entries are 0. Now O is a zero matrix and each of its entries

is a 0. Also e is a vector each of whose entries is a 1. Therefore, each entry of the

matrix A is a 1 or a 0. Hence, by definition the matrix A is unimodular. Therefore,

the determinant of each square submatrix of A can only be 0, +1, or —1 and makes

A a totally unimodular matrix. Q.E.D.

Equation (6.9) is of the form AX = b. The constraint matrix A and also the

incidence matrix a inside A in equation (6.9) are totally unimodular. Since the PN

reachability problem has a precondition that vector X be always integer and since the

marking vector and the firing count vector can only contain integer entries, therefore

81

Page 94: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

these are also integer vectors. This implies that finding an OLFS to decide the PN

reachability is an all-integer-programming-problem.

.A sufficient condition for the total unimodularity of the incidence matrix a is given in

the following theorem.

Theorem 6.6.2

-Any (-1,0,+1) incidence matrix o is totally unimodular if

• Each column of a contains not more than two nonzero entries, and

• The rows of a can be partitioned into two subsets such that:

1. If a column of a contains two entries with the same sign, then the corre­

sponding rows belong to different subsets, and,

2. If a column of a contains two entries with opposite signs, then the corre­

sponding rows belong to the same subset.

This theorem does not state a necessary condition.

0-

Figure 6.2: A PN A/ to verify Theorem 6.6.2.

82

Page 95: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Example 6.6.1

The incidence matrix a for the PN in Figure 6.2 is given in the following:

/ \ - 1 - 1 0

a =

V 0 1 1 /

The net in Figure 6.2, where m = 3 and n = 3 satisfies the first condition in theorem

6.6.2. For the second condition, the rows of a are subdivided into subsets. Now

rsl={pi,p2,P3} and rs2 = (f>, where (f) denotes an empty set. Theorem 6.6.2 provides

an important structural property of PNs.

-A close look at the constraint matrix A in the OP-based LP method reveals

that, except for the entries in matrix a, the rest of the entries contain only positive

elements, either elements in I or the unity matrices, or elements in 0 or zero matrices

or elements in a" or elements in e vectors. Therefore, it is enough if only the matrix a

is considered for unimodularity in order to obtain the properties relating to structures

of PNs. The OP-based LP method discussed in this chapter is also a straightforward

computational method.

83

Page 96: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 7

A DYNAMIC PROGRAMMING METHOD

In order to keep down the number of constraints and the number of unknown

variables to reasonable values, a given problem can be broken down into smaller

problems. .A Dynamic Programming (DP) method is based on this basic principle.

It uses multiple steps (d steps) for finding LFSs of PNs, in contrast to the Single

step LP or the OP-based LP method which use only one LP step. The DP method

is the only general approach to sequential optimization under uncertainty. A formal

definition of DP follows.

Definition 7.0.3

Dynamic Programming: In fact, dynamic programming is a kind of transforma­

tion [55]. It takes a sequential or a multi stage decision process containing many

interdependent variables and converts it into a series of single-stage problems, each

containing only a few variables. 0

The concept of DP as originally introduced by Richard Bellman is used in this

chapter to divide the optimization problem into d-part problems.

7.1 Basic DP Formulation

The basic reachability problem of PNs with a prespecified u and d is subdivided

into d parts with A; = 1,2,..., d for solving under smaller number of constraints.

To find LFSs, it is necessary to recursively formulate the objective function of

equation (2.12). The computation starts at x(d). If U denotes the set of firing vectors

which satisfies the set of constraint equations (2.13), then each element of U is called

84

Page 97: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

an admissible vector. At each firing instance k, there may be multiple enabfing firing

vectors which are members of U. The objective function J in equation (2.19) is a

function of A; = 1, the initial state x(0), and a LFS or, in other words, J is also a

function of the admissible firing vector sequence {u(l),u(2), . . . ,u(d)} (multiple of

which may exist). Denoting a LFS {u(l),u(2),.. .,u(d)} by u[l,d] then,

u[i,d]eu. (7.1)

Rewriting the objective function J in equation (2.12) as J(x(0),u[l,d], 1), then J is

a function of x(0) at A; = 1, since a firing vector u(A;) G t/ is determined by x(0) at

A; = 1. Writing J as J(x(0), 1), the objective function is given by,

J(x(0), 1) = (u[l, d] G U){J{x{0), u[l, d], 1)}. (7.2)

In general, within the range 1 < A; < d, if x(A; — 1) is the initial state, then the

objective function is given by,

J(x(A; - 1), A;) = (u[A;, d] G U){J{x{k - l),u{k, d\, k)}. (7.3)

-Assume that there is an intermediate firing instance j such that k < j < d. If

j represents an initial firing instance with x{j — 1) as the initial state, then the

corresponding objective function will be given by J{x{j — l),j) and the computations

of J(x(A; — 1), u[k,j — 1], k) are completely independent of u[j, d]. Therefore, equation

(7.3) can be written as,

J(x(;c-1),A;) = (u[A;,j-l]GC/){J(x(A;-l),u[A;,i-l],A;)}

+{u[j,d] G U){J{x{j - l),u[j,d],;)}

= (u[A;,; - 1] G U){J{x{k - l),u[A;,i - 1], A;)

+J{x{j-l),j)}.

85

Page 98: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

In terms of j = (k + 1), and writing u[A;, A;] = u(A;) (Since u[A;, A;] is the only firing

vector u(A;) in the LFS), ,7(x(A- - 1), A;) in equarion (7.4) becomes:

J{x{k-l),k) ={u{k)eU){J{x{k-l),u{k),k) -^J{x{k),k + 1)},

where J{x{d), (d + 1)) = 0 and A; = d, (d - 1) , . . . , 1.

(7.5)

The recursive formulation in equation (7.5) is the basis of the optimization principle

for the backward directional computations of DP techniques. The basic DP algorithm

rests on equation (7.5).

7.2 The DP Algorithm

There is a precise mathematical correspondence between recursions used within pro­

grams and simple loops which could replace those recursive structures. It is always

possible to replace a recursive structure within a program by simple looping con­

structs [26]. But this requires new elementary instructions within the program codes

and substantial changes within the algorithm. The latter has the advantage of being

simple whereas in general, the recursive subroutines are more powerful than their

iterative counterparts. Recursive subroutines have one major drawback in that some

of the powerful compilers do not support recursions. Whereas iterative constructs

can easily be implemented by most of the compilers. Stacks are always associated

with the implementation of recursive constructs. If the problem size is bigger than

the system can support, there is always a possibility of stack overflow and the system

might run short of memory. With a recursive implementation, there is a possibility

of stack overflow. With a DP-based algorithm using iterative constructs, there is a

possibility of combinatorial explosions with large problems [26] which is also true for

the DP algorithm which follows. The following is an iterative DP algorithm for PNs

which uses a breadth-first-search (bfs) technique.

86

Page 99: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Step 1

At the firing instance A; = d, the objective function J{x{d),d+ 1) = 0 and x(d)

is prespecified. Find all u{d) satisfying {u{d) G U){J{x{d - l),u(d),d)} = e*x(d)

having the initial state x(d - 1). Generally, for the states at A; = (d - 1), store

all the objective function values J{x{d - l),d) in memory as the functions of the

corresponding markings x(d - 1).

Step 2

-At the firing instance A: = (d - 1), substitute J{x{d - 1), d) in step 1 into equation

(7.5) and find all u{d - 1) satisfying J{x{d - 2),d - 1) = {u{d - 1) G U){J{x{d -

2), u(d - 1), d - 1) + J{x{d - 1), d)} with the initial state x(d - 2). Store in memory

the numerical values of J{x{d — 2), d — 1).

Step 3

Repeat step 2 for A; = (d - 2 ) , . . . , j + 1. At the firing instance k=j, substitute

'^(^(i) , i+l) of ( i+ l ) th firing into equation (7.5) and find all u{j) satisfying equation

(7.5) with the initial states x{j — 1). Store the numerical values J{x{j — l),j) and

the corresponding states x{j — 1) in memory.

Step 4

Further repeat step 2 for A; = (j — l),{j — 2),..., 3. At the firing A; = 2, substitute

J(x(2), 3) at the 3rd firing into equation (7.5) and find all u(2) satisfying J(x(l), 2) =

(u(2) G U){J{x{l), u{2), 2) + J{x{2), 3)} with the inirial state x(l). Keep in memory

the numerical values of J(x(l), 2) and the states x(l).

Step 5

-At the firing A; = 1, substitute J(x(l),2) at A; = 2 into equation (7.5) and deter­

mine all u(l) which satisfy J{x{0), 1) = (u(l) G U){J{x{0),u{l), 1) + J(x(l), 2)} with

the fixed initial state x(0). The DP algorithm terminates here.

In this algorithm, the states x ( d - 1), x ( d - 2 ) , . . . , x(l) are unknown initial states

87

Page 100: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

START

At k=d, J(x(d),d+1)=0 and x(d) is known. Find all u(d) to satisfy J(x(d-l),d) = e -xCd).

YES

Store all J(x(d-I),d) in memory as the functions of the corresponding x(d-l)s.

k = (d-l)

Find all J(x(k-I),k) and store in memory as the functions of x(k-l)s.

k = (k-l)

Substitute J(x(k),k+1) of the (k+l)th firing into equation (7.5) and find all u(k) to satisfy equation (7.5) with initial states x(k-1) Srorfl ,T(x(k-l),k) in meimnry

At k=l, determine all u(l) for J(x(0),l) with fixed x(0).

-»- STOP

Figure 7.1: Flow-chart of the DP algorithm.

88

Page 101: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

at A; = d, (d - 1 ) , . . . , 2. All feasible initial states at A: = d, ( d - 1 ) , . . . , 2 are stored in

memory, requiring a huge amount of memory space for the computation of multiple

LFSs. Figure 7.1 shows a schemetic diagram of this algorithm.

7.3 Computational Performance

For a token-free terminal state condition, the algorithm can not compute one LFS.

With reasonable problem sizes, the DP algorithm is capable of finding multiple LFSs.

The computation considers combinations of transitions at different firing instances A;,

A; = 1,2,..., d and it is an enumerative type of algorithm.

The number of places has less effect on the algorithm's computational efficiency

compared to the number of transitions in a given PN with a reasonable length of the

firing count vector d.

The DP algorithm can compute reasonable sized ordinary PNs and can find LFSs

in ordinary PNs containing self-loops. An example is considered next:

+ [1.0. II '

I [0. 1. 11' [

I [1.0.1) I—^—-j I I . 0.01' 1—'• - j [0.1.01' r

(b)

(a)

Figure 7.2: DP algorithm applied to a PN. (a)(A'',x(0)), (b) the states traversed.

For the PN in Figure 7.2(a), the initial marking is x(0)=[l, 0,1]*, the final marking

is x(d) = [0,1,1]* with u = [1,1,1]* and d = 3. A LFS exists from x(0) to x(d) for

the given u, which is computed as (t3,ti,t2) as is evident from Figure 7.2(b).

89

Page 102: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

A second example for the PN in Figure 2.3; let x(0) = [0,0,0,0,0,0,0]*, x(d) =

[2,0,0,1,0,0,0]* together with a firing count vector u = [0,0,1,1,1,1,1,0]* and d = 5.

The optimal LFS from the initial to the destination marking is cr = (te, ty, t4, ts, ts).

xlO) 1 ;—I '6 J 10.0.0,0,0.0,1]' I [0.0.0.0.0,0.01' 1^ '•' '"•"•"•"•"• '

objectives I objec[ive=0

[1.0,0.0,3.0, i T "

I 11,0.0.0,2.0.01' p ^ 6

[1.0.0.0,1,0,01'

(1.0.0,0,2,0.11'

.6^,..-^[l,0.0,0.1,0.n'l " '^'''^"'^

\ II.0.0,0,0.0.rr~

x(<i)

objective=3

[1.0,0,0.0,0.0]'I

Figure 7.3: The markings traversed by the DP algorithm for the net in Figure 2.3.

Figure 7.4: A BCF net.

The DP algorithm searches through every reachable marking in its search space,

therefore multiple LFS searching is possible. Consider the Backward-Conflict-Free

(BCF) PN [51] in Figure 7.4.

90

Page 103: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

For the BCF net in Figure 7.4, x(0) = [1,1,0,1,0]*, x(d) = [0,0,0,1,0]*, u =

[1,1,1,1]* with d = 4. There are two LFSs which are computed by the algorithm.

These are ai = (t4,t3,ti,t2) and (72 = (ts, t4, tj, t2). Both of these are legal on x(0)

with respect to u.

7,4 Computational Characteristics

The algorithm traverses all reachable markings at each flring instance k. If a prob­

lem is decidable, the reachable markings corresponding to a LFS are always stored

in memory. Therefore, the concept of the sink transition of a critical siphon does not

hold for this algorithm. The computation traverses all possible reachable states at the

A;th firing from a corresponding successor marking at the (A; + l)th firing. Therefore,

only reachable markings exist in the search space. The firing of a critical transition

at the A;th instance deadlocks a computational process at a later firing instance j

such that k < j < d, where d is the total number of firings in a LFS. Only reach­

able markings corresponding to a LFS are selected by the DP algorithm from the set

of all reachable states. Hence, the concept of a critical transition does not hold in

connection to the DP algorithm.

The algorithm considers combinations of possible enabled transitions from the

firing count vector in order to compute LFSs of PNs. Thus, there is possibility of

a combinatorial explosion for relatively large problems, which comes out as a major

drawback. The DP is an enumerative type algorithm because it checks all possible

states during the computations, even though it considers combinations of transitions

rather than permutations of transitions. Hence, the algorithm derives reachable states

from previous states to find LFSs.

91

Page 104: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

7.5 Complexity Analysis

The algorithm has a computational complexity of 0(dm^"), which is not polyno-

mially bounded. This is shown next.

-At the final marking x(d), m computations are carried out and for the rest of the

stages, rr? comparisons are carried out at each stage for a total of Ctotox comparisons;

therefore:

Ctotai = m + (d - l)m^ (7.6)

If the state vector x(A;) for A; = 0,1,2, • • •, d is n-dimensional, then the total number

of comparisons are

Ctotai = m'' + {d- l)m2". (7.7)

Therefore, the algorithm has a computational complexity of 0{dm^"'). Only firable

transitions from the given firing count vector u are considered at each firing instance

A;, where A; = d, (d — 1), • • •, 1.

For example, if m = 5, n = 5 and d = 5, then the maximum number of compar­

isons are,

Ct<,to/ = m" + ( d - l ) m 2 "

= 5 + (5 - 1) X 5 °

= 39,065,625.

7.6 Optimal Control Related Properties

7.6.1 Controllability

The DP algorithm cannot decide controllability. Controllability implies that there

exists a firing sequence {u(A;)} for A; = 1,2,3, • • •, d which takes the initial state x(0)

to a final state x(d), where x(d) is a state of equilibrium. The final marking x(d)

is said to be a state of equilibrium [10] provided that x{d)=Onxi, where Onxi is

92

Page 105: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

an (n x 1) column vector having each of its entries equal to zero i.e., it describes a

token-free terminal state condition. Since, x(d)=x(0) + au, then

0 = x(0) + au. (7.8)

The above equation provides

a u = - x ( 0 ) . (7.9)

Since x(0) > 0, then

(a+ - a-)u < 0. (7.10)

The condition for controllability in a PN is given by,

a'^u < a~u. (7.11)

Equation (7.11) literally means that there should be an absorption of the total number

of tokens present in the PN or the total number of tokens in the net should remain

unchanged once the final marking x(d) is reached from x(0) for a given firing count

vector u.

Figure 7.5: A PN to verify controllabiUty.

Example 7.6.1

Consider the net in Figure 7.5. Here ts is a sink transition and tj is a source

transition. With a firing count vector, u = [1,2,1,1]* and d = 1 + 2 + 1 + 1 = 5,

x(d)=[0,0]* is reachable from a;(0)=[0,0]* with a LFS, a = (ti, t2, t4, ts, ts). Therefore

x(0) = [0,0]* is controllable.

93

Page 106: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

7.6.2 Observability

The observability property provides the ability to establish the initial state x(0)

assuming that the final state x(d) is given [10]. The DP algorithm does not follow

the observability property for a PN reachability problem. On the other hand, if

x(d) = Onxl = [0,0,0, • •-,0]* is reachable from the initially given state x(0), then

x(0) is said to be controllable [10].

94

Page 107: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 8

A LP METHOD BASED ON DYNAMIC PROGRAMMING

While analyzing concurrent systems using PNs, the number of reachable states may

become enormous. There is a possibility of the combinatorial state-space-explosion if

a DP method is used for the analysis of large problems. A solution to this problem is

to combine two different optimization methods to have a more powerful and versatile

computational technique. The basic DP technique is combined with LP for the DP-

based LP method. The reversed net A''"^ of an original PN A is used for computing a

LFS, This scheme strengthens the computation of a LFS and aids in avoiding potential

critical transitions on the original PN N. A backward directional computational

technique of DP has been used with the reversed net by splitting the complete problem

into a multi-stage decision problem and each stage is solved using one application of

LP. This provides a method that combines three different techniques:

1. Use of the reversed net A''"^ of an original PN A'',

2. use of DP,

3. use of LP.

This is the basis of the DP-based LP method. The DP-based LP method discussed

in [44] where it has been called the DP+LP method needs further clarification and

analysis.

8.1 Results on Reversed Nets

Definition 8.1.1

Reversed Net: The reversed net structure A''"^ [51] of a net structure A'' = (P, T, a'^,a~)

is the unmarked net obtained by reversing the direction of each arc in N. 0

95

Page 108: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Properties of reversed nets are closely related to the DP-based LP method. Some

results relating to reversed nets are introduced in the following.

Lemma 8.1.1

The incidence matrix of the Reversed net A^-i of a given PN A is expressed by

the relationship -a = a' - a+, where the incidence matrix of N = {P,T,a+,a-) is

a = a-^ - a'. Therefore, the structure of the reversed net of an original PN N is

N-' = {P,T,a-,a+).

Lemma 8.1.2

In a PN N with an inirial marking x(0) which is denoted by {N,x{0)), if x(d) G

i?(x(0)), i.e., x(d) is a member of the set of reachable markings R{x{0)) from x(0),

then on the reversed net with a final marking x(d) which is denoted by {N-\x{d)),

x(0) G R{x{d)) and vice versa. The notation R{x{d)) is the set of reachable states

from x(d) on (A^-^,x(d)).

Proof:

1. From the state equation, the final marking x(d) = x(0) + au for x(d) G R{x{0))

on {N,x{0)). Then the non-negative integer firing count vector u satisfies, u =

ELi^ik).

2. The state equation gives, —au = x(0) — x(d), which is,

x(0) = x(d) + {-a)u (8.1)

Equation (8.1) is the state equation for a reversed PN A~- having the initial marking

x(d), the final marking x(0) and an incidence matrix —a.

3. The firing count vector u in the state equation: x(0) = x(d) + {—a)u must

be realized for the firing sequence a, therefore, the firing count vector sequence

u = Efc=i u{k) fires in the reversed order of the computations. This implies that

on {N~'^,x{d)), x(0) G R{x{d)). This proves the first part of Lemma 8.1.2.

96

Page 109: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

4. The proof of the second part which is for the backward direction is obtained by

starting from step 3, if one goes to step 2, and finally from step 2, if one goes to step

1.

Q.E.D.

Theorem 8.1.1

The minimum transfer of tokens at the A;th firing on the original PN A'' is the same as

the maximum transfer of tokens at the A;th firing on its reversed net N~'^. Expressed

mathematically; „(5°j;[e*{x(A;-1)+au(A:)}] = „(™^^{e*x(^)} on (A^,x(^-1)) is the

same as: „S"^^[e*{x(A:) - au(A;)}] = „(' )\ {e*x(A: - 1)} on {N-\x{k)).

Proof:

1. The firing vector u(A;) which satisfies ^^^^^[e^x{k)] on {N,x{k - 1)) is an optimal

firing vector u*{k).

2. Step 1 indicates that the firing vector u(A;) having the largest difference between

x(A; — 1) = [xi(A; — 1)] with the total number of tokens E"=i^i(^ — 1) and x(A;) =

[xi(A;)] having the total number of tokens Z)"=i2;i(A;) is selected (also u(A;) satisfies

x(A; — 1) > a~u(A;) for enabled transitions).

3. -Assume t is the transition which satisfies step 2 and the optimal firing vector

u*(A;) = Cr {e-r is a vector with the r-th element = 1 and the rest of the elements

0). Then for the columns of the matrices a"*" and a~ corresponding to the transitions

satisfying the enabling conditions, the difference between the summation of the r-th

column elements of a"*" and a~ is minimum.

4. Consider the reversed net with x(A;) which is denoted as {N~^,x{k)), where x(A;)

is the same marking as in step 1. Since x(A;) = x(A; — 1) + au{k), therefore, x(A; —

1) = x(A;) + (—a)u(A;). On the reversed net, the incidence matrix is —a = a~ —

a"*" On (A^~- ,x(A;)), the transition tr which corresponds to a vector e should be

97

Page 110: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

selected such that the enabling condition x(A;) > a+u(A;) on (A/'~\x(A;)) is satisfied

and the difference between the summation of the r-th column elements of a"*" and

a~ is minimum. This means that the difference between the summation of the r-th

column elements of a~ and a"*" is a maximum for tr.

5. Since x(A; - 1) -x(A;) = (-a)u(A;), therefore step 5 implies selecting that transition

tr as u(A;) which provides a maximum difference between EiLi Xi{k - 1) of x(A; - 1)

and '£,'i=iXi{k) of x{k) on {N~'^,x{k)). Expressing this mathematically,

u(k)^uf'*^'^^^) " °"(^^^^ = u(^^G U^''^^^ " ^^^ ''^ ( ^ ~ ' ' ^ W ) (8-2)

6. Note however that if starting from step 5, one proceeds up to step 1 in opposite

sequence with {N,x{k - 1)), then the same results as those for {N~'^,x{k)) from step

1 up to step 5 are obtained.

Q.E.D.

Theorem 8.1.2

A structural siphon on the given PN TV is a structural trap on the reversed net A''"^

and vice versa.

Proof On the reversed net N~^, all arc directions are reversed. From the basic

definition of structural siphons, for a siphon Ps,

<t>Q'PsQ P's, (8.3)

with 'Ps = set of input transitions to Ps and FJ = set of output transitions to Ps-

On the reversed net N~^, only the arc directions are reversed but the places are

left intact. Therefore, input transitions and output transitions of Ps become output

transitions and input transitions, respectively, whereas the set of places remains same.

Let us denote the set of places in Ps on the reversed net A''"- as Ps. Therefore,

'Ps = P | (8.4)

98

Page 111: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

and

P's = *Ps- (8.5)

Substituting in 8.3,

- C PJ c -Ps. (8.6)

From the definition of traps, equation (8.6) shows that Ps is a structural trap.

Next consider a structural trap PT in A'' and denote the set of places in PT on

N~^ as PT. From the definition of a structural trap,

(pCP^C -PT (8.7)

Clearly,

'PT = PT (8.8)

PT = 'PT (8.9)

Using 8.8 and 8.9 in 8.7,

(PQ'PTC P^ (8.10)

Therefore, PT satisfies the definition of a structural siphon.

Q.E.D.

Theorem 8.1.3

The sink transitions of the critical siphons for a PN A'' on particular markings for

the reachability problem with known values of u and d are the one and only critical

transitions possible.

Proof First, it is shown that the sink transitions ts of a critical siphon with known u

and d are critical transitions on the specific markings. Any siphon NE is an effective

siphon for a known u and d. Since for the reachability problem with a known u and d,

it is enough to consider only the firing count subnet Nu = {Pu,Tu, a'^, a') defined by

99

Page 112: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

the nonzero elements of u, || u ||. At any firing instance k, only || u(A;) || is considered.

Now for A £;, if PE denotes the set of places in the siphon, ^ C 'PE C PJ, then A'' ; is

a siphon with transitions 'PE common to both the set of input and output transitions

of NE- If a transition tg is such that tg G 'PE, then tg is common to both the set of

input and output transitions of the siphon. From the definition of a sink transition

ts of a siphon NE, ts G TE\'PE, therefore ts is not within the set of input transitions

'PE of the siphon NE and it can only be an output transition of NE- Since NE is a

siphon and tg is a sink transition of NE, therefore, there is at least one transition tg

such that 'ts C 'te or, 'te C 'tg- If ts is allowed to fire, it removes w{pE,ts) tokens

from all the input places PE G 'ts of ts and ultimately tg cannot fire. If ts is allowed

to fire on the particular markings one or, some of the transitions which are members

of II u II are deadlocked and cannot fire. Therefore, ts can be a critical transition for

known values of u and d.

Next, it is shown that there can be no other critical transitions. Since for the

siphon NE, (P^'PE Q PE, therefore the transitions 'PE are always common to both

the set of input and output transitions of NE- But tg G T^ n ( ' P E n P^), therefore

transitions tg's are completely within the closed loop of A - The following step shows

that a transition tg can not be a critical transition. Let a transition tg G TEri{'PEC^PE)

be a critical transition. Therefore, firing tg on x(A;) G R{x{0)) at the A;th firing will

disable a transition t with the number of firings of tg in the effective firing count

vector u denoted by Ug(A;), where Ug(A;) > 0 and tg G TE n {'PE nPE)- But tg is in the

set of input transitions to NE- Therefore, some or all of the output places of tg, tg*

are completely within the set of places of A ^ which are also input places to another

transition say tg G TEn{'PEnP^). Hence, if tg fires then it helps tg to be enabled and

if other conditions remain perfect, tg should be able to fire. Proceeding this way t

should be able to fire at some firing instance g. A; < g < ( d - 1). Therefore, tg cannot

100

Page 113: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

be a critical transition. Thus, no tg G Tg; n {'PE n PJ) can be a critical transition,

since their firing help keep tokens remaining either completely or, partially within

the set of places forming A £;. This result is strictly true for general PNs for which

•w{pE,ts)=l.

Q.E.D.

Definition 8.1.2

-An effective firing count vector is the total firing vectors of a firing count vector u

remaining at the A;th firing after completing the firings of some enabled transitions at

some previous firing instances of k in the LFS. 0

Definition 8.1.3

Effective Siphon: If the effective firing count vector u is non-zero, then a siphon

A'g = (Pe,re,a^, aj) is said to be effective, provided that at least one transition

t G Tg corresponds to u. 0

Theorem 8.1.4

If (A , x(0)) with x(d) is x(d) G P(x(0)) under the existence of a firing count vector

u, then an effective siphon on A'' is always marked at x(0).

Proof If an effective siphon is not marked on x(0), it remains empty at each successive

marking. Denote the effective siphon by ND and the set of transitions in ND by

TD. NOW if the effective siphon ND is not marked at x(0), then a transition t e TD

corresponding to a non-zero element of the firing count vector u never fires and {u(A;)}

which corresponds to u is far from the realization. This means (iV, x(0)) with a final

marking x(d) is x(d) ^ R{x{0)) under the existence of u. Thus, an effective siphon

cannot be token-free at x(0).

Q.E.D.

101

Page 114: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Theorem 8.1.5

If (A'', x(0)) with a final marking x(d) G P(x(0)) under the existence of u, then a

potential critical transition at x(A; - 1) G P(x(0)) does not have a priority for firing

at the (A; — l)th firing instance.

Proof: If the sink transition tg G Tp of a potential critical siphon Nu has the topmost

priority on x(A; — 1), then on x{k), the following two conditions hold:

• If ND is token-free then the proof of Theorem 8.1.5 follows from the proof of

Theorem 8.1.4.

• If ND has tokens, then the following statement holds. At the firing instance

under consideration, at least one transition tp G To on a circuit of ND cannot

fire at some marking x{q), where x{q) G R{x{k — 1)) and x{q) is reachable from

x(A;). The marking x(A;) is based on the firing of the transition t, G TD on

x(A; — 1). From the properties of a siphon, tp G TD never fires from the marking

following x{q) and it is impossible to realize {u(A;)} which corresponds to u.

This implies that there does not exist a LFS which starts on x(0) and ends at

x(d). This completes the proof

Q.E.D.

To apply the DP-based LP method, the reversed net A/"" of a given PN N is used

with computations starting at x{d). Therefore, Theorem 8.1.5 must be modified as

follows.

Lemma 8.1.3

If {N~'^,x{d)) with an initial marking x(0) and x(0) G R{x{d)) under u, then the

sink transition of a possible critical siphon on x(A;) G R{x{d)) does not have priority

for firing at the A;th firing instance. A; = 1, 2 , . . . , d.

102

Page 115: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Proof: The proof is straightforward from Lemma 8.1.2, Theorem 8.1.1, Theorem 8.1.5

and using the fact that with a reversed net A''"^ the computation of a LFS a proceeds

in the opposite direction starting at x(d). Q.E.D.

Example 8.1.1

The simplest critical siphon is a place connected to a transition (critical transition).

It is possible to have more than one sink transitions of siphons on the same marking

as potential critical transitions.

The example in Figure 8.1 shows the smallest critical siphon possible in a given

PN to compute a LFS using the DP-based LP method. Figure 8.1(a) shows x(0) =

[0,0,0,0,0]*, and Figure 8.1(b) shows x(d) = [1,0,1,0,0]* obtained with u = [0,1,1,1,1,1]*

The PN in Figure 8.1(b) is the reversed subnet with a final marking: (A''~\x„(d)).

(a) (b)

Figure 8.1: A PN A and its reversed subnet.(a)(A^,x(0)), {h){N-^,Xu{d)).

103

Page 116: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Using the DP-based LP method, a LFS is obtained as a = (t6,t5,ts,t2,t4). At

A; = d, if ts is allowed to fire on N~^, then the given problem becomes unreachable,

since ts is a critical transition at x(d). Transition ts is the sink transition of a smallest

critical siphon {pi} on the marking. Also ts is a sink transition of the critical siphon

(the closed-loop critical siphon) {p2,P3} on the same marking. This example justifies

the existence of may be more than one potential critical siphons on the same marking.

8.2 A Computational Algorithm for DP

From the formulation (3.3), the optimal objective function J* is given by,

J*(x(A;-l),A;) = ^-;^^[e*{x(A;)} + J*(x(A;),/: + 1)],

= ^^^eui^'{x{k-l) + au{k)} + J*{x{k),k + l)], (8.11)

J*(x(d),d+1) = 0, A; = l ,2 , . . . ,d .

-As x(0) and x(d) are fixed, equation (8.11) involves computing the LFS u{d),u{d-

1) , . . . , u(l) in the opposite order as well as computing x ( d - l ) , x ( d - 2 ) , . . . , x(0) with

the initial state x(d) on (A/~Sx(d)). Using the results of Theorem 8.1.1 in equation

(8.11), the following equation is obvious,

r{x{k-l),k) = ^;;^^^[-e'{x{k)-au{k)} + J*{x{k),k + l)], [8.12]

J*{x{d),d + 1) = 0, where k = l,2,...,d.

The backward directional computational algorithm of DP uses the reversed net N~'^

for computations. Therefore, it is necessary to assume that Theorem 8.1.5 holds for

each of the following steps.

104

Page 117: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Step 1

-At firing A; = d, find u*{d) satisfying the equation.

mm r{x{d - l),d) = ^^^^ ^ ^(-e*{x(d) - au{d)}),

J*{x{d),d + 1) = 0 and x(d) is fixed. (8.13)

Step 2

-At A; = d - 1, substitute J*(x(d - 1), d) which is the decided value at Step 1 into

equarion (8.13), and determine x ( d - l ) = x{d)-au*{d). Find u*(d-1) satisfying the

relationship: J* (x(d - 2), d - 1 ) = ^^^^-J^^ [-e*{x(d - 1 ) - au(d - 1 ) } + J*[x{d -1), d]].

Steps

At A; = j , substitute J*{x{j),j +1) that is the decided value at the {j + l)th firing

into equation (8.13) and x{j) = x{j + 1) - au*{j + 1) is determined. Next find u*{j)

which satisfies equation (8.13).

Step 4

At A; = 2, substitute J*[x(2),3] which is the decided value at the k = 3rd firing

for equation (8.13) and x(2) = x(3) - au*(3) is determined. Find u*(2) satisfying:

J*(x(l), 2) = ^^l^[-e*{x(2) - au(2)} + J*(x(2), 3).

Step 5

At A; = 1, substitute J*(x(l), 2) which is the decided value of Step 4 for equation

(8.13) and x(l) = x(2) — au*(2) is determined. Find u*(l) satisfying the relationship:

J*(x(0),l) = ^-jl^[-e'{x{l)-au{l)} + J*[x{l),2]].

Step 6

If x(0) = x(l) — au*(l), in other words, if u*(l) in Step 5 is equal to u*(l) satisfy­

ing: J*(x(0),l) = ^^^^^u[e*{x(0)+au(l)}+J*(x(l), 2)], then the algorithm terminates.

105

Page 118: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

The above computational algorithm decides both an initial state x(A;) at the A;th

firing and an optimum objective function 7*(x(A;), A; + 1) compared to the algorithm

for DP techniques. Therefore, it is not required to keep the numerical values of the

quantity J*(x(A;), A; +1) inside memory, since the computational algorithm for DP on

PNs is completely iterative and uses the current value of J*(x(A;), A; + 1) for the next

iterati^•e step. This reduces the memory space requirements. Hence, the modified DP

consumes smaller amount of memory.

The modified DP algorithm uses an objective function as defined by the equation

(8.12) on {N~^,x{d)) under Theorem 8.1.5. Introducing the new reversed firing in­

stances for j = 1,2,..., d and keeping the variables corresponding to the A;th firing,

the modified version of the PN reachability problem is obtained.

8.3 Modified Reachability Problem on the Reversed Net

For j = 1,2,..., d, find the optimum firing sequence {u*{d - j + 1)} such that,

J * ( x ( d - ; ) , d - i + l)

= u^d-f:^)eu[-^'{<d-j + l)-au{d-j

+l)} + J*{x{d-j + l),d-j + 2)], (8.14)

subject to :

106

Page 119: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

(8.15)

x{d - j) = x(d - ;' + 1)

- a u ( d - j + l), (a)

x{d-j + l)>a+u{d-j + l), (b)

ET=iUi{d-j + l) = l, (c)

j:UMd-j + l) = u, (d)

x(0),x(d), and d are fixed, (e)

x(0), x(A;) > 0 are integer vectors, (f)

u > 0 , u ( A ; ) > 0 a r e integer vectors, (g)

Specifically, J*(x(0),l) = ^-'^^[_e*{x(l) - au(l)}

+J*(x(l),2)]

= ^-^^^[e'{x{0)+au{l)}

+J*(x(l),2)],

J*(x(d),d+ 1) = 0, and eq. (8.15(c)) fulfills the condition of Theorem 8.1.4.

8.4 Formulation of the DP-Based LP Method

The optimization problem for each subprocess at the jth firing instance has been

formulated using LP. The marking x(d — j + 1) in (8.15(b)) is transformed into the

following by using equation (8.15(a)):

a+u{d-;• + ! ) < x(d) - aZll] u{d-k + 1). (8.16)

For any value of j where j = 1,2,..., d, the righthand side of the above equation is

known. Introducing slack variables s{d — j + 1) = [si{d — j + l)],i = 1,2,.. .,n, into

equation (8.16), equation (8.17) is obtained:

a+u{d-j + l) + s{d -j + l)= x(d) - aZiZlu{d-k + 1). (8.17)

107

Page 120: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Note that the state equation is taken into account in equation (8.17). Moreover,

introducing artificial variables y^(d- ; + l) and y^ = ^Z^ ^ y^{d-j + l), y^{d-j + l) =

[yRd - j + 1)], i = 1,2,..., m into equations (8.15(c)) and (8.15(d)), the DP-based

LP formulation in equations (3.4) and (3.5) is obtained from the modified form of the

DP method on the reversed net.

8.5 Analytical Results

In LP, it is not guaranteed that integer optimal results are always obtained. But the

necessary and sufficient conditions to obtain the integer optimal results are assumed

to be known. Using the LP relaxation, the reachability problem with a prespecified

u and d, which is an all-integer-programming-problem is solved with real variables

using the DP-based LP method. The analyses in this section provide the theoretical

foundation for computing integer firing vectors using the DP-based LP method.

Theorem 8.5.1

Assume LP is constrained by Ax = 6, x > 0. Matrix A is an integer matrix having

linearly independent rows and b is an integer vector. Then the next three conditions

are equivalent to one another.

(1) The determinant of every basis P of A is either +1 or - 1 .

(2) The extreme points of the convex polytope C which are defined by Ax = 6, x > 0

are all integer vectors for an integer vector 6.

(3) The inverse matrix B~^ is an integer matrix.

Corollary 8.5.1

Consider the convex polytope C defined by Ax < 6, x > 0, then the next three

conditions are equivalent.

(I) A is totally unimodular.

108

Page 121: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

(2) The extreme points of C are all integer vectors for an integer vector b.

(3) Every nonsingular matrix of A has an integer inverse.

Moreover if any one of the matrices A, A\ -A, \A, A], [A, I] is totally unimodular,

then any other matrix formed by the combination of these matrices are also totally

unimodular. The next properties are obvious from the formulation of the DP-based

LP method. If the matrix of constraint coefficients A in equation (3.5) is strictly in

canonical form (which is defined in Theorem 8.5.2), then it enhances the initial basis

selection process for a LP technique used with the DP-based LP method.

Theorem 8.5.2

The matrix of constraint coefficients A in the DP-based LP formulation in equation

(3.5) is strictly in canonical form.

Proof: (1) -A matrix of constraint coefficients A is in canonical form if there exists

a unity matrix of order (m + 1 + n) among the first (m + 1 + n) rows of matrix A

(since the matrix A has a total number of (m + 1 + n) rows or there are (m + 1 + n)

constraints in equation (3.5)).

(2) Among the first m rows, there is a unity matrix of order m from the (m + l)th

column up to the 2mth column. Another unity matrix of order 1 is found in the

(m + l)th row and the (2m + l)th column. Finally, a unity matrix of order n is found

from the (m + 2)th row up to the (m + 1 + n)th row and (2m + 2)th column up to

the (2m + 1 + n)th column.

(3) Combining the three unity matrices as stated in step (2), there is a complete

unity matrix of order (m + 1 + n) among the first (m + 1 + n) rows of the constraint

matrix A which is from the (m + l)th column up to the (2m + 1 + n)th column. Thus,

following the definition as stated in step 1, the matrix A is strictly in canonical form.

Q.E.D.

109

Page 122: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Theorem 8.5.3

The optimal firing vector u*(d - ; + 1) in the subprocess k = j of the DP-based

LP formulations is obtained as a globally optimal integer solution using LP, k =

l ,2 , . , . , d .

Proof:

(1) The submatrix .4i = [Imxm CmxiY is totally unimodular and the concatenation

[-4i /(m-t-i)x(m+i)] is also totally unimodular. Hence, the columns and rows correspond­

ing to the slack variables can be eliminated. Let Pi be the basis of [Ai I{m+i)x{m+i)],

then detPi = 1 using conditions 1 and 3 of Corollary 8.5.1.

(2) The n columns corresponding to the slack variables can be selected as the basis

B for the coefficient matrix A in equation (3.5). For this matrix A, starting from

the (2m + 2)th coefficient column up to the (2m + n + l)th coefficient column, each

column contains only one non-zero slack variable coefficient which is 1 and the rest of

the elements are zero. A selection of these columns for the basic variables enhances

the LP computations. Therefore, more than (m + 2) variables are not selected as the

basic variables between the first coefficient column up to the (2m + l)th coefficient

column of the matrix A in equation (3.5) by using step 1. Then starting from the

(2m + 2)th column up to the (2m + n + l)th column are selected and this is [M*, A''*]*,

where M is an (m+1) square matrix and N is an nx (m+1) integer matrix. Therefore,

the basis B for the coefficient matrix of equation (3.5) can be written as:

P = M = Pi (8.18) M 0(^rn+l)xn

N Inxn

Therefore, detP = detM = detPi

(3) If the results of step 2 are used in step 3, then detP = 1 (this result is also

obtained directly from the structure of the coefficient matrix of equation (3.5)).

(4) If step 3 of this proof is used in Theorem 8.5.1, then Theorem 8.5.3 is true. Q.E.D.

110

Page 123: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

8.6 Time Complexity

With the DP-based LP method, the original problem of finding a LFS has been

subdivided into d sub-problems and each sub-problem is optimized. The Single step

LP method can be used directly to solve the problem of finding a LFS. In this case,

the total number of unknown variables is m x d + m + d + n x d and the total

number of the constraints is (m + d + n x d). Let Ll = (m x d + m + d + n x d +

m + d + n X d)a; 2d(n + m + 1) and h is a. proportionality constant. Therefore, the

time complexity is 16c[d(n + m + 1)]^ and the order of complexity is 0{hLi).

For the DP-based LP method, let L2 = (n + 1 + m + n + 2m +1) = (2n + 3m + 2).

Therefore, the order of the complexity is 0{hL2). Under this method, d LP iterations

are applied. Each iteration in turn is of 0{hL2).

Assuming that the time complexity of LP is of polynomial order 4 to the size of

the problem, therefore 0{hL2)oc {2n + 3m + 2)^ Hence, 0{hL2)=c{2n + 3m + 2)^.

Let ip denote the ratio between the time complexity of the DP-based LP method and

that of the single step LP method, then

/ _ dxc{2n+3m+2)* ^ ~ 16c[d{n+m+l)]'^

^ dxc2 ' ' (n+m-H)^ - 16cd4(n-Km-H)4

~ A. — d"

~ d-3.

The ratio ip is only valid for a two-phase simplex subroutine. If the revised simplex

subroutine DLPRS is used, the ratio •)/; can be similarly reduced to approximately

16d-3.

The longer is the length of the LFS d, the more advantageous is to apply the

DP-based LP method.

I l l

Page 124: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

8.7 Use of the Upper Bounded Revised Simplex Method

The basic steps to implement the DP-based LP method using the upper bounded

revised simplex subroutine employing the product form of inverse are outlined.

Step 1: Initializations

(1) Suppose that the matrix A of the constraint coefficients is expressed in terms of

a set of vectors {ui,U2,..., Um}- Therefore, A={ui, U2,..., Um}- Choose P^,. as the

set of basic variables corresponding to a unity matrix of order m as a submatrix of

the matrix A. If the unity matrix is denoted by I and the inverse matrix of P„^ is

denoted by B~^, then P~^ is given by, B~^ = By.^ = J=the unity matrix.

(2) Next denote Ny^ as the set of non-basic variables={xi,X2,... ,Xn}.

(3) The pricing vector which corresponds to the basic variables in the objective func­

tion is given by, CB={0, 0 ,0 , . . . , 0).

(4) The basic variable vector is given by Xg — B~^b.

Step 2: Finding the Entering Variable

(1) For each Xj G Ny^, compute the difference {zj - Cj) = {c^pB-'^Nj - Cj). Denote by

dj the reduced cost for each nonbasic column, then dj = {zj — Cj).

(2) Denote by d, (z, - Cq), then d, = min{{zi - d) : Xj G A''„,} and Xj = 0, together

with dq < 0.

(3) Let dg = {z^ - Cg) = max{{z~^ - cj) : X3 G Ny^}, together with x- = U-, where

?7-=the upper bound of Xj and d, > 0.

(4) If no dg or, d exists within the error tolerance, then stop; otherwise choose g or g

corresponding to the reduced cost dg or dg of largest magnitude in step 2(2) and step

2(3).

If no dg or, dg exists within the error tolerance TOLD J, then the optimal solution

has been obtained. Otherwise go to the step 2(5).

(5) The index q or q corresponding to the reduced cost d, or d of largest magnitude

112

Page 125: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

chosen in step 2(4) is the entering variable. Denote it by s. Therefore x is the

entering nonbasic variable.

Step 3: Finding the Leaving Variable

(1) -As the entering variable increases from 0 or decreases from u^, the values of the

basic variables also change. There are two different cases to be considered.

Case 1: The variable x^ reaches its upper or lower bound without any basic variable

violating its upper or lower bound.

Case 2: Some basic variable reaches one of its bounds before Xj does.

(2) If Xs is decreasing from its upper bound, u^, then a possible new value of Xg

is Xs = 9 = max{ls, 61,62}- Since, this is to be considered for the upper bounded

revised simplex method, therefore Xj for this case should be modified to x = ^ =

max{0,61,62}. The notation Is stands for the lower bound of Xs.

(a) If ^ = Is, then there is no change in the basis. The new values of the basic

variables are: Xi = x^ + a^Us, i = 1,2,... ,m.

(b) If 6 = 61 = -^!fn{us + ^ 4 ^ } is attained for i = ri, then x , leaves the basis.

(c) If 6 = 62 = —^ni'iJ's + ^ } is attained for i = r2, then x z leaves the basis.

For both (6) and (c), the new values of the basic variables are computed as follows:

Xi = x% + a~{us-Xs). (8.20)

(3) If Xs is currently equal to Is and increasing, then Xs-6 = min{us, 61,62}-

(a) If ^ = Us, then there is no change of basis and

Xi = x'p - o^Us- (8.21)

(6) If 6 = 61 = ^ > o l ^ achieved for i = ri , then the variable Xn leaves the basis.

(c) If 6 = 62 = —\ ^"^11"' , which is obtained for z = r2, then the variable Xr^ leaves

the basis. The new values of the basic variables are computed as follows:

Xi = x'e - a^Xs, iy^ri or r2, which one leaves the basis (8.22)

113

Page 126: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Xi = Xs, if i = ri or r2, which one leaves the basis (8.23)

Step 4: Updating and generating the Primal and the Dual Solutions

(1) Update the basis inverse B-\ A'B, P , , , Ny^ and cg to get P;gi„XB„,„, P„,„^^,

'^^vrn,,, and CB„,„ where the suffix "new" denotes an updated element.

(2) Return to step 2.

(3) If the computations are complete as will be indicated by step 2(5), then output the

primal solution as X={xj : j G n}. Also output the dual solution as M = c^B'''- =

{w, : Wi G DVAR and i = l,2,...,m} together with DVAR=the set of solutions for

the dual problem.

8.7.1 Comments

The following comments apply in connection to the DP-based LP method,

(a) The DP-based LP method can be implemented using an upper bounded revised

simplex method which uses the product form of inverse. This is an efficient compu­

tational scheme for finding LFSs of PNs. The Simplex method effectively takes care

of large problems without occupying huge memory space, even though the computa­

tional efforts are not significantly less than that of the two-phase simplex method.

(6) The LP method is applicable in the next standard form:

Maximize z = c*x

Subject to Ax = b (8-24)

I < X < u

For the DP-based LP method, /j = 0 for i = 1,2,..., n. Before using a LP subroutine,

the minimization problem must be converted into a maximization problem by negat­

ing each cost coefficient Cj where j = 1,2,..., n. Also the objective function value

114

Page 127: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

which is returned by the LP subroutine must be negated to get the actual, minimum

objective function value.

8.8 An Analysis of Geometrical Properties

Both the characteristics of DP and LP are predominant in the DP-based LP

method. The concept of the envelope of a convex polyhedron, which is called a

convex polytope, plays a major role. The DP-based LP method gives an absolute

minimum when there are other relative minimas existing. Hence, convexity is not as

important in the theory of DP as it is in other theories of optimization as long as

the computational solution is concerned. A couple of examples are considered later

in order to support this.

8.9 Numerical Examples

First an unrestricted PN with a firing count subnet is considered. In this example,

n = 5 and m = 7.

(a) (b)

Figure 8.2: An unrestricted PN with reversed subnet.(a)(A^,x(0)), (b)(A^^ \xu{d)).

Figure 8.2(b) shows a reversed subnet of a given PN N with x„(d). The place

Ps does not appear in Xu{d), since p3 does not affect the token fiow mechanism in

computing a LFS and it does not belong to the connected firing count subnet.

115

Page 128: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Table 8.1: Incidence matrix a and u for the problem of Figure 8.2.

a =

1 0 0 0 0 1 - 1

- 1 1 0 0 0 0 - 2

- 1 1 0 0 0 0

0 0 - 1 1 - 2 0

0 0 0 0 1 - 1 0

u = [0,0,0,2,1,1,1]*,

d = 5.

Table 8.2 shows Au(d - j + 1) corresponding to j = 1 ~ 5 (a firing count of the

transitions in the reversed net at the j th firing) and enabled transitions at the j th

firing. This table also shows a transition which is selected using the objective function

(this transition is underlined) and the state or marking after firing the underlined

transition.

A LFS obtained using the DP-based LP method is a = (t4, t4, ts, te, ty). The same

sequence is computed using either a simplex subroutine or the DLPRS revised simplex

package routine.

1. For j = 1 in Table 8.2, if t4 is selected, then the problem becomes unreachable.

Transition t4 is a sink transition of the critical siphon Pp = {pi,P4,P5} on x(d). This

is true because if t4 is selected at the beginning then tr and ultimately te and ts

cannot fire.

2. A reachable problem for the given PN A has x(0)=[0,0,0,0,0]*, x(d) = [0,0,0,3,0]*

obtained with u = [0,2,2,4,1,1,1]* and d = 11. A LFS which is computed using the

DP-based LP method with the DLPRS package routine is (t4, t4, t4, t4, ts, ts, t2, ts, te, t2,

tj). A LFS computed using the two-phase simplex subroutine is (t4, t4, t4, t4, ts, ts, t2, t2,

^ 5 , ^ 6 , ^ 7 ) .

116

Page 129: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Table 8.2: Reachable states and the corresponding firing transitions.

Here x(0) = [02000]* and x(d) = [00030]*.

j [ A u ( d - j + l)]* {t} [x{d-j)Y

1 [0002111] {t4,tj} [12000]

2 [0002110] {t_6} [02001]

3 [0002100] {t_s} [02020]

4 [0002000] {ti} [02010]

5 [0001000] {t4} [02000]

8.10 Observations

-Note that:

(a) If the DP algorithm is not modified, it cannot be used with LP to produce the

DP-based LP method.

(b) Theorem 8.1.1 is fundamental to the DP-based LP method discussed in this chap­

ter.

(c) The method is useful for reducing the size of a given problem. Therefore, effec­

tively, firing count subnets can be considered by removing the transitions and arcs

connecting the transitions corresponding to the zero elements of the firing count vec­

tor u.

117

Page 130: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 9

A FORWARD RECURSIVE DP-BASED LP METHOD

Computation time taken by an algorithm for solving the PN reachability problem

is a major concern in developing a method. Forward iterative DP can be used for

computing LFSs of PNs. This requires subdivision of a given problem into a multi­

stage decision problem. This form of a DP implementation computes on an original

PN N. -A method which is based on the forward iterative DP becomes more powerful

if a LP is used to compute a legal firing vector at each stage of a multi-stage decision

problem. This is a straightforward implementation based on DP which decreases the

computation time needed by the algorithm.

9.1 Basic Principle

The FDP-based LP method is based on the recursive formulation of the objective

function for the forward direction of computations. It is introduced in this section.

The DP algorithm cannot compute large problems due to an inherent combinatorial

explosion. The FDP-based LP method can compute reasonably large PNs for large

problem sizes. The greatest advantages of the method result from its associated time

complexity and memory space requirements.

This is basically an improved DP-based LP method using forward directional

recursions on the original PN A starting at x(0) instead of starting at x(d) on the

reversed net N~'^ [44]. If the method is used with live general PNs, the computation

time per u(A;) is usually less than that of the DP-based LP method. Here, liveness

implies that for a given initial state x(0), the given firing count vector u is not

spurious and there is always at least one firable transition which is a member of the

118

Page 131: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

effective firing count vector ii at each of the reachable states. A member of ij during

the computation means that the transition has not fired yet and should fire at the

present state or at any of the succeeding states. Note that a live PN {N,x{0)) with

a given firing count vector u is also live at {N-\x{d)). Live PNs are strategically

significant in the reachability analysis.

The method uses d LP steps on an originally given PN, thus reducing the com­

putational hazards. The objective function can be formulated easily with little ma­

nipulations of the basic objective function.

9.2 Deduction

The next equation can be obtained from equation (2.12):

J = X^ e*{x(A;)} = e*x(l) + e*x(2) + . . . + e*x(d). (9.1) it=i

If JQ = 0.0, then the objective function value at any firing instance A;, 1 < A; < d

is expressed as

j ; = J*_^ + e*x(A;), A; = 1, 2, • • •, d. (9.2)

Considering the set of constraints as expressed by equation (2.13) for formulating

the method, the problem is to find an optimal LFS {u*(A;)},A; = 1,2, • • •, d so that,

T* mm u(k) G U

[e*{x(A;-l) + au(A;)}

+JUi + Y.yKk)+y''{k)'eY.Si{k) 1=1 1=1

(9.3)

subject to:

j I-m,xm. •tm.xm ^mxl '-^mxn\

^mxl ^Ixm . 'Ixl ^Ixn

\ a ^nxm C/nxl -^nxn '

X

I u{k) \

y\k)

y\k)

\ s{k) J

119

Au(A;)

.'^Ixl

Vx(0) + aE-=i^^*(j)/

(9.4)

Page 132: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

For A; = 2,3, • • •, d.

Au(A;) = Au(A; - 1) - u*(A; - 1)

x(A; - 1) = x(A; - 2) + au*(A; - 1)

and for A; = 1, Au(l) = u, x(0) and d are fixed. [ (9.5)

Note that J o = 0 , a n d

x{d) = x(d - 1) + au{d) is also fixed.

Here, the objective function is deduced based on the basic principle of DP for

forward directed recursion.

9.3 Advantages

The following are the advantages of the FDP-based LP method.

• This is a straightforward recursive method for finding a LFS of PNs using d itera­

tive steps with reasonable computation time per u(A;). The method is good enough

for large PNs as well as for large problems. The longer is the LFS, more are the

advantages in using this method.

• This is a forward-recursive version of the DP method using d LP steps. Reported

in [44], FDP-based LP has the same time complexity as that of the DP-based LP

method, which is just 16d~^ times that of the LP method introduced in [18].

• TCC, TC, NDC and FCF PNs are subclasses of PNs [51]. A PN in which the set

of places in every directed circuit contains a trap is called a TCC net. A net in which

the set of places in every directed circuit is a trap is called a trap-circuit net or TC

net. For a forward-confiict-free net (FCF net), each place has at most one outgoing

arc. In a nondecreasing-circuit net, the token content in any directed circuit is never

decreased by any transition firing. The method can compute TCC, TC, NDC and

FCF PNs. For these subclasses of PNs, the DP-based LP method occasionally en-

120

Page 133: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

counters critical transitions on the reversed net [44].

• The method always computes a LFS from x(0) to x(d), provided that the critical

transitions do not fire [51].

9.4 Time Complexity

Recalling section 8.6, it can be shown in an exactly similar way that the FDP-

based LP method has a time complexity which is just 16d~^ times that of the LP

method introduced in [18]. The FDP-based LP method has a semi-polynomial-time-

complexity.

The ratio of the number of variables of the FDP-based LP method at each LP

step and that of the method described in [18] is, r = ^ g f g g = ( i + j ^ ^ , ) ^

( | + ^ ) ^ 2 d - ^

The ratio of the number of constraints of the FDP-based LP method at each LP

step and that of the method described in [18] is, ^ = J ^ ^ t S ) ! ^ ( S S l & ^ 1^ d-\

9.5 Computation Time

Size of the matrix A is (n + m + l)(n + 2m + l). Therefore, time per single iteration

toPLP is,

tDPLP = c{n + m+l){n + 2m + l). (9.6)

Time per u(A;), TDPLP is,

TDPLP = tDPLP = c(n + m + 1) (n + 2m + 1) = Constant. (9.7)

Therefore, time per u(A;) is a constant under ideal conditions. Other factors involved

in computation time are ignored.

I A 1= ( m + n + l ) ( 2 m + n + l ) . The net size = | P | + | T | + | P \=n+m+gxnm

(for a GPN). The ratio of the netsize to | A | is 77 = (^^m-fli("2+l-^i•) •

121

Page 134: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Ratio of the total number of constraints between the single step LP and that of

the FDP-based LP method is,

id-l)

« = - ( I T i T ^ - (9.8) ^ m ' m>

If a Revised Simplex DLPRS routine is used, the ratio of the number of variables

between the single step LP and that of the FDP-based LP method is,

If a two-phase simplex subroutine is used, the ratio of the number of variables

between the single step LP and that of the FDP-based LP method is,

{m + d + nd + md) . , (d - 1 ) , , ,

-> = (n + 2m^i) = [" - ( ^ W i ) i - ("•"J ^ ' ^m m'

9.6 Example

Consider the PN N in Figure 9.1 with an initial marking x(0) = [1,0,0,0,0,1,1]*,

a final marking x(d) = [1,1,0,0,1,0,0]* obtained with u = [2,2,1,2,2,1,4]* and

d = 14. Traps {pi,P2,P4,P6} and {pi,Ps,P5,P7} are marked at x(0). This also implies

that the minimal and the basic traps [51] are marked at x(0), which is a sufficient

condition for liveness. A LFS is computed using the FDP-based LP method as,

a"=(t7, t2, te, t4, ty, t2, t4, ti, ts, ty, t3,ti, ts, ty). The Reviscd Simplex package routine

DLPRS [34] is used for the computations. The same obtained with a two-phase

Simplex subroutine [58] is (t7,t2,t4,t6,t7,t2,t4,ti,ts,t7,ts,ti,ts,t7).

9.7 Unimodularity

Finding a LFS a, which is legal on x(0) with respect to u is an all-integer-programming-

problem. Recalling section 6.6, the definitions 6.6.1 and 6.6.2 are important in con­

nection to the discussion which follows in this section. The properties of Unimodu­

larity [33] play a vital role in deciding the reachability. The FDP-based LP method

122

Page 135: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Figure 9.1: A GPN (A^,x(0)).

has solutions to its obvious LP formulations which are automatically integer valued:

the extreme vertices of convex polyhedral constraint sets are known to have integer

components, given integer data. This useful property emanates due to the very spe­

cial structure of totally unimodular constraint matrices: a subdeterminant can only

take one of the possible values from 0, +1 and -1.

Under satisfaction of the condition of total unimodularity, it is possible to predict

that the linear program for finding a LFS of PNs will necessarily have integer valued

solution. There have been considerable efforts to characterize the set of unimodular

matrices in a manner which would allow easy identification; but for general problem

cases, this effort has failed [55]. Classes of such matrices are identified: GPNs are

more amenable to such matrices, whereas unrestricted PNs with arc weights greater

than unity have less chance of making the matrix A totally unimodular. An example

of the totally unimodular constraint matrix A follows:

123

Page 136: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Figure 9.2: APN N with a totally unimodular constraint matrix A.

Consider the net in Figure 9.2. The incidence matrix a is,

- 1 0 1

a = 1 -1 0

0 1 - 1

From a, the input arc incidence matrix a~ is.

/ \ 1 0 0

a = 0 1 0

0 0 1

The constraint matrix A for the FDP-based LP method is,

/ \ . 3x3 . 3x3 Osxl Osx3

A eix3 Oix3 hxl Oix3

L .^3x3 C>3x3 C>3xl .^3x3 ,

A unity matrix Imxm is always totally unimodular having any subdeterminant

value equal to unity. Therefore, all of the Jsxs unity submatrices are totally unimod-

124

Page 137: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

ular. An eix3 submatrix can only have hxi square submatrices with subdeterminant

values equal to unity. An Osxs submatrix is totally unimodular having the subde­

terminant values equal to 0. Also Osxi or Oixs submatrices are totally unimodular

having the subdeterminant values equal to O(zero). The product of two totally uni­

modular matrices is again a totally unimodular matrix, since, 0 x 1 = 0, O x - l = 0,

l x - l = - l , - l x - l = l and 1 x 1 = 1. Therefore, the constraint matrix A for the

net in Figure 9.2 is totally unimodular. From this example, an important observation

follows. Whether the constraint matrix A of the FDP-based LP method is totally

unimodular or not depends completely on whether the incidence matrix a~ is totally

unimodular or not.

The next results on the properties of unimodularity and total unimodularity are

important in connection to the FDP-based LP method.

Theorem 9.7.1

If the incidence matrix a~ is totally unimodular, the matrix A of constraint coeffi­

cients in equation (9.4) for the FDP-based LP method is also totally unimodular.

Proof:

• Clearly the unity submatrices Imxm and Inxn are totally unimodular. 7ixi has the

subdeterminant value equal to 1. Any zero submatrix is totally unimodular having

the subdeterminants equal to 0. The vector e^^i is totally unimodular having the

subdeterminant values equal to unity.

• -As 0 X 1 = 0, 0 X - 1 = 0, 1 X - 1 = - 1 , - 1 X - 1 = 1 and 1 x 1 = 1, therefore if

a~ is totally unimodular, the result follows immediately.

• If a~ is not totally unimodular, then as a" is a submatrix of A, the result follows

directly.

• Next consider the case where the constraint matrix A is totally unimodular but

the incidence matrix a~ is not. If the matrix a~ is not totally unimodular, then

125

Page 138: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

there is some square submatrix of a~ whose subdeterminant value is neither ±1 nor

0. But any square submatrix of a~ is also a square submatrix of A, since a~ is a

submatrix of A. Since the matrix A is totally unimodular, from the definition of total

unimodularity, this is impossible. Hence, this case is not feasible. Q.E.D.

126

Page 139: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 10

THE PONTRYAGIN'S MINIMUM PRINCIPLE-BASED LP METHOD

The difficulties associated with control systems are common to practical system

modeling issues. These difficulties give rise to optimal control problems relating to

the dynamics of a system. Some of these are discrete in nature and the rest are

continuous problems. Discrete Time Pontryagin's Minimum Principle (DTPMP) was

introduced for optimal control problems which are basically discrete in nature. There­

fore, for computing optimal control vector sequences, DTPMP can effectively be used

for the computations. This requires that the reachability problem with a prespeci­

fied u and d be formulated as a two-point-boundary-value-problem (TPBVP) and the

Hamiltonian function which needs to be minimized be properly formulated. In design­

ing a computational method which is based on the DTPMP was particularly complex

and require additional supporting techniques. A technique like LP can conveniently

be used for computing a legal firing vector at each stage of the computation. This is

possible if the reachability problem is reformulated as a multi-stage decision problem

to apply the DTPMP. A heuristic algorithm for avoiding the firing of potential criti­

cal transitions is needed if the desired algorithm is an approximation algorithm. To

make the computational process self-sufficient, automatic and user interaction inde­

pendent, the heuristic algorithm supports computation of the Pontryagin's Minimum

Principle(PMP)-based LP method.

10.1 Introduction

For the reachability problems considered in this dissertation, only one enabled tran­

sition is allowed to fire at each firing k. Therefore, this is an all-integer-programming-

127

Page 140: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

problem having fixed initial and final states as well as a fixed length of the LFS d. The

semi-polynomial-time-complexity algorithm of the PMP-based LP is discussed in this

chapter. With OP-based LP, the total number of constraints and the total number of

unknown variables increase whenever there is an increase in the length of the firing

vector sequence d. However, for the PMP-based LP method, the given optimization

problem is subdivided into d subproblems and the total number of constraints become

about 2 to that using only one LP step. Similarly, for the PMP-based LP method,

the total number of variables become ^ to that using only one LP.

Fundamental concepts of optimal control theory are combined with the LP tech­

nique and PN theory to deduce the PMP-based LP method. The PMP-based LP

method can effectively be used to compute LFSs in PN models of practical control

systems with a prespecified u and d.

To evaluate the performance of a system model quantitatively, the designer selects

a performance measure. An Optimal Control is defined as one that minimizes (or

maximizes) this performance measure. For a PN model, the performance measure is

the objective function J for the reachability analysis. For using the PMP with the

reachability analysis, the objective function is defined as follows:

(d-1)

J = iP{x{d))+ Yl l{x{k),u{k)). (10.1) k=0

In the above formulation, -0 and / are scalar functions.

10,2 Discrete Time Pontryagin's Minimum Principle

Pontryagin's discrete time minimum principle (DTPMP) [35] states that an optimal

control must minimize the Hamiltonian function H [35]. The Hamiltonian function

related to the reachability analysis with a prespecified u and d is described in an in

depth manner latter in this chapter.

128

Page 141: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Mathematically, this implies that if u*(A;) is an optimal firing vector which causes

the objective function J to have a relative minima at a particular firing k, k =

0,1, 2 , . . . , (d - 1), then the following condition holds true:

J(u(A:)) - J{u*{k)) = AJ(u*(A;), 5u{k)) > 0. (10.2)

In equation (10.2), u(A;) = u*(A;) + Su{k). From the Taylor series expansion, the

increment in J{u{k)) can be expressed as:

AJ(u*(/c), 5u{k)) = 5J{u*{k), Su{k)) + higher - order terms. (10.3)

10.2.1 Comments

The following comments apply to DTPMP.

1. There is a certain degree of uncertainty in deciding an optimal firing vector. It may

not be possible to know in advance whether an optimal control exists. This implies

that it may not always be possible to find a control which is

(a) admissible, and

(b) causes the system to follow an admissible trajectory.

2. Even if an optimal control exists, it may not be unique. A non-unique optimal

controls may complicate the computational procedure.

3. The optimal firing vector u*(A;) causes the objective function to be minimized.

This minimization involves:

(d-1) (d-1)

r = ^(x*(d)) + Y Kx*{k),u*{k)) < ^(x(d)) + Y l{x{k),u{k)Y (10.4) fc=0 fc=0

All firing vectors u(A;), u(A;) G U, make x(A;) G X, where X is the set of admissible

states and U is the set of admissible firing vectors. The above inequality states that

an optimal control and its trajectory cause the objective function to have a value

smaller than or equal to the objective function value for any other admissible control

129

Page 142: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

and trajectory. The goal is always to find the absolute or global minima of the

objective function J, not simply the local minima.

10.3 State Equation

For a discrete time system, the state equation can be written as,

x{k + 1) - x(A;) = /(x(A;), u(A;), A;), A; = 0,1,2, . . . , (d - 1), (10.5)

where / is a function in x{k),u{k) and k. Then rewriting equarion (10.5), equation

(10.6) results:

x(A; + 1) = x(A;) + /(x(A;), u{k),k) = f{x{k), u{k)). (10.6)

10.4 Derivation

-A discrete time optimal control problem is a two-point-boundary-value-problem

having the fixed boundaries x(0) and d. The discrete time optimal control problem

with terminal constraints and a fixed terminal time d is formulated by equations

(10.7) through (10.11). It is assumed that the state x(A;) at firing A; is n-dimensional

and the firing vector u(A;) at firing A; is m-dimensional. The function / has n dif­

ferent components that behave in a manner which results in the system described

by equation (10.7). An initial condition for equation (10.7) is defined by equation

(10.8) and the former equation yields a unique solution, provided that the control is

specified. The set of admissible firing vectors U is an important component of the

optimal control problem. A set of equations which form a basis for the derivation of

DTPMP follows.

x(A; + l) = /(x(A;),u(A;)). (10.7)

130

Page 143: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

There is a (fixed) initial condition which is defined on an Euclidian real space P".

This initial condition is:

2 (0) = ^0- (10.8)

-A set of allowable firing vectors which are defined on an Euclidian real space P'"

satisfies:

u(A;) eUCR^. (10.9)

-A set of terminal state constraints are given by,

Xi{d) =Xdi, i = l,2,---,n. (10.10)

-An objective function which is to be minimized is stated as follows.

d-1

J = V(x(d)) + Y l{x{k),u{k)). (10.11) k=Q

The terminal constraints defined by equation (10.10) take a form of specification for

the final values of state variables. The number of variables is n (the dimension of

the state). In equation (10.11), both tp and I are scalar real-valued functions of their

respective arguments. The term 'ip{x{d)) is the contribution of the specified final

state to the objective function. The summation term represents a contribution that

accumulates over firings of transitions. A specific problem may have either V' or I

equal to zero but not both.

This interpretation of the optimal control problem defined by equations (10.7) ~

(10.11) is straightforward and important because of the reasons which follow. The

control function u(A;) is unknown at A; = 0,1,2, • • •, (d — 1) (d is specified). Once this

control function is specified, it determines, using equation (10.7) and equation (10.8),

a unique state trajectory x(A;), A; = 0,1, • • •, (d— 1), d. This trajectory and the control

function determine a value of J according to equation (10.11). The optimal control

problem is to find the control function u(A;), A; = 0,1, • • •, (d — 1), which satisfy the

constraint equations (10.9) and (10.10), providing the smallest possible value of J.

131

Page 144: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

To characterize an optimal control, u(A;) is allowed to change in arbitrarily small

amounts and requires that it does not increase the objective function value. Since

a change in u(A;) also changes x(A;), it is rather difficult to carry out this plan and

directly determine the net influence on the value of the objective function.

The Hamiltonian function H is defined as,

H{X{k + l),x{k),u{k)) = A*(A: + l)/(x(A;),u(A;)) + /(x(A;),u(A;)). (10.12)

Here, A(A; +1) is an {n x 1) vector which is known as the adjoint vector. Each element

of A (A; + 1) is known as an adjoint element.

From the definition of the Hamiltonian, the following is true:

/(x(A;), u(A;)) = H{X{k + l),x{k), u{k)) - A*(A; + l)/(x(A;), u(A;)).

That is,

/(x(A;), u(A;)) = P(A(A; + l),x(A;), u(A;)) - A*(A; + l)x(A; + 1). (10.13)

In terms of the Hamiltonian, the objective function takes the following form,

d-1

J = xlj{x{d)) + Y{H{Hk + l),x{k),u{k)) - A*(A; + l)x{k + 1)}. (10.14) fc=0

Assume that a control function u(A;), satisfying the constraint u(A;) e U is spec­

ified. This determines a corresponding state trajectory x(A;). Considering a small

change in the control function to a new function v{k) G U. This change is small in

the sense that the absolute value of the difference is small for each component of the

control. This implies that

\ui{k) - v^{k)\ < e (10.15)

for each i. In equation (10.15), e is a very small quantity. This new control leads to

a new trajectory, which can be written as x(A;) + Sx{k). Denote the new value of the

objective function which results due to the new control by J = J + A J. Therefore,

the change in the terminal value of the state is 5x{d). The new terminal state is

132

Page 145: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

actually x(d) + 5x{d), since the terminal firing d is fixed but the terminal state x(d)

is not fixed. Denote the new terminal state as x(d) + Ax(d), then Ax(d)= Sx{d).

From the above preliminaries, AJ follows.

A J =J-J

= {tlix{d) + Ax{d))-'tP{x{d))}

+ Efzl[H{X{k + l),x{k) + 6x{k),v{k))

-X{k + lY{x{k + 1) + 5x{k + 1)} - H{X{k + l),x{k),u{k))

+A*(A; + l)x(A; + l)]. (10.16)

The first term, ij){x{d) + Ax(d)) on the right-hand side of eq. (10.16) is now

considered using the Taylor series expansion. Then

i){x{d) + Ax(d))

= ^{<d)) + [ ^ ^ ^ ^ ] [ < ^ ) + ^<d) - ^(^)]

= ^(x(d)) + i)x{x{d))5x{d) {since Ax{d) = 5x{d)). (10.17)

Therefore,

A J =J-J

= {tP{x{d)) + tPx{x{d))Sx{d) - tp{x{d))}

+ Ef=l[H{X{k + l),x{k) + 5x{k),v{k))

-A*(A; + l){x(A; + 1) + 5x{k + 1) - x(A; + 1)}

-P'(A(A; + l),x(A;),u(A;))].

133

Page 146: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Finally,

A J =J-J

= {^(x(d)) + V',(x(d))Ax(d) - ^(x(d))}

+ Y:tl[H{X{k + l),x{k) + 6x{k),v{k))

-X\k + l){5x{k + l)}

-H{X{k + l),x{k),u{k))].

From the Taylor series expansion,

P-(A(A; + 1), x(A:) + 6x{k), v{k)) = P(A(A; + 1), x(A;), ;(A;))

+Hx{X{k + l),x{k), v{k))Sx{k) + terms of higher order

{s.nce mMk^l)Mk).v(k)) ^ H4Xik+lUW,vm)- (10.18)

Neglecting the higher order terms,

A J = {t^,(x(d))5x(d)} + Efr/[{Px(A(A; + l),x(A;),i;(A;))

-A*(A;)}5x(A;) - A*(d)5x(d) + A*(0)(5x(0)

+{P(A(A; + l),x{k),v{k)) - H{X{k + 1), x{k), u{k))}].

Note that 5x{0) = 0, because a change in the control function does not change the

initial state. Thus, the term A*(0)(5x(0) on the right hand side of the above expression

is 0. The vector A(A;) is the adjoint vector which is selected as a solution to the adjoint

difference equation. Then

A*(A;) = Hx{X{k + l),x{k),v{k)). (10.19)

For the problems under consideration, the final state x(d) is specified and fixed.

Then Ax(d) = 5x{d) = 0.

Finally, the expression for AJ becomes,

A J = xi[P(A(A; + l),x(A;),^;(A;)) - P(A(A; + l),x(A;),u(A;))]. (10.20) fc=0

134

Page 147: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

The vectors A(A; + 1), x(A;) and u(A;) are known and are independent of v{k).

Equation (10.20) gives a simple way to calculate the consequence of a change to a

new control function v{k). This can be used to deduce the conditions for global

optimality by introducing a more general concept of Directional Convexity.

For continuous-time systems, the actual change in control function can be large

over a very short interval of time. The change in the state trajectory due to control

function changes is small for all times because the state depends on the integral of

control function [24, 25, 29, 30, 31].

The interval in a discrete event system is finite and fixed. If a change from u(A;)

to v{k) in the control function at firing k is not small, the change 5x{q) of the state

trajectory at firing q, q > (k + l) is not guaranteed to be small. Therefore, in discrete

event systems, an optimal solution derived from calculus of variations under condition

of I Ui(A;) — Vi{k) |< e may be local. Some conditions must be imposed on the system

behavior to have a global optimal solution in discrete time systems. The concept of

directional convexity is important for deriving DTPMP.

Definition 10.4.1

z-directional convexity: The following requirement is known as the z-directional con­

vexity [31].

ra + {l-T)b + Pz G y{k,x{k)),

witha,b G y{k,x{k)),

andr G [0,1], /3 > 0, (10.21)

also y{k, x{k)) = {f{x{k), u{k)) : u(A;) G U and x{k) G P"} ,

where U is the set of firing vectors,

z is a nonzero vector.

135

Page 148: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

The following are the required assumptions for deriving DTPMP.

Condition (1):

The matrices fx{x{k), u{k)) are non-singular for all A;, A; = 0 , 1 , . . . , (d - 1).

Condition(2):

The set u;(x(A-))= {{l{x{k), u{k)), f{x{k),u{k))*) : u{k) G U} is closed and ^-directionally

convex for every x(A;). Here the superscript t denotes transpose.

Condition(3):

The matrices fx{x{k), u{k)) are ^-directional matrices for all A;, A; = 0 , 1 , . . . , (d - 1).

DTPMP is derived with directional convexity. This directional convexity is weaker

than convexity and considerably extends its applicability. Though convexity has

appeared to be basic in the development of optimal control theory, it is only the

weaker property of directional convexity which is required for much development [24,

25, 29, 30, 31].

-A summarization of a complete set of conditions for global optimality of optimal

control problems follows. In the original problem, it is necessary to obtain u(A;),x(A;),

and d which satisfy equation (10.7). An initial condition given by equation (10.8)

and the constraints which are expressed by equations (10.9) and (10.10) are required

in minimizing the objective function expressed by equation (10.11).

10.5 Statement of the Pontryagin's Minimum Principle

Recall section 3.4. Assume x(A;) (A; = 0 , 1 , . . . , d) and u(A;)G U {k = 0,1,.. .,d-l)

to be an optimal solution to a given problem with a fixed terminal firing d. Then

there is an adjoint trajectory A(A;), A;=0,1,..., d, and a constant Ao > 0 such that

u{k),x{k),X{k) and AQ under conditions(l), (2), and (3) satisfy equations (3.10)

through (3.16).

For a PN reachability problem, f{x{k),u{k)) = x(A;) + au(A;).

136

Page 149: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

The objective function J, the Hamiltonian function H and the adjoint equations

are given by equations (3.7), (3.8) and (3.9). The set R = w{x{k)) follows:

w{x{k)) = {[e^^i{x(A:) + au(A;)}, {x(A;) + au(A;)}*]|u(A;) G U}. (10.22)

Here, u(A;) > 0. The constant A(0) should be computed for minimizing the total

number of moving tokens. After each iteration, a new A(A; + 1) should be computed

which is based upon A(A; + 1) = A(A;) - Aoe^xi-

10.6 Convexity Properties of the Computational Solutions

-A subset U of R^ is convex if and only if for all pairs of points u{i) and u{j) in

U, any convex combination, u{l)=aiu{i) + a2u{j) is also in U. Here, i, j and I are

integer indices for the points in the set U. Also, ai > 0 and a2 > 0. But E L I ^i = 1

is a restriction on the values of ai and 0!2. In general, a convex combination of points

u(l), u(2) , . . . , u{d) from a convex set is another point u{q) in the convex set which

satisfies:

u{q) = Q;IU(1) + a2u{2) + ... + adu{d), (10.23)

where d

Y(^i = ^- (10.24) 2 = 1

For a given convex set U, a convex combination of any number of points in U is also

inU.

The computed optimal firing vectors u*(A;), A; = 0,1,2, . . . , (d — 1) form the ex­

treme points of a convex polyhedron in m-dimensional Euclidean space R^. These

firing vectors are extreme feasible solutions. Therefore, the set of control vectors U

does not satisfy convexity and the relaxed z-directional convexity requirement be­

comes necessary. A set of firing vectors U form a convex polytope C, which is the

envelope of the corresponding convex polyhedron.

137

Page 150: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

10.7 LP Relaxation

Since finding LFSs of PNs is an all-integer-programming-problem, a relaxed LP

technique can be used. A relaxed LP method can be combined with the PMP by

subdividing a complete problem into d small problems, where d = 2]S:i ^i is the

length of the LFS. The PMP-based LP method can be used to find a firing vector at

each subproblem stage. Therefore, it is possible to compute LFSs of PNs by applying

the relaxed PMP-based LP method to a given reachability problem.

To apply the PMP to a given problem, the basic objective in finding LFSs of PNs

is to minimize the Hamiltonian function H at each firing A;, A; = 0 , 1 , . . . , (d — 1). A

LFS for a PN reachability problem can be computed by the PMP-based LP method

as described in equarions (3.17), (3.18), (3.19) and (3.20). In the PMP-based LP

method, the term £" is a very small positive quantity, AQ = 1 for a nondegenerate case

with the DLPRS subroutine and XQ = ^ where 1^ is a non-zero, positive quantity

for a two-phase simplex subroutine. The term AQ = 0 for a degenerate case.

-A heuristic procedure to avoid critical transitions: The heuristic procedure which

follows is strictly limited to GPNs.

1. First determine each and every marked place containing exactly one token. Denote

this set as PM = {Pm} for m = 1,2,..., u.

2. Find all transitions tjm G T which are at the output of each of the places pm

and which are members of the effective firing count vector u{k), i.e., tjm G u(A;) with

A; = 0 , 1 , . . . , (d - 1). Denote this set as Tout- Hence Tout = {tjm} for j = 1,2,..., r

and m = 1,2,... ,u.

3. Trace all paths (mark as visited) from each of the nodes tjm G Tout for j = 1,2,..., r

and a certain p„ G PM at each firing A; with A: = 0 , 1 , . . . , (d - 1) to its originating

marked place Pm at step 1. If no paths are traced (or visited), go back to step 1 for

a new Pm G PM-

138

Page 151: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

4. Trace (label as visited) the set of places {pji} for i = 1,2,..., 5 and for each

transition tjm G Tout where j = 1,2,... ,r on the existing paths to its originating

marked place Pm. at step 1 during the tracing (labelling) process. This tracing is done

such that no place { Pji } within the path currently under labelling for z = 1,2,..., s

has input transitions tj^ where x = 1,2,.. .,h. These input transitions are members

of the effective firing count vector u(A;) at firing A;, 0 < A; < (d— 1). These transitions

are not on the current path under labelling. This is done to avoid traps. Also trace

(label as visited) the set of transitions Tjm on the paths starting from the transition

tj to a place pm-

5. Continue step 3 for a particular place pm G PM for each tjm G u(A;) and tjm G Tout

where j = 1,2,..., r . If the set {pji} has at least one marked place such that tjm G

u(A;) and tjm G Tout with j = 1,2,..., r and for that particular place pm € PM, then

no critical transition or critical siphon exists around this particular place Pm PM-

6. Otherwise, denote the set of transitions {tg^} C {tjm}, c = 1,2,.. .,w for which

the set of marked places within the set {pji}, z = 1,2,..., s are empty as Tc-

7. If there exists at least one path in step 3, from some originating marked place

Pm in step 3 to some transition tg which is a member of Tc, then find the set of

transitions Tz = {tmz} with z = l,2,...,x connected to the place Pm- This place Pm

for a particular m needs to be enabled at firing k such that tg 0 Tz and firing of tg

makes Pm token-free at firing (A; + 1) with {tmz} Q {{tjm} \ tc} where j = 1,2,..., r.

8. Each transition tcrit G Tz is a suspected critical transition at firing A; and at x(A;).

It is possible to avoid deadlocks for most of the computations by suppressing each

of these critical transitions tcrit e Tz- If this heuristic procedure is used with the

PMP-based LP method, it may be possible to avoid critical transitions.

139

Page 152: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

10.8 Computations in Unrestricted Petri Nets

An example is considered to show the computation which uses the PMP-based LP

method in unrestricted PNs,

Example 10.8.1

Integer optimal firing vectors u(A;), A; = 0,1, 2 , . . . , (d - 1) are not always obtained

by applying the relaxed PMP-based LP method to a given problem. The following

example refers to Figure 2.1.

1. Consider the reachability problem for x(0)=[0,3,0,0,0]*, x(d) = [0,2,1,0,2]* ob­

tained with u = [1,3,4,1,2]*. The total number of firings d is finite, fixed and is

equal to 11. Each interval is also fixed and it is 1. For A; = 0,1,2, . . . , 10, u(A;)s are

only defined by integer elements. A LFS a is defined by the number of finite points

corresponding to the firing vectors u{k). A; = 0,1,2, . . . , 10. But the convex hull of a

finite number of points in some space is a convex polyhedron [21]. Hence, o is defined

by the extreme points of a convex polyhedron in a m-dimensional space corresponding

to the firing vectors of the sequence {u(A;)}, A; = 0 , 1 , . . . , (d — 1).

2. From step 1, the set u;(A;)={au(A;) : u(A;) G [/, A; = 0,1,2, . . . , (d - 1)} is also finite

and fixed and the members of u;(A;) are defined by the extreme points of a convex

polyhedron. Each element of u;(A;) is an (n x 1) column vector at each firing A; where

0 < A; < (d - 1) with all integer elements and it is an extreme point of a convex

polyhedron in a n-dimensional space.

3. The adjoint coefficients A*(d) = [0.0,1.0,1.0,1.0,1.0] is a set of computed elements

for the adjoint trajectory.

4. Under these constraints, finding a LFS a implies that the PMP-based LP method

can be used with a two-point boundary value problem.

5. The computation which uses a revised simplex DLPRS routine starts at x(0) with t2

firing first for three times. Then ts fires with u(3)=[0,0,1,0,0]* and x(4)=[2,0,2,0,0]*.

140

Page 153: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

But u(4)=[0.33, 0.00, 0.67, 0.00, 0.00]* with x(5)=[1.3333, 0.66667,1.66667,0,0]*. Here

i:Li^^i(4) = 1. Also u(5)=[0.22,0.00,0.78,0.00,0.00]*, with x(6)=[1.5556,l.1111,1.nil,

0.0,0.0]* and so on. During the computation of u(4) and u(5), the computation is never

deadlocked.

6. -A firing vector u(A;) also represents the corresponding firing transition tp(A;) in a

LFS a at firing k, where A; = 0 , 1 , . . . , (d - 1 ) . Then at each firing k, only one element

of u(A;) is 1 and the rest of the elements are 0. Therefore, u(4) and u(5) in step 5 are

meaningless and one of the necessary and sufficient conditions for the existence of an

integer optimal solution is violated.

7. This violation could be avoided, if a branch and bound technique as has been

introduced originally by Land and Doig [2] is used at each stage of the original

computations. This combined strategy is effective when a fractional firing vector

is encountered at some stage of the computations. Using the Land-Doig procedure,

a computed LFS is crj!i:=(t2,t2,t2,t3,t3,ts,ti,ts,ts,t5,t4).

8. For this particular problem, use of a branch and bound technique to a fractional

solution of the relaxed PMP-based LP method yields the desired integer firing vector.

This is not true for any relaxed LP problem. There are other integer programming

techniques. Some of the most efficient ones are the Branch and Exclude method of

enumeration and the Partition algorithm.

9. For computations with a two-phase simplex subroutine, the scenario is differ­

ent. With a computed A*(d)=[-0.110000,0.890000,0.890000,0.890000,0.890000]* and

Ao = 0.0099999998, the firing vectors at the A; = 0,1,2 are [0,1,0,0,0]*, [0,0,1,0,0]* and

[0,0,0,0,1]*, respectively. But at A; = 3, the solution vector breaks down into fractional

components and from A; = 4, the computational process gets into a deadlock.

141

Page 154: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

10.9 Advantage

To avoid unnecessary searching with the PMP-based LP method, only extreme

feasible solution points are checked. The constraints are satisfied on the variables to

be determined. The method computes an optimal firing vector at each iteration with

a properly calculated A*(d). This optimal firing vector is computed as an extreme

feasible solution point. This reduces the computational burdens.

10.10 z-Directional Convexity

Linear algebraic concepts are fundamental to the formulation of the PMP-based

LP method for computer implementation. A brief analysis on the convexity and

the 2-directional convexity is presented here. Basic terms and notations which are

used here appear in the commonly available texts on linear algebra. Some important

definitions in connection to the analysis follows.

Definition 10.10.1

z-directionally convex set: If z is a nonzero vector, then a set 5 is said to be z-

directionally convex [31] provided that for each a, 6 G S, each r G [0,1], there is a

factor /5 with /S > 0 such that

ra + (1 - T)b + ^zeS. (10.25)

Definition 10.10.2

z-directional matrix: A matrix M is said to be a z-directional matrix [31] if for each

and every z-directionally convex set S, the set

Q = {Mx: xeS} (10.26)

is also z-directionally convex. 0

142

Page 155: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Assume T stands for the transformation of a function from P"" to P" which

takes any m-vector to the corresponding n-vector. The notation P"" denotes an m-

dimensional Euclidean space and any n-dimensional Euclidean space is denoted as

P". For example, the objective function in the PMP-based LP method represents a

transformation from P" to P, as

T([x(A;) + au{k)]) = r([x(A;)]) + T{{au{k)])

= {A*(/c + 1) + A* }{x(A;)} + {A*(A; + 1) + A*}{au(A;)}

= A*(fc) X {x(A;) + au(A;)} = A(A;) x x(A; + 1).

The vector A*(A;) x {x(A;) + au(A;)}=A(A;) x x(A; + 1), where A(A;) x x(A; + 1) is a

transformed vector in a P-dimensional Euclidean space. Here, A(A;)= A*(A;) is a

standard matrix for the transformation. Suppose that T is a transformation from a

P'^-dimensional space y{k) to a P" dimensional space w{k), which transforms each

element of a set y{k) to an n-vector au(A;). Each element of the set y{k) is an m-

vector u(A;) and an n-vector ou(A;) is an element of the set u;(A;). Therefore, T{u{k)) =

au(A;) = Au(A;). Then A = a is a standard matrix of the transformation. Since a

is an nx m incidence matrix, and if j P |=| T |= n, then a is a linear operator of

the vector space P'-^', provided that the n x n determinant of the matrix a is non-

singular. A transformation from a vector space y{k) to a vector space u;(A;) is a linear

transformation and a is a standard matrix of the linear transformation. If m = n,

then the transformation T is invertible. The notation P in this case represents an

inverse transformation from a set w{k) to a set y{k). Hence,

P(au(A;)) = u(A;). (10.27)

However, a'^ x au{k) = u{k) and R{au{k)) = a"^ x au(A;) with B=a-'^ is a standard

matrix of transformations. Therefore, the product AB = aa~'^ = Inxn is a unity

143

Page 156: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

matrix and the incidence matrix a bears the properties of an invertible matrix, pro­

vided that the rank of the matrix a is n. If n ^ m, then the inverse of the matrix a

does not exist and the matrix T is not invertible. Even if m = n, a transformation

T with a standard matrix a may be invertible, but it may not be injective or one

to one. For different u(A;)s in a set y{k) where 0 < A; < (d — 1), the matrix a may

contain identical column vectors corresponding to the firable transitions. However,

u(A;)s corresponding to these transitions are not identical even though au(A;)s are

identical. For example, consider the Free-Choice PN in Figure 10.1 with an initial

marking x(0)=[3,0]* and a final marking x(d) = [0,3]* obtained with u = [1,1,1]*. It

is required to find a LFS a from x(0) to x(d). A possible LFS which uses a vector

notation is {[1,0,0]*, [0,1,0]*, [0,0,1]*}. Clearly, u(0) y^ u(l) ^ u(2). The incidence

matrix a is:

a = - 1 - 1 - 1

1 1 1

The vector au(0) = au(l) = au(2). Hence, the transformation is not injective.

However, for each element in a set y{k) = {u{k)}, k = 0,1,.. .,{d-1), there is

a corresponding element in the set w{k) = {au(A;)}, A; = 0 , 1 , . . . , (d - 1) and the

transformation (linear operator) T is surjective.

Figure 10.1: A Free-Choice PN N with x(0).

144

Page 157: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Consider Figure 10.1. Assume that the transition ts is absent from Figure 10.1.

Then x(0) = [2,0]*, x(d) = [0,2]* obtained with u = [1,1]* and d = 2. A LFS from

x(0) to x(d) is to be computed. The incidence matrix a is

- 1 - 1

1 1

-A LFS a = {[L0]*,[0,1]*} exists for which the corresponding transformarion T to

a set u;(A;) = {au{k)} is not injective. Also the determinant of the 2 x 2 incidence

matrix a is D^ = ( -1 + 1) = 0, but the rank of the incidence matrix a is not 2. Hence,

the transformation T and the incidence matrix a are not invertible. Therefore, the

injectiveness and the surjectiveness govern the properties of an Invertible Transfor­

mation from y{k) to w{k). This means that the transformation T with a standard

matrix a is not a linear operator for | P |=| T j.

10.11 A Geometric Approach to the z-directional Convexity

The concept of the z-directional convexity is introduced to extend the applicability

of the results on the optimal control of discrete time event systems. These systems

are described by difference equations such as the PMP-based LP method applied to

the reachability problem. Regular convexity assumptions are always justified in case

of a system of difference equations approximating a system of differential equations

or for a system described by differential equations. These assumptions are not always

justified in case of a system of difference equations describing a control process which

is basically discrete. For finding a LFS <j which uses the PMP-based LP method in a

system which is basically discrete (PNs are used to model discrete time event systems),

the length of a LFS d is finite and fixed and each interval is exactly 1. Therefore,

(7 bears the properties of a set instead of a continuous function and it is necessary

145

Page 158: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

to consider extra convexity conditions imposed by the z-directional convexity to the

data for the reachability problem.

Consider Figure 10.2. A relaxed problem with x(0)=[0,1,1,0]*, x(d)=[0,0,0,1]*

obtained with a firing count vector u=[l, 1,1,1,0]* in a given PN N is considered. It

is demonstrated now that the set of reachable markings does not satisfy convexity

but satisfies the z-directional convexity with a nonzero z-vector.

Figure 10.2: A GPN A'' with reachable markings which do not satisfy convexity.

1. First the state equation as stated in chapter 2 provides

x(A; + l)=x(A;) + au(A;), (10.28)

from which the corresponding difference equation is:

x{k + l)-x{k) = au{k). (10.29)

2. The set w{k) = {au(A;) : u(A;) eU, k = 0,1,..., {d-1)} is important in connection

to DTPMP for finding a LFS a which uses the PMP-based LP method. The incidence

matrix a is

- 1 0 1 0 1

a =

1 - 1 - 1 0 0

0 1 - 1 - 1 0

0 0 0 1 - 1

146

Page 159: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

The set u;(A;) is {[1, -1 , -1 ,0]* , [-1,1,0,0]*, [0, -1,1,0]*, [0,0, -1,1]* }.

3. Consider an instance for verifying the convexity requirements.

[-1,1,0,0] = r][l, - 1 , - 1 , 0 ] + (l-,7)[0, -1,1,0] , with T] G [0,1]. But there does not ex­

ist an rj with 77 G [0,1] which satisfies this instance. A verification with the other pos­

sible combinations show that the set u;(A;) does not satisfy the convexity requirements.

Therefore, the assumptions that the set u;(A;)={au(A;) : u(A;) e U, k = 0,1,.. .,d-l}

is closed, convex and bounded are violated [29]. Computation of a LFS a is an all-

integer-programming-problem and the set of reachable markings for the corresponding

problem does not satisfy convexity.

4. Consider an instance to verify the z-directional convexity,

[-1,1, 0,0] = 77[1, - 1 , -1,0] + (1 - T])[0, -1,1,0] + Pz, where r] G [0,1], /5 > 0 and

z is a vector [zi,Z2,zs,Z4]. This instance of the z-directional convexity is satisfied

with ^ = 2 and 77 = I for a z-vector [- | , 1,0,0]*. Similarly, it can be shown that

there always exists a non-zero z-vector for any possible instance from a set u;(A;) for

verifying the z-directional convexity.

5. Each element of u;(A;) forms an extreme point of a convex polyhedron in (n + 1)-

dimensional space (here, n = 4 for the given example) and the set u;(A;) is closed and

bounded. Note that the boundedness property as was originally introduced in [29]

holds only for a GPN with each arc weight equal to 1. In this case, an incidence

matrix a can only contain -1, 0 or +1 and each element of the firing vector u(A;) is

either a 0 or a 1. For unrestricted PNs, there are no restrictions on the elements of

an incidence matrix a and this boundedness property no longer holds. For a GPN,

an incidence matrix a (the input incidence matrix a~ or the output incidence matrix

a" of a appear in a constraint matrix A) usually satisfies the properties of total uni­

modularity which is no longer true for an unrestricted PN.

147

Page 160: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

• [ 0 , 0 , 1 , 0 ] '

'AHGEHT HYPERPLANES

2 ) « I 0 , 1 , 0 , 0 ] '

Corresponds t o a f r a c t i o n a l marking vector

)= [1 ,0 ,0 ,0 ] '

Outward Honnal t o the Tangent Hyperplane (The Direction of X(l) vector)

Figure 10.3: -A figure for the geometric interpretation of DTPMP.

A tangent hyperplane implies a hyperplane which is tangent to the outward di­

rected normals. This is clear from Figure 10.3. Consider the PN in Figure 10.2.

Figure 10.3 is a state trajectory diagram for the reachability problem correspond­

ing to the PN in Figure 10.2. Each state x(A;), A; = 0,1,2, . . . , d corresponds to a

point in an n-dimensional space (P" dimensional EucUdean space). An application

of au(A;) where A; = 0 , 1 , . . . , (d — 1) takes the state x(A;) to a state x(A; + 1) along the

state trajectory. A direct application of au to a given initial marking x(0) takes the

state directly from a point corresponding to x(0) to a state corresponding to x(d) as

evidenced by Figure 10.3.

There exists a supporting hyperplane at each boundary point of a convex polyhe­

dron which separates it from the rest or the z-shadow of the set [31]. If a reachable

marking is fractional at firing A;, then it corresponds to a fractional firing vector and

is inside a convex polyhedron (Figure 10.3). No supporting hyperplane could possibly

exist at this point which corresponds to a fractional firing vector and which separates

this point from the rest of the set. Thus, DTPMP does not hold for these fractional

markings. For each of the supporting hyperplanes, all points lie on one side of it. The

following result is true.

148

Page 161: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Theorem 10.11.1

If there exists a supporting hyperplane at some point in a convex polyhedron, then

it must be an extreme vertex.

Proof: Prom the definition of a supporting hyperplane [21], all points of a convex

polyhedron must be in one of the two closed half-spaces. There are two types of

points in a convex polyhedron. A point either must be an extreme point or a point

inside. -A proof by case studies is adopted here. Assume P to be a point at which a

supporting hyperplane exists.

Case 1: If P is a point inside the convex polyhedron, then a supporting hyperplane

at P divides all points into two different sets each lying in one of the two closed

half-spaces. This contradicts the definition of a supporting hyperplane. Thus, the

point P cannot be an interior point of a convex polyhedron.

Case 2: If P is an extreme point of a convex polyhedron, then the entire convex

polyhedron lies on one side of the supporting hyperplane. This side is one of the

two closed half-spaces generated by the supporting hyperplane at P. Therefore, by

definition P is an extreme vertex of a convex polyhedron.

Q.E.D.

Lemma 10.11.1

Suppose that (A;) = {x(A;)} where A; = 0 , 1 , . . . , d be a set of integer markings on

a trajectory which is z-directionally convex. Then there is a supporting hyperplane

at each point in the n-dimensional Euclidean space P" which corresponds to an

attainable integer marking x(A;), A; = 0 , 1 , . . . , d.

Proof From the assumption, (A;) = {x{k)} where A; = 0 , 1 , . . . , d is a set of reachable

markings which represents the token count in a given PN A at firing A;. Then Xi(A;) >

0 for i = l , 2 , . . . , n ,A; = 0 , l , . . . , d and the set (A;) = {x(A;)} is bounded from

below. Also a z-directionally convex set satisfies the convexity for ^ = 0. A proof by

149

Page 162: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

contradiction is adopted here. First consider an element of the set (A;) and denote

it as x(j), where 0 < j < d. Assume that at x(j) there does not exist a supporting

hyperplane. It is possible to express x(j) as a convex combination of two other

elements of the set ^(A;), A; = 0 , 1 , . . . d at which supporting hyperplanes exist. In that

case, x(j) divides the elements of (A;) into two sets, one on each side of the hyperplane

passing through x(j). This is impossible, because x(j) is a reachable marking on the

optimal trajectory and should be an extreme point of a convex polyhedron for a given

problem.

Consider now an element x{l) with 0 < i! < d in a set g{k) having a supporting

hyperplane but which is not a reachable marking. Since x{l) is not a reachable

marking, it is not on the optimum trajectory from x(0) to x(d). Therefore, it is

inside a convex polyhedron defined by the elements of the set (A;). A supporting

hyperplane at x{l) subdivides the elements of (A;) into two sets each one on one

side of the hyperplane. This subdivision is impossible according to the definition

of a supporting hyperplane. Therefore, the marking x{l) must lie on the optimal

trajectory and thus is a reachable marking. Hence, x{l) is an extreme point of a

convex polyhedron defining the elements of (A;), A; = 0 , 1 , . . . , d.

Q.E.D.

10.12 An Analysis of the Heuristic Procedure

The heuristic procedure in section 10.7 can be used with the PMP-based LP method

for the two-phase simplex subroutine or the DLPRS routine for detecting and avoiding

potential critical transitions. For the LP subroutines, a technique to avoid the firing

of a potential critical transition differs. If a two-phase simplex method is used with

the PMP-based LP method, then a procedure for suppressing the firing of a potential

critical transition follows. Here, the goal is to maximize the objective function z=c^x

150

Page 163: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

with c*, which is a transpose of the cost-coefficients, c. If a potential critical transition

is detected, the corresponding element in the cost-vector is given a very high negative

value. From the objective function formulation, this transition will never be selected

as a firing transition due to a very high and negative cost-coefficient. Only one

transition is allowed to fire at any firing instance. Thus, making the corresponding

cost-coefficient highly negative will not affect the objective function, because this

critical transition element in the firing vector u(A;), k = 0 , 1 , . . . , (d — 1) is zero.

Hence, the element which corresponds to a potential critical transition in a solution

vector -Y contributes nothing to the objective function. This method of avoiding a

potential critical transition works perfectly.

However, if the revised simplex DLPRS package routine is used with the PMP-

based LP method, then a technique to suppress the firing of a potential critical

transition follows. If the transition tc G T5 is a critical transition at a particular

marking, then an upper bound of Uc(A;) corresponding to the c component emxi,c of

the vector 6^x1 is suppressed to zero.

10.13 Examples

The following examples show results of the numerical computations using the PMP-

based LP method.

Example 10.13.1

The PMP-based LP method avoids the firing of a sink transition in a siphon for a

given PN N which arises due to an asymmetric confusion [51]. Consider the PN in

Figure 10.4.

151

Page 164: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Figure 10.4: An asymmetric confusion at x(0).

An initial marking is x(0)=[0,1,1,1,0]*, a final marking is x(d) = [0,0,0,1,0]* ob­

tained with u = [1,1,1,1]* and d = 4. In using a two-phase simplex subroutine, a LFS

computed with the PMP-based LP method is (t2, t4, ti, ts) for a A*(d)=[-0.175,-0.025,-

0.025,-0.025,-0.175] and XQ = ^ = 0.025. At x(0)=[0,1,1,1,0]*, both transitions ti

and t2 are enabled. Transition ti is a sink transition of the siphons {p2} and {ps,Ps}.

For this problem, the Single step LP method or the OP-based LP method can com­

pute a LFS.

Example 10.13.2

The PMP-based LP method shows good computational performance in a GPN

containing symmetric confusions at x(0), where the Single step LP method cannot

compute. From the net in Figure 10.5, x(0) = [1,1,0,0]*, x(d) = [0,0,0,0]* obtained

with u = [1,1,1,1,1]* and d = 5. A computed LFS is a = (ts,t5,t2,t4,ti) for the

adjoint elements, A*(d)=[-0.15,-0.03999,-0.0500,-0.0700] and AQ = ^=0.0099999998.

Both transitions ti and t2 are enabled at x(0). Transition t2 is a sink transition of

the siphon {p2,P4} and transition ti is a sink transition of the siphon {pi,ps}. The

computation avoids the firing of ti and t2 at x(0). This example shows that there

152

Page 165: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

might be more than one potential critical siphons with more than one potential critical

transitions on the same marking.

PI ft

Figure 10.5: A GPN with a symmetric confusion at x(0).

Computational experience with the PMP-based LP method shows that the firing

of the sink transition of a critical siphon is a major reason for a computational dead­

lock. This problem is handled to a large extent by the heuristic algorithm in section

10.7 to avoid a potential critical transition in a GPN.

Recall section 2.4. The concepts of a critical siphon and the sink transition of a

critical siphon are important for the PMP-based LP method.

Example 10.13.3

Consider the PN in Figure 10.6. An initial marking is x(0) = [2,0,1,0,0,0,0,0]*,

a final marking is x(d) = [2,0,1,0, 0,0,0,0]* obtained with u = [2,2,2,2,2,2,2,2,2]*

and d = 18. The PMP-based LP method with a heuristic algorithm for avoiding the

potential critical transitions computes a LFS in the given PN, but the DP-based LP

method gets into a deadlock. By using a two-phase simplex subroutine with the PMP-

based LP method, A*(d)=[0.0099999998,0.0099999998,0.0099999998,0.029999999,0.029

999999, 0.0099999998,-0.0099999998,-0.079999998] and AQ = ^^ = 0.0099999998. A

mputed LFS is {tj, t2, tj, ts, t2, ts, t4, tg, t4, ts, tg, tj, tg, tg, ti, tg, ts, te). Using a revised CO

153

Page 166: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

simplex DLPRS routine with the PMP-based LP method, a LFS is obtained which is

[t?, t2, tr, ts, t2, ts, t4, ts, t4, ts, tg, ti, tg, tg, ti, te, ts, te) with A*(d)=[1.0,1.0,1.0,3.0,3.0,1.0,

-1.0,-8.0] and AQ = 1.0. Transition tg is the sink transition of a critical siphon which

is avoided at x(9) = [0,0,1,1,0,0,1,0]* during the computations. A critical siphon

at A; = 9 is {p4,Ps,P8}. If ts is avoided at A; = 9, the computations are deadlocked at

k = 10 on x(10)=[0,0,1,0,0,0, 2,0]*.

P- t3 P)

— { y -

Figure 10.6: A GPN used with the complete PMP-based LP method.

Consider another problem with the same PN but with a different initial marking

x(0) = [2,0,1,0,0,0,0,0]*, a final marking x(d) = [1,0,1,0,0,0,0,0]* obtained with

u = [1,2,2,2,2,2,2,1,1]* and d = 15. A LFS computed using the two-phase simplex

subroutine is (t7,t2,t7,t3,t2,ts,t4,tg,t4,t5,t9,ti,t6,t5,te) for a A*(d) = [0.039999999,

0.039999999,0.039999999,0.059999999,0.059999999,0.039999999,0.020000000,-0.0500

00001] and Ao= 0.0099999998. A LFS for using the revised simplex DLPRS routine

is {tr, t2, tr, ts, t2, ts, t4, tg, t4, ts, tg, ti,te, ts, te) for a A*(d)=[1.0,1.0,1.0,3.0,3.0,1.0,-2.0,

-8.0] and Ao=l. A LFS computed using a two-phase simplex subroutine and that

computed using a revised simplex DLPRS routine are identical for both problems.

154

Page 167: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Example 10.13.4

Consider the PN in Figure 10.7.

Figure 10.7: A second example.

For the given PN, x(0) = [3,0,0,0,0,0,0,0,0]*, x(d) = [1,1,0,0,0,0,0,0,0]*

obtained with u = [3,3,3,3,2,1,1,1,0,1,2]*. For the two-phase simplex subrou­

tine, a computed A*(d) is [0.0099999998,0.0099999998,-0.2400000000,-0.0200000000,

0.0099999998, 0.0099999998,0.0099999998, 0.0099999998, 0.0099999998] and AQ =

w 0.0099999998. A LFS a is computed by the PMP-based LP method as (ti, ti, t2, tg.

t4, ts, ti, ts, t4, ts, t2, t4, til, tn , te, *2, tr, ts, tg, tio). If the heuristic algorithm for avoid­

ing potential critical transitions is not used with the PMP-based LP method, then

a critical siphon {pi,P2,P3} exists on x(2) = [1,0,0,2,0,0,0,0,0]* with ti as the

sink transition. If ti is allowed to fire on x(2), the computation is deadlocked on

x(3) = [0,0,0,3,0,0,0,0,0]*. The DP-based LP method cannot compute a LFS

for this problem. A LFS obtained using the revised simplex DLPRS routine is

(ti, ti, t2, ts, t4, ts, ti, ts, t4, ts, te, t2, tn, tr, ts, tg, t4, tn , tio, ta) for A*(d)=[1.0,1.0,-24.0,-

2.0,1.0,1.0,1.0,1.0,1.0] and AQ = 1. If the heuristic method were not used, then a

critical siphon {pi,P2,P3} exists on x(2) = [1,0,0,2,0,0,0,0,0]* with ti as the sink

155

Page 168: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

transition. If fi is allowed to fire on x(2), the computation is deadlocked at A; = 3 on

x(3) = [0,0,0,3,0,0,0,0,0]*.

10.14 Optimal Control-Based Analysis

Consider a relaxed LP problem for finding a LFS of the PN reachability problem

with a prespecified firing count vector u and a predefined total firings d. The initial

marking x(d) is totally specified. Hence, il){x{d)) = 0. The firing count vector u is

specified and d = YiiLi ^i is also given and there is no need for a minimum firing

control. Therefore, only a firing count subnet needs to be considered both for the

analyses and the computations. Each element of u(A;) is an integer and is either 0

or 1. The (m x 1) vector y^{k) = Au{k) - u(A;) and each element of y^{k) is an

integer where A; = 0 ,1 ,2 , . . . , (d - 1). The artificial variable y^{k) is always 0. The

slack variables at firing k are s{k) = x(A;) - a-u{k). The vector x(A;) is a marking

at firing k and it represents the number of tokens in each place at firing k. Each

element of u(A;) is an integer and each element of the input incidence matrix a~ is

also an integer. Therefore, the solution vector to be decided at each firing A; where

A; = 0 , 1 , . . . , (d - 1) can have only integer elements. Therefore, this is an all-integer-

programming-problem.

The variable vector to be decided at firing A;, 0 < A; < (d - 1) contains a firing

vector u(A;), the artificial variable vectors y^{k) and y'^{k) and a slack vector s{k). The

Single step LP and the Optimality Principle-based LP methods are now considered.

The m X d solution vector which is {u{dY, u{d - 1)*,..., u(l)*] for each of these Single

step LP and the Optimality Principle-based LP methods can contain only 0 or 1.

The artificial variables and slacks are integers. Thus, computing a LFS using these

methods is a 0/1 integer programming problem.

From the optimal control related properties of the PMP-based LP method with a

156

Page 169: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

known u and d, the following result is obtained.

Lemma 10.14.1

An optimal LFS {u(A;)}, A; = 0 , 1 , , . . , (d-1) satisfies the necessary condition for an

optimal control sequence. This necessary condition implies satisfaction of an extreme

control for an OLFS a. But the converse of this statement is not always true.

Proof: The extreme points of a convex polyhedron at each firing A;, A; = 0 , 1 , . . . , (d-1)

are the only valid candidates for optimal firing vectors at that firing k. Therefore, an

optimal LFS {u(A;)} where A; = 0 ,1 ,2 , . . . , (d — 1) satisfies the extreme control [16]

which is the necessary condition for an optimal control sequence. On the other hand,

if there exists a potential critical transition tc on some marking x(A;), then the cor­

responding firing vector will also be an extreme point of a convex polyhedron at

that firing A;. If u' (A;) is the firing vector corresponding to the critical transition tc

at firing A;, the computation is sure to be deadlocked at some latter firing q where

{k + 1) < q < {d- 1). Therefore, the converse is not always true. Hence, the PMP

provides a necessary condition for optimality since the firing vector u(A;) is at the

boundary. An extreme firing vector may exist which is a locally optimal firing vec­

tor. This is true for a firing vector corresponding to a critical transition tc- Hence,

the existence of an extreme firing vector u(A;) does not necessarily imply a globally

optimal firing vector u*(A;) in finding an OLFS a.

Q.E.D.

An important computational result follows.

Theorem 10.14.1

If the final marking x(d) is reachable from an initial marking x(0) on a given PN

N, then x(0) is reachable from x(d) on its reversed net N~'^ and vice versa.

157

Page 170: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Proof From the definition of a reversed net A''"^ of a given PN A'', if a is an incidence

matrix of A'', then - a is the incidence matrix ofN'^. Assume x(d) is reachable from

x(0) for a set of firing vectors {u{k)}, k = 0,l,2,...,{d-l) on N. Clearly,

x{k + 1) = x(A;) + au(A;), Ac = 0,1,2, . . . , (d - 1). (10.30)

Rearranging and writing down the set of equations (10.30) in opposite order,

x(A;) = x(A; + 1) + (-a)u(A;), A; = (d - 1), (d - 2 ) , . . . , 0. (10.31)

But —a is the incidence matrix of the reversed net N~'^. Then the marking x(d - 1)

is reachable from x(d) on N~^. Similarly, x(d — 2) is reachable from x(d — 1) on the

reversed net A^~^ Proceeding this way, x(d — 3) is reachable from x(d — 2) on A "

and so on. Therefore, the marking x(0) on A''"^ is reachable from x(d).

Consider now the opposite case. If x(0) is reachable from x(d) on N~'^, then the

equation (10.31) holds. Denote (—a) as a. Then the equation (10.31) can be written

as,

x(A; + 1) = x(A;) + (-a)u(A;), A; = 0,1,2, . . . , (d - 1). (10.32)

The matrix a is an incidence matrix of the reversed net N~'^. Then, the matrix —a is

an incidence matrix of the original PN A . Hence, x(d) is reachable from x(0) on N.

Q.E.D.

Lemma 10.14.2

Consider a PN A'' for a firing count vector u=[ui] with each component Ui, i =

1,2,..., m denoting the total number of firings of the transition tj. If the initial

marking is x(0) and a final or destination marking is x(d), then x(d) is reachable

from x(0) provided that:

1. The marked PN {N,x{0)) has no token-free siphon at x(0) and

2. The marked PN {N,x{d)) has no token-free trap at x(d).

158

Page 171: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Proof:

1. Since an initially token-free siphon remains token-free from the successive mark­

ings, therefore, the token-free siphons at x(0) remains token-free from the following

marking. If there are no token-free siphons at x(0), then x(d) is reachable from x(0)

provided that the sink transition of a potential critical siphon does not fire at any

intermediate marking x(A;), A; = 1,2,..., (d — 1).

2. If the final marking x(d) is reachable from an initial marking x(0) on a given PN A",

then x(0) is reachable from x(d) on its reversed net N~^. Siphons of a given PN N are

traps on its reversed net N~^ and traps of A are siphons on its reversed net N~'^ [51].

Consider a computational technique which uses the reversed net A/~^ of a given PN

-Y with x(d) as an initial marking. This computational technique has all token-free

traps on (A',x(d)) as token-free siphons on (A^~\x(d)). Therefore, if {N,x{d)) con­

tains no token-free traps, then there are no token-free siphons on {N~'^,x{d)). If no

sink transition of a potential critical siphon fires at A;=d, (d - 1 ) , . . . , 2, then x(0) is

reachable from x(d) on (A^-^x(d)). Hence, x(d) is reachable from x(0) in a given PN

{N,x{0)).

Q.E.D.

A lemma which needs to be satisfied for x(d) G R{x{0)) follows.

Lemma 10.14.3

Consider a given PN N with an initial marking x(0) and a final marking x(d). The

marking x(d) satisfies x(d) G R{x{0)), where P(x(0)) denotes the set of reachable

marking from x(0), if the following conditions are met.

(a) The firing count vector u satisfies au = Ax = (x(d) - a;(0)),

(b) on {Nu,Xu{0)) and {Nu,Xu{d)), the following two conditions are being satisfied:

1. The firing count subnet {Nu,Xu{0)) has no token-free siphons.

2. The firing count subnet (A/'„,x„(d)) has no token-free traps.

159

Page 172: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Proof A necessary condition for marking reachability with a prespecified u and d is

au = Au = (x(d) - x(0)). At each firing A;, only the firing count subnet (A^„,x„(A;))

with an effective firing count vector u = u-ZtZlu{k) is taken into account. Then at

firing k only the nonzero elements || u(A;) || of the effective firing count vector u are

considered. If the initial firing count subnet (A „, x„(0)) at A; = 0 is taken into account,

then by Lemma 10.14.2, using basic definitions of marking reachability with a firing

count vector and a firing count subnet, the proof of {b){l) in Lemma 10.14.3 follows.

Precondition (6)(1) in Lemma 10.14.3 is a sufficient condition for marking reachability

with a firing count vector u. Token-free traps on {Nu,Xu{d)) are token-free siphons

on {N-^,Xu{d)). If the proof of Lemma 10.14.2(2) is used with definitions of marking

reachability with a firing count vector and a firing count subnet, then the proof of the

precondition 6(2) in Lemma 10.14.3 follows. Lemma 10.14.3 6(2) is another sufficient

condition for marking reachability with a firing count vector.

Q.E.D.

Lemma 10.14.4

In a given PN A with an initial marking x(0) and a destination marking x(d),

eliminate every maximal token-free siphons in (A'', x{0)) and maximal token-free traps

in {N, x(d)) so that x(d) is reachable from x(0). A sink transition of a potential critical

siphon should not fire at an intermediate marking x(A;), A; = 1,2,..., (d — 1).

Proof: From the definition of a maximal siphon (trap), a siphon (trap) is maximal if it

contains all other siphons (traps) as its subsets. If every maximal token-free siphons

in (A'', x(0)) are eliminated, then other token-free siphons must be its subsets and

eventually those are marked. Similarly, if every maximal token-free traps in {N,x{d))

are eliminated, every other token-free traps in {N, x{d)) are its subsets and ultimately

those token-free traps are marked. Therefore, the requirements of Lemma 10.14.2 are

met and the final marking x(d) is reachable from an initial marking x(0). This is

160

Page 173: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

true provided that the sink transition of a potential critical siphon does not fire at an

intermediate marking x(A;), A; = 1, 2 , . . . , (d - 1).

Q.E.D.

An important result to apply the PMP-based LP method follows.

Lemma 10.14.5

-Assume that for a prespecified firing count vector u, there are no maximal token-

free siphons in a subnet defined by || u(A;) || at x(A;) for each firing A;,l < A; < ( d - 1).

Then there is a LFS from an initial marking x(0) to a final marking x(d) for that

prespecified u.

Proof For marking reachability with a firing count vector, only the nonzero elements

in an effective firing count vector denoted as || u(A;) || are considered at each firing

k. Hence, the subnet defined by u(A;) = u - Efc=o "^{k) is considered at each firing A;,

0 < A; < ( d - 1). Therefore, no dead transition appears in the subnet which is defined

by u(A;) = u - X)^~Ju(A;). Assume that an enabled transition is selected at firing A;,

k = 0 , . . . , (d — 2) such that there is a token-free maximal siphon at firing I in the

subnet to be considered, where 1 < ^ < (d— 1). Then this token-free maximal siphon

at firing / will remain token-free from the succeeding firing instance. Transitions

which are the members of this token-free maximal siphon and also the members of

II u{l) II will never be able to fire. Therefore, the computational process gets into

a deadlock. Hence, the satisfaction of this Lemma 10.14.5 is a sufficient condition.

Q.E.D.

161

Page 174: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Example 10.14.1

(b)

Figure 10.8: A given PN and its reversed net(a)(A^,x(0)), (b)(A^-^x(d)).

Consider the PN in Figure 10.8(a) and its reversed net in Figure 10.8(b). A given

initial marking is x(0)=[l, 0,0,1,0,1,2]* and a final marking is x(d)=[l, 0,0,1,2,1,0]*

obtained with a firing count vector u=[l, 1,1,0,0,0,1,1,0,1]* and d = 6. The set

of places {pi,P3}, {pi,P2,P3}, {P6,P7} are siphons on (A'', x(0)) which are traps on

{N~^,x{d)). All siphons are marked at x(0) and all traps are marked at x(d). This

involves that there is no token-free siphon on (A'', x(0)) and there is no token-free trap

on {N,x{d)). Therefore, Lemma 10.14.2 is satisfied.

162

Page 175: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

The vector au=[0,0,0,0, 2,0, -2]*=Ax=x(d) - x(0). Hence, the first condition in

Lemma 10.14.3 is satisfied. The structural siphons of A„ are {p6,pr}, {PbPa} and

{Px,P2,P3} which are also structural traps onN~^. As evidenced by Xu{0), the subnet

(N„,x„(0)) has no token-free siphons. From marking x„(d), the subnet (A^„,x„(d))

has no token-free traps. This involves that the rest of Lemma 10.14.3 is satisfied.

-A firing count subnet {Nu,Xu{0)) is not connected. Then the given problem is even

reachable with a token-free condition of {P4}. But p4 is marked both at x(0) and

x(d), which implies fulfillment of the preconditions stated in Lemma 10.14.3.

A LFS (Tu = (ti, t2, ts, tio, ty, tg) is obtained with a precalculated A„(d) = [1.0,1.0,1.0,

1.0,35.0,1.0].

On (-Y,x(0)), the maximal siphons are {pi,P2,P3} and {p6,P7} which are also the

maximal traps on {N, x(d)). Since all these are marked at x(0), no maximal siphon is

eliminated. Hence, the first condition in Lemma 10.14.4 is satisfied. Also the maximal

traps are marked at x(d) and there is no need to eliminate any maximal token-free

trap. This involves that the second condition of Lemma 10.14.4 is satisfied.

10.15 Computational Characteristics

The convexity assumptions based on the z-directional convexity are imposed on the

data for the reachability problems to be used by the PMP-based LP method. This is

done to ensure uniqueness of minimizing firing vectors.

On the other hand, the PMP does not circumvent the computational difficulties of

a two-point boundary-value problem (TPBVP). In using the PMP-based LP method,

it provides a considerable insight into the form of an optimal control function so that

it is possible to solve the problem indirectly. An important results follows.

163

Page 176: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Lemma 10.15.1

The basic objective in computing a LFS a is the minimum transfer of tokens with

respect to an original PN A''.

Proof: -A LFS a can be computed either by using an original PN A'' or its reversed

net A' "^ The objective in using an original PN A' is always for a minimum transfer

of tokens at each firing instance A;. Hence, this case is true. For the computation

using the reversed net A''"^ of A , the objective is to select that particular transition

enabled at a firing A; for which the transfer of tokens is at a maximum. This involves

selecting that enabled transition tg at the firing j for which the summation of the

q-th column elements of the incidence matrix a = c'*' — a~ of the PN A'' is minimum

(for A/~\ the incidence matrix is d = a~ - a" = - a ) . But this is a count for the

transfer of tokens in A'" at firing j . This proves the case for the computations using a

reversed net.

Q.E.D.

10.16 An Analysis of the Objective Function

Use of the PMP implies minimizing the Hamiltonian at each firing A;. The objective

function of the PMP is given as follows:

J = "^Y mk),u{k)) = Y <xiHk) + au{k)}. (10.33) k=0 k=Q

The Hamiltonian Function is:

P(A(A: + 1), x(A;), u(A;)) = (A*(A; + 1) + Xoei^,}{x{k) + au{k)}. (10.34)

Here,

Xt{k) = A*(A; + 1) + Aoe >,i, (a)

A(d) = AoCnxi. (b)

164

(10.35)

Page 177: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Also,

i:to^u{k) = u. (10.36)

A form which is analogous to the Optimality Principle is derived as follows by a

cumulative consideration of all Hamiltonians for k = 0 , 1 , . . . , (d — 1). Denote this

summation as Jc. Then

Jc = Etto' {A*(A; + 1) + Aoe^,i}{x(A;) + au(A:)}. (10.37)

Here, AQ is a fixed quantity. Hence,

Jc = {A*(l) + Aoei,i}{x(0)+au(0)}

+{A*(2) + AoeJ,,i}{x(l) + au(l)} + . . . (10-38)

+{A*(d) + AoeLi}{^(^ - 1) + <^<d - 1)}.

By equation (10.35(a)), equation (10.38) can be written as:

Jc = {A*(2) + Aoe^ i + AoeLi}{x(d)-au + au(0)}

+{A*(3) + AoeJ,,! + AoeJ,,i}{x(d) + au(l) - a E t l < k ) } + ... (10-39)

+{A*(d) + Aoe^,J{x(d)}.

Rearranging, equation (10.39) can be written as:

Jc = {X\d)+dxXoei^,}{x{d)-aEt\<k)}

+{A*(d) + (d - l)Aoe* ,i}{x(d) - a Etzl u{k)} + ... (10-40)

+{A*(d) + Aoe;,,i}{x(d)}.

Then

Jc = x(d)[A*(d) + . . . + A*(d) + e J , ^ i {d+(d - l ) + . . . + l}]

-a[{A*(d) E t l u{k) + A*(d) Etl u{k) + . . . + A*(d) E t d - i ^(^)}]-(10.41)

165

Page 178: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

(10.42)

The final form for Jc is,

Jc = dA*(d)x(d) + ^ e * ,ix(d)

-a[A*(d){(d - l)u(d - 1) + (d - 2)u(d - 2) + . . . + 1 X u(l)}]

-e\^^^a[u{d - l){d + (d - 1) + . . . + 2}

+u{d - 2){d + (d - 1) + . . . + 3} + . . . + du(l)].

The form in equation (10.42) can be organized as follows:

Jc = dA*(d)x(d) + ^ e * , i x ( d )

-a[>^\d)Y.tXku{k)] (10.43)

-[<xiaY.Ud-k+iATtJin{k))].

In the final form of the expression for Jc in equation (10.43), the initial marking

x(0) and the initial firing vector u(0) are completely absent. Equation (10.43) is

obtained as the final form of the objective function with adjoint coefficients for the

PMP. This objective function also obeys the OP. Therefore, there is an inherent

connection between the PMP and the OP [14]. In fact, all these analyses show that

the application of the PMP to the computation of an optimal control sequence is

directly related to the OP. A complete consideration of all iterative steps of the PMP

over the Hamiltonians gives a form of changed objective function value in the standard

form of OP to find LFSs of PNs in a single application of LP.

Throughout the analysis in this section, an attempt is made to show that the

PMP is closely related to the OP. Considering the d parted PMP-based LP method

as a whole, it is possible to arrive at a form for the objective function which obeys

and retains the standard characteristics of the OP Here, only the objective function

of the PMP-based LP method is considered in a cumulative fashion. The equations

appearing in the set of constraints are the basic reachability equations and do not

166

Page 179: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

possess any special characteristics to be treated separately. The PMP is closely related

to the OP [14] and the OP forms a basis for the DP techniques. Therefore, the PMP

has a close relationship with DP from an optimal control viewpoint.

167

Page 180: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 11

ANALYSIS AND APPLICATIONS

In this chapter a computational analysis is presented. This computational analysis

is important for selecting a particular method for an application. Also the analysis

shows that adopting an efficient LP routine and exploiting parallelism, reasonable

sized PNs are computable. This has been done using an ncube 2E Supercomputer by

showing that the curves for the DP-based LP and the PMP-based LP methods are

almost linear for reasonable problem sizes. Also an application is discussed.

11.1 Analysis of Computation Time

Figure 11.1 shows the computation time curves for the Single-Step LP, the DP-

based LP and the PMP-based LP methods. Assume that the time complexity of LP is

of polynomial order 4 to the size of the problem. Therefore, the time complexity of the

DP-based LP and the PMP-based LP method is d"^ times to the time complexity of

the Single step LP method. Both the DP-based LP and the PMP-based LP methods

are semi-polynomial-time-complexity algorithms.

168

Page 181: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

u •o c 0 u a -H

•H

E c

(U UIT

JJ

c o JJ <1!

3 Q.

e 0 u

550

500

450

400

350

300

250

200

150

100

50

0

Revised Simplex Computation Time Curves 1

ingle step LP" "DP-based LP" "PMP-based LP"

16 20 22 24 26 Firing count subnet sizes

28 30

Figure 11.1: Computation time curves for the DLPRS subroutine.

In Figure 11.1, the average time per u(A;) is used for the curves. Then, the mea­

sured time is independent of d for both the DP-based LP and the PMP-based LP

methods and it is possible to consider large values of d. Since only one transition fires

at a firing instance therefore, the average time to compute u(A;) is obtained. High

values of d are avoided to get an average accurate time measurements with the Single

step LP method. To obtain a point on the curve, five to six different PNs with the

same firing count subnet sizes are considered and an average computation time is

measured. Thus, the curves represent a general computation time pattern. Time per

u(A;) increases rapidly with increasing firing count subnet sizes for the Single step LP

method. This increase in time per u(A;) is less for the PMP-based LP or the DP-

based LP method. The curves obtained show that LP behaves linearly for reasonable

problem sizes [9]. But the slopes of the straight line parts obtained with the Single

169

Page 182: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

step LP method are very different. The slopes of the straight lines obtained with the

DP-based LP and the PMP-based LP methods are almost same.

3000 Two-Phase Simplex Computation Time Curves

m •O c o u

I O o

2500 -

2000

1500

1000

500

Single step LP-S" "DP-based LP-S" "PMP-based LP-S"

10 10 50 60 70 Firing count subnet sizes

80 90 100

Figure 11.2: Computation time curves for the two-phase simplex subroutine.

Computation times are measured on a single node of an ncube 2E Supercomputer

system. For obtaining points on the curves, the potential critical transitions are

suppressed. Only firing count subnets are considered to obtain the graph. Table

11.1 compares computation time taken by the Single-Step LP, the DP-based LP and

the PMP-based LP methods in the original PNs with computation time in the firing

count subnets.

In using the firing count subnets instead of the original PNs, improvement in

computation time taken is more for the Single-Step LP method compared to the

other LP methods. Considering only the firing count subnets reduce the size of the

PNs and the computation time.

170

Page 183: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

In Figure 11.2, the computation time for the Single-Step LP method is much higher

than the computation time for the DP-based LP and the PMP-based LP methods.

Computation time is much dependent on the dimensions of the constraint matrix A

which involves dependency on m=the total number of constraints and also on n=the

total number of variables.

Figure 11.3 shows a PN as an example.

Figure 11.3: A PN for computation time assessment.

For the Single-Step LP method, m = 15, n = 24, Xu{0) = [2,0,0]* and x„(d) =

[0,0,2]* obtained with u = [1,1,1]* and d = 3. If m and n are used as specified with

the Single-Step LP method, computation time per u(A;) (average) is 35.5 milliseconds.

If m=20 and n = 24, an average computation time per u(A;) is 43.7 milliseconds.

Considering m = 15 and n = 30, computation time per u(A;) is 40.96 milliseconds.

For m = 20 and n = 30, computation time per u(A;) is 51.9 milliseconds. This shows

the dependency of computation time per u(A;) on the numerical values of m and n.

The total number of constraints in the Single-Step LP method is m=(| P^ | xd+ |

Tu I +d), where d is the length of the LFS, | P« | = total number of places and | Tu | =

total number of transitions in the firing count subnet. The total number of variables

n=( | P„ I xd+ I r„ I xd+ I r„ I +d). Both for the DP-based LP and the PMP-based

LP methods, the total number of constraints, m=(| Pu | + | T^ | +1) and the total

number of variables n = (| Pu | +2 | T^ | +1).

171

Page 184: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Table 11.1: Improvements in computation time for using firing count subnets.

Method

Single-Step LP

DP-based LP

PMP-based LP

Single-Step LP

DP-based LP

PMP-based LP

Original PN Size

31

31

31

14

14

14

Comp. Time

135.1680

62.8053

76.4586

124.6354

38.0343

39.2046

Subnet size

16

16

16

11

11

11

Comp. Time

49.1520

32.7680

32.7680

102.4000

32.7680

35.6937

In Figure 11.3, | r„ | = 3, | P„ | = 3 and d = 3. Then, the total number of

constraints m = 15 and the total number of variables n = 24. Either for the DP-

based LP or the PMP-based LP method, m is 7 and n is 10, which are smaller than

those values for the Single step LP method.

The number of pivoting steps for the simplex method goes up as the total number

of variables and the total number of constraints in the problem go up.

A minimum length firing sequence in the firing count subnet with initial marking

x„(0) is considered. It is assumed that the token distribution on an initial marking

is such that each transition in the firing count subnet fires exactly once and x„(d) is

reachable from Xu(0). This assumption increases the accuracy of time measurement,

because the computation time depends on the structure of a PN. Average time per

u(A;) is plotted against the firing count subnet size. This strategy keeps the computa­

tion time curves independent of d and provides an average computation time pattern.

With the PMP-based LP method AQ = -j^, where W is a non-zero, positive quan­

tity. The computation time for the DP-based LP method is least among the three.

The PMP-based LP method takes slightly higher computation time compared to the

172

Page 185: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

DP-based LP method for the same problem due to the extra manipulations required

with adjoint coefficients. It is possible to use the DP-based LP and the PMP-based

LP methods for much larger PNs as evidenced by the computation time curves. The

curves in Figure 11.2 are obtained for firing count subnet sizes ranging from 16 to

100 by using subclasses of PNs. These PNs include (1) Siphon Circuit (SC) nets,

(2) Nonincreasing Circuit (NIC) nets, (3) Backward Conflict-free (BCF) PNs, (4)

Marked Graphs (MGs), and (5) Acyclic PNs (APNs). These subclasses of PNs have

well-defined reachability criteria. The DP-based LP and the PMP-based LP methods

which use a two-phase simplex subroutine can compute large PNs. An implementa­

tion which uses a two-phase simplex subroutine, the computation time remains as a

major constraint. Computation time increases nonlinearly with the increase in firing

count subnet size.

The computational results show that the DLPRS is faster than the two-phase

simplex subroutine. The DLPRS is particularly suited for the Vertex ncube Su­

percomputer system and should only be used in a vertex ncube Supercomputing

environment. This implies that exploiting parallelism with a bounded variable re­

vised simplex method improves computation time and enables to compute large PNs.

There are unrestricted PNs which can never be computed using a two-phase simplex

subroutine. However, the DLPRS efficiently computes these unrestricted PNs. This

implies that the DLPRS is computationally more efficient compared to the two-phase

simplex subroutine. Using a two-phase simplex subroutine, PNs with firing count

subnet sizes as large as Nu = 100 with | P„ |= 25 and | T^ |= 25 are computed with

the DP-based LP and the PMP-based LP methods.

173

Page 186: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

11.2 An Application

Different models which use graph theoretic tools in relation to the railway networks

are studied before. Here, the PN model of a railway traffic controller is discussed.

Many real world control problems which deal with the discrete event systems can

be formulated as the reachability problem in PNs. Fortunately, the complete set of

the reachable states is not always necessary to find errors or for showing that there

is no error in a system design. For designing controllers with PNs, it is required to

build a model so that the model contains only the appropriate amount of details. The

developed model should be live and bounded, otherwise the system will turn into an

uncontrollable one. Consider now the design of an automatic controller for a railroad

crossing system. This automatic controller for a railroad crossing system appears

in [42]. The operating principle of a simple Railroad Traffic Controller is important

for the analysis of the design.

Figure 11.4: An initial state of the automatic controller model.

174

Page 187: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Present day railroad crossings are computer controlled. Some controlling de­

vices are hardware based and some are software controlled. It is possible to de­

sign and analyze the controller of an automatic railroad crossing system using PNs.

For a correct and safe operation of the system, the operational sequence of differ­

ent components can be analyzed using the reachability in the PN model. Figure

11.4 shows the initial state of a basic controller model. In a basic controller sys­

tem, the initial state is x(0) = [1,0,0,0,0,1,0,0,0,0,1,0]* and the final state is

x(d) = [0,0,0,1,0,1,0,0,0,0,1,0]*.

p.

Figure 11.5: Reversed net of the controller model with an interlock, I = pis.

In the PN model, places pi, P2, Ps and P4 represent different positions of the railroad

vehicle or train. In this basic controller model, an interlock I is absent and hence,

the place pis does not appear. At the final state no transition is enabled. Therefore,

the next-state function is undefined for all transitions and the execution halts. The

next-state function defines the state of the PN for the next firing [42]. Each place

175

Page 188: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

represents one of the possible elements for the controller. Each transition represents

an event in the complete controller system which is described in Table 11.2.

If the DP-based LP method is used with the basic controller model, a computed

LFS a is (ti,t4,t2,t3,t5,t7,t6) obtained with u = [1,1,1,1,1,1,1]* and d = 7. The

PN model for the controller is a condition-event net system and the computed LFS

passes through risky states. Therefore, the designed system does not ensure safety.

In Figure 11.5, the reversed net N~^ of the complete controller model N is shown.

-Adding a sensor pis to the basic controller model ensures safety. The sensor senses

whether the railroad crossing gate is down after firing transition tr. Once tr fires, pis

contains a token and then sends the corresponding information to the Signal, which

is done by firing transition f2.

Also firing transition t2 allows a train to enter the crossing safely. This is done by

clearing the signal down in a real system. A computed LFS in the complete model

using the DP-based LP method is (ti,t4,t7,t2,t3,t5,t6).

The LFS (ti,t4,t7, t2,t3,t5,t6) is safe and does not pass through a risky state.

Sometimes the sensor pis is known as an Interlock. The additional cost of adding an

extra component as an interlock I = pis is balanced against the assurance of safety.

The place pis does not disturb the reachabihty of the system or the appropriate

control sequence. However, a sensor pis assures safety.

In Table 11.3, the locus of the states as obtained from the computation on the

reversed net of the complete controller model is described . Note that all reachable

states which appear in Table 11.3 are safe.

176

Page 189: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Table 11.2: Roles of places and transitions in the complete controller model.

place or transition

Pi

P2

P3

P4

Ps

P6

P7

P8

P9

PlO

Pu

Pl2

Pl3

t l

t2

ts

t4

ts

te

t7

represents

the train is approaching

the train is before the crossing

the train is within the crossing

the train has past the crossing

transducer

a component of the controlling device

a component of the controlling device

a component of the controlling device

a component of the controlling device

a component of the controlling device

railroad crossing gate up

railroad crossing gate down

interlock

fires when the train is just before the crossing

fires to clear the signal down

fires when the train has past the crossing

fires to enable the transducer

fires before the train has past the crossing

fires to open the gate

fires to close the gate

177

Page 190: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Table 11.3: Locus of the reachable states.

Here, x(0) = [1000010000100]* and x(d) = [0001010000100]'.

j

1

2

3

4

5

6

7

[Au(d-j + l)]*

[1111111]

[1111101]

[1111001]

[1101001]

[1001001]

[1001000]

[1000000]

{t}

{te}

{ts}

{tj}

{t_2}

{tj}

{t_^}

(111

W - j)Y

[0001010001010]

[0001001100010]

[0010001000010]

[0100001000011]

[0100001010100]

[0100110000100]

[1000010000100]

11.3 Comparisons .Among Three Different LP Methods

In Table 11.4, comparisons among (a) the Single step LP method, (b) the DP-based

LP method, and (c) the PMP-based LP method with known u and d are listed. Here,

n = the total number of places, m = the total number of transitions and d = the

length of the firing count vector.

178

Page 191: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

Table 11.4: Comparisons among three different LP methods.

Standpoint

computes on

objective

time Complexity

matrix A

number of

iterations

number of

unknown

variables

and

constraints

applicability

Single step LP

original net

{N,x{0))

minimizing the

total transfer

of tokens

polynomial

size:

(n+(l + m) X d

+{n + m) X d)x

{{n + m) xd)

sparse

only one

variables:

(n + m) X d

constraints:

n + (1 + m ) X d

•^{n + m) X d

GPNs.

DP-based LP

reversed net

{N-\x{d))

maximizing the

total transfer

of tokens

semi-polynomial

size:

((1 + n + m)x

(1 +n + 2m))

regular matrix

d=TT=ini

variables:

(l+n+2m)

constraints:

(1+n+m)

unrestricted PNs.

PMP-based LP

given net

{N,x{0))

minimizing the

weighted objective

function

semi-polynomial

size:

((1 + n + m)x

(l + n + 2m))

regular matrix

d=T.T=iUi

variables:

(l+n+2m)

constraints:

(1+n+m)

large GPNs.

179

Page 192: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

CHAPTER 12

CONCLUSIONS

In this dissertation, the solution methodologies for a set of identified problems

which are related to the PN reachability with prespecified u and d are discussed.

Single step LP method which bears classical properties of LP for computing an

optimal LFS {u{j)}, j = 1,2,..., d in one LP step is discussed. The method which is

based on the Optimality Principle (OP) executes in one LP step. The computation

of OP is independent of x(0) and u(0) as evidenced by the formulation. OP has

an optimal policy and whatever the initial state and the initial decision are, the

remaining decisions must make an optimal policy with respect to the state resulting

from the first decision. OP lies at the heart of Dynamic Programming (DP), since

DP relies on OP. DP is the only sequential method for optimization. Properties of

total unimodularity play a vital role in finding a LFS using this method.

The DP algorithm searches possible combinations of the reachable markings for

enabled transitions at different firing instances starting at x(d) with a backward

directional computation. For large, complex problems with many combinations of

markings, there is always a possibility of a combinatorial explosion. This combinato­

rial explosion may result in the failure of the computation to converge to the correct

initial marking to produce a LFS a. The computational process traverses through all

vertices of a convex polytope to generate every possible marking. At the end of the

process, there are optimal solutions not to just one initial marking but all possible ini­

tial markings. Hence, there exists a closed-loop control law with a pure DP technique.

From the geometric standpoint, a classical method treats a curve as a locus of points

(convex polyhedron), whereas DP considers a curve to be an envelope of tangents

180

Page 193: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

(convex polytope). Therefore, the classical theories of LP and DP are dual to each

other, a fact which is only valid for the deterministic processes. This involves that

combining a LP with a DP approach, the two approaches jointly are more powerful

and versatile than the use of a single method. This is true both from an analytical and

a computational stand point which are carried out with the DP-based LP method.

Same facts hold for the FDP-based LP method. The FDP-based LP method bears

both the characteristics of LP and DP in its analytic and computational behavior. A

DP-based method never computes well in ordinary PNs containing self-loops except

for few, simple ceises.

DTPMP is an indirect method to find LFSs of PNs which lies at the heart of the

optimal control theory. Many optimal control problems may be approached using

the PMP. Computing a LFS a which is legal on x(0) with respect to u is a two-

point-boundary-value-problem (TPBVP) defined by x(0) and d. The Hamiltonian

function H does not always circumvent the computational difficulties associated with

the two-point-boundary-value-problems even with a modern high-speed supercom­

puter system. However, H does provide a considerable insight into the form of the

problem so that the problem may be solved indirectly.

Recall section 2.2. The constraint matrix A in the set of constraint equations

Ax = b for a method which uses a two-phase simplex subroutine is always in a

canonical normal form. The constraint matrix A always contains an M x M unity

matrix IMXM as a sub-matrix of it. This also involves that the phase 2 of the simplex

subroutine can begin directly. Here, M is the total number of constraints in the set

of constraint equations Ax = b.

Also from section 2.2, the reversed net A " of a given PN N is used for the

DP-based LP method. Computation of the DP-based LP method starts at x(d)

and proceeds in the opposite direction of an actual LFS. During the computation.

181

Page 194: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

if at some stage A; with 1 < A; < d, there is no enabled transition which brings the

computation to the next lower stage at (A; - 1), then the computation is deadlocked.

Hence, for this method a critical siphon is considered on the reversed net N~^ instead

of an original PN A''. Refer to Chapter 8 for details.

The reachability problem of PNs with prespecified u and d is considered all the

way in this dissertation. Then, it is always possible to consider problems in the

firing count subnets and eliminate those variables and constraints corresponding to

the transitions with null occurrence in the firing count vector u. This reduces the

computation time requirements and the memory space consumptions in general.

12.1 Future Research Directions

PNs are frequently used to model manufacturing systems. The size of a PN model

is in general the major constraint in modeling manufacturing systems. It is some­

times possible to decompose the net model into modules of limited size, to analyze

these modules, and to finally integrate them in a way which allows us to derive the

properties of the whole system based upon the properties of the modules.

Nowadays, window-based PN tools are quite popular among practitioners. How­

ever, computational tools for the analysis of reachability in PNs are quite rare in

practice. The LP methods discussed in this dissertation form a foundation of the

window based application tool development for the analysis of reachability. A future

research will be to develop PA based tools with the LP computational algorithms.

The next important work constitutes analyzing the tools completely for the future

level commercial tool developments. These tools can conveniently be constructed in

a language like C or in any other Object Oriented Programming Language like Java

or, C++.

There is an increased volume of work on model based analysis of concurrent, real-

182

Page 195: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

time programs. Reachability analysis in PN is important for verifying the dynamic

properties of concurrent, real-time programs. In each serious project, after having

finished the system design, at least the specifications of critical components should

be validated with strict means. Reachability analysis of PNs is increasingly being

used for validation. The computational methods discussed in this dissertation can be

used for this validation.

Reachability describes the correct and/or faulty behavior of a system to be diag­

nosed which is called the Model-based Diagnosis. An example is given in Chapter

11 where the reachabihty has been used to show the improper dynamic behavior of

a Rail-road Crossing System and an improvement over the existing design is also

suggested. Therefore, the future research is oriented towards a systematic way for

detecting errors in sophisticated concurrent and distributed systems.

183

Page 196: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

BIBLIOGRAPHY

[1] Agerwala, T., "Putting Petri Nets to work," IEEE Transaction on Computers, pp. 85-94, Vol. C-28, No. 12, December, 1979.

[2] Balinski, M.L., "Integer Programming: Methods, Uses, Computation," Man­agement Science, Vol. 12, No. 3, November, 1965.

[3] Bellman, R., "On the theory of dynamic programming," Proceedings of the National Academy of Sciences, 38, 716-719, 1952.

[4] Bellman, R., Introduction to the Mathematical Theory of Control Processes, Volume 2: Nonlinear Processes, Academic Press Inc., New York.

[5] Bellmaii, R., "Some Applications of the Theory of Dynamic Programming—A Review," Journal of the Operations Research Society of America, vol. 2,no. 3, August, 1954.

[6] Bertsekas, D.P., Dynamic Programming: Deterministic and Stochastic Models, Prentice-Hall, Inc., Englewood Cliffs, New Jersey, 1987.

[7] Best, E., "Structure Theory of Petri nets: the Free Choice Hiatus," Advanced Course on Petri Nets, Bad Honnef 8.-19., September, Germany, 1986.

[8] Bellman, R., Kalaba, R., Dynamic Programming and Modern Control Theory, Harcourt Brace Jovanovich, Publishers, Academic Press, Inc., New York, 1965.

[9] Colom, J.M., Silva, M., "Improving The Linearly Based Characterization Of P /T Nets," pp. 113-145, Lecture Notes in Computer Science (LNCS), Springer Verlag, Berlin, Germany, 1991.

[10] Csaki, F., Translated by Szoke, P., Translation revised by Balkay, B., Modern Control Theories, Nonlinear, Optimal and Adaptive Systems, Akademiai Kiado, Budapest, Hungary, 1972.

[11] Dantzig, G.B., Linear Programming and Extensions, Princeton University Press, Princeton, New Jersey, 1963.

[12] Darst, R.B., Introduction To Linear Programming, Applications and Extensions, Mercel Dekker, Inc., New York, 1990.

[13] Datta, A., Ghosh, S., "Synthesis of a Class of Deadlock-Free Petri Nets," Jour­nal of the Association for Computing Machinery, Vol. 31, No. 3, July 1984, pp. 486-506.

[14] Desoer, C.A., "Pontriagin's Maximum Principle and the Principle of Optimal­ity," J. Franklin Institute, Vol. 271, pp. 361-367, 1961.

[15] Desrochers, A.-A., Al-Jaar, R.Y., Applications of Petri Nets in Manufacturing Systems Modeling, Control, and Performance Analysis, IEEE Press, IEEE Con­trol Systems, Piscataway, New Jersey, 1995.

184

Page 197: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

[16] Elgerd, O.L, Control Systems Theory, International Student Edition, McGraw-Hill and KOgakusha Co. Ltd, McGraw-Hill, Inc., New York, 1967.

[17] Ficken, F.A., The Simplex Method of Linear Programming, Holt, Rinehart and Winston, New York, 1961.

[18] Fujii, Y., Sekiguchi, T.," A Method for finding the firing sequences of Petri nets with hnear programming techniques," Technical Report of lEICE, Vol. 94, No. 332, CAS94-67, CST94-27 (1994-11).

[19] Fujii, Y., Sekiguchi, T., "A New Method for Finding Firing Sequences for the Reachability Problem of Petri Nets by Using a Linear Programming Technique," Proceedings of the 1994 IEEE International Symposium on Industrial Electron­ics, pp. 242-246, 1994.

[20] Fujii, Y., Sekiguchi, T., "A method for finding firing sequences for the reacha­bility problem of Petri nets with mathematical programming technique," Trans­actions oflEE, Japan, Vol. 116-C, No. 2, pp. 289-295, 1996 (in Japanese).

[21] Gass, S.I., Linear Programming, Methods and Applications, Third Edition, McGraw-Hill Book Company, Kogakusha Company Ltd., Tokyo, Japan, 1985.

[22] Gligor, V.D., Shattuck, S.H., "On Deadlock Detection in Distributed Systems," IEEE Transactions On Software Engineering, Vol. SE-6, NO. 5, September, 1980.

[23] Halkin, H., "Optimal control for systems described by difference equations," Ad­vances in Control Systems: Theory and Applications, pp.173-196, C. T. Leon-des, Ed., Academic Press, New York, 1964.

[24] Halkin, H., " A maximum principle of the Pontriagin type for systems described by nonlinear difference equations," Journal of SIAM on Control, Vol. 4, No. 1, pp. 90-111, 1966.

[25] Halkin, H., "On the Necessary Condition for Optimal Control of Nonlinear Systems", Technical Report No. 116, Department of Mathematics, Stanford University, 1963.

[26] Harrel, D., Algorithmics-The Spirit of Computing, Addison-Wesley Publishing Company, Reading, MA, 1987.

[27] Hiraishi, K., Ichikawa, A., "Initial markings at which firing count vector has firable sequences in Petri net," the 2nd National Net Theory Workshop of lEICE of Japan, pp. 33-40, 1987.

[28] Hocking, L.M., Optimal Control: An Introduction to the Theory with Applica­tions, Oxford Applied Mathematics And Computing Science Series, Clarendon Press, Oxford, London, 1991.

[29] Holtzman, J.M., "Convexity and the Maximum Principle for Discrete Systems," IEEE Transactions On Automatic Control, Vol. AC-11, No. 1, January, 1966.

[30] Holtzman, J.M., "On the maximum principle for nonlinear discrete-time sys­tems," Short Paper, IEEE Transactions on Automatic Control, Vol. AC-11, NO. 1, January, pp. 273 - 274, 1966.

185

Page 198: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

[31] Holtzman, J.M., Halkin, H., "Directional convexity and the maximum principle for discrete systems," J. SIAM on Control, vol.4, No.2, pp.263-275, 1966.

[32] Ho, Y.C, "Dynamics of Discrete Event Systems," Scanning the Issue, Proceed­ings of the IEEE, January, 1989.

[33] Hu, T.C, Integer Programming and Network Flows, Addison-Wesley Publishing Company, Reading, MA, 1969.

[34] IMSL, Inc., User's Manual: FORTRAN subroutines for mathematical applica­tions, MATH/LIBRARY'^^'', Version 2.0, MALB-USM-UNBND-EN9109-2.0, September 1991.

[35] Kirk, D.E., Optimal Control Theory, An Introduction, Robert W. Newcomb, editor, Prentice-Hall Networks Series, Prentice-Hall Inc., Englewood Cliffs, New Jersey, 1970.

[36] Kolman, B., Beck, R.E., Elementary Linear Programming with Applications, Second Edition, Computer Science and Scientific Computing, Academic Press, New York, 1995, 1980.

[37] Korfhage, R.R., Discrete Computational Structures, Second Edition, Academic Press, Inc., New York, 1984.

[38] Lasdon, L.S., Optimization Theory for Large Systems, The Macmillan Company, CoUier-Macmillan Limited, London.

[39] Lee, R.C.K., "Optimal Estimation, Identification and Control," Research Mono­graph No. 28, The M.I.T. Press, Cambridge, Massachusetts, 1964.

[40] Lee, D.I., Kumagai, S., Kodama, S., "Reachability Theorem for a class of Live and Safe Free Choice Nets," Paper, Special Issue on Petri Nets and Discrete Event Systems, lEICE Transactions, Vol. E74, No. 10, October 1991.

[41] Leondes, C.T., Editor, Advances In Control Systems, Theory And Applications, Volume 1, Academic Press, New York, 1964.

[42] Leveson, N.G., Stolzy, J.L., "Safety Analysis Using Petri Nets," IEEE Trans­actions on Software Engineering, Vol. SE-13, No. 3, March, 1987.

[43] Lindemann, C , Performance Modelling with Deterministic and Stochastic Petri Nets, John Wiley And Sons, New York, 1998.

[44] Matsumoto, T., Tarek, A., "A method for deciding the reachability of Petri nets by means of dynamic programming included linear programming," Technical Report oflEICE, Vol. 95, No. 46, pp. 1-8 (CST95-1)(1995-05).

[45] Matsumoto, T., Tarek, A., "Finding Legal Firing Sequence of Petri Nets by Means of Dynamic Programming Included Linear Programming Method," Pro­ceedings of the 35th IEEE Conference on Decision and Control, pp. 4459-4468, Kobe, Japan (1996-12).

[46] Matsumoto, T., Tarek, A., "Finding Legal Firing Sequence in Basic Reachability Problems of Petri Nets by Minimum Principle of Pontryagin", Proceedings of the 10th Karuizawa Workshop on Circuits and Systems, Karuizawa, Nagano, Japan (1997-04).

186

Page 199: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

[47] Mayer, E.W., "An Algorithm for the General Petri Net Reachability Problem," the 13th Annual ACM Symposium Conference Proceedings on Theory of Com­puting, pp. 238-246 (1981) or, SIAM Journal of Computing, Vol. 13, no. 3, pp. 441-460, August 1984.

[48] McCausland, I., Introduction to Optimal Control, John Wiley & Sons, Inc., 1969, Reprinted by Robert E. Krieger Publishing Company, Huntington, New York, 1977. B f J, 6 ,

[49] Moody, J.O., Antsaklis, P.J., Supervisory Control of Discrete Event Systems Using Petri Nets, Kluwer Academic Publishers, Boston, Massachusetts, 1998.

[50] Murata, T., Circuit Theoretic Analysis and Synthesis of Marked Graphs, IEEE Transactions on Circuits and Systems, Vol. CAS-24, No. 7, July, 1977.

[51] Murata, T., "Petri Nets: Properties, Analysis and Applications," Proceedings of the IEEE, 77(4), 1989.

[52] Munro, J.I., Ramirez, R.J., "Reducing Space Requirements for Shortest Path Problems," Operations Research, Vol. 30, No. 5, September-October 1982, Op­erations Research Society of America (ORSA), 1982.

[53] Murtagh,B..A., Advanced Linear Programming: Computation and Practice, McGraw-Hill International Book Company, New York.

[54] Murtv. K.G., Linear and combinatorial programming, John Wiley & Sons, New York," 1976.

[55] Nemhauser, G.L., Introduction to Dynamic Programming, John Wiley & Sons, Inc., New York, 1966.

[56] Peterson, J.L., Petri Net Theory and the Modeling of System, Prentice Hall, Englewood Cliffs, New Jersey, 1981.

[57] Pontryagin, L.S., Bottyanskii, V.G., Gamkrelidge, R.V., Mishchenko, E.F., The Mathematical Theory of Optimal Processes, Authorized Translation from the Russian, Translator: Trirogoff, K.N., Editor: Neustadt, L.W., Interscience Pub-Ushers, a division of John Wiley &: Sons, Inc., New York, 1962, Third Printing, September, 1965.

[58] Press, W.H., Teukolsky, S.A., Vetteriing, W.T., Flannery, B.P., Numerical Recipes in FORTRAN: The Art of Scientific Computing, Second Edition, Cam­bridge University Press, London, 1986, 1992, Computer Programs and proce­dures. Numerical Recipes Software, 1986, 1992.

[59] Proth, J.M., Xie, X., Petn A ets - A Tool for Design and Management of Man­ufacturing Systems, John Wiley &: Sons, New York, 1996.

[60] Ralston, A., Editor, Meek, C.L., Assistant Editor, Encyclopedia of Computer Science, First Edition, Petrocelli/Charter, New York, 1976.

[61] Ramamoorthy, C.V., Ho, G.S., "Performance Evaluation Of Asynchronous Con­current Systems Using Petri Nets," IEEE Transactions On Software Engineer­ing, Vol. SE-6, No. 5, September 1980, pp. 440-449, New Jersey.

187

Page 200: OPTIMIZATION ALGORITHMS APPLIED A DISSERTATION IN …

[62] Reisig, W., Petri Nets, Springer-Veriag, Berlin, Germany, 1982.

^ ^ iQ^S^' ^ • ' ^ ^^^^^^ ^" P^i^ Net Design, Springer-Veriag, Beriin, Germany,

[64] Saaty, T.L., Mathematical Models of Operations Research, McGraw-Hill Book Company, Inc., Kogakusha Company, Ltd., Tokyo, 1959.

[65] Sedgewick, R., Algorithms in C++, Addison-Wesley Publishing Company, Reading, MA, 1991. & F J

[66] Sierksma, G., Linear and Integer Programming Theory and Practice, Mercel Dekker, Inc., New York, 1996.

[67] Sneyd, H.C., "Integer and Mixed Programming: theory and applications," Mathematics in Science and Engineering, 137.

[68] Sniedovich, M., Dynamic Programming, Pure and Applied Mathematics, A se­ries of Monographs and Textbooks, Mercel Dekker, Inc., New York, 1992.

[69] Spouge, J.L., "Speeding Up Dynamic Programming Algorithms for Finding Optimal Lattice Paths," SIAM J. of Applied Mathematics, Vol. 49, No. 5, pp. 1552-1566, October, 1989.

[70] Tarek, -A., Matsumoto, T., "Solving Large Scale Petri Net Reachability Prob­lems by Linear Programming Methods," Proceedings of 1996 International Sym­posium on Nonlinear Theory and its Applications, pp. 453-456, Kochi, Japan (1996-10).

[71] Tarek, A., Lopez-Benitez, N., "A Dynamic Programming-Based Method to Search Optimal Legal Firing Sequences of Petri Nets," in preparation.

[72] Tarek, -A., Lopez-Benitez, N., "An Effective Method for the Dynamic Search of Legal Firing Sequences of Large Petri Nets," accepted in the joint meeting of SCI 2001 and ISAS 2001, Oriando, Florida.

[73] Tarek, A., Lopez-Benitez, N., "Optimal Legal Firing Sequence of Petri Nets Using Linear Programming," Submitted to the Kluwer Journal.

[74] Tsuji, K., Murata, T., "Necessary and Sufficient Condition for Reachability of Extended Marked Graphs," Technical Report of lEICE, pp.109-116, CAS94-70, CST94-30, (1994-11).

[75] Tsuji, K., Murata, T., "On Reachability Conditions for Unrestricted Petri Nets," Proceedings of the 1993 International Symposium on Circuits and Sys­tems, Volume 4 of 4, Networks, Systems and Applications, pp. 2713-2716.

[76] Zhou, M., Venkatesh, K., Modeling, Simulation, And Control of Flexible Manu­facturing Systems, A Petri Net Approach, World Scientific, Series in Intelligent Control and Intelligent Automation, Vol. 6, World Scientific Publishing Co. Pte. Ltd., River Edge, New Jersey, 1999.

188