{"Affiliation":[{"label":"Affiliation","value":"Applied Science, Faculty of","attrs":{"lang":"en","ns":"http:\/\/vivoweb.org\/ontology\/core#departmentOrSchool","classmap":"vivo:EducationalProcess","property":"vivo:departmentOrSchool"},"iri":"http:\/\/vivoweb.org\/ontology\/core#departmentOrSchool","explain":"VIVO-ISF Ontology V1.6 Property; The department or school name within institution; Not intended to be an institution name."},{"label":"Affiliation","value":"Electrical and Computer Engineering, Department of","attrs":{"lang":"en","ns":"http:\/\/vivoweb.org\/ontology\/core#departmentOrSchool","classmap":"vivo:EducationalProcess","property":"vivo:departmentOrSchool"},"iri":"http:\/\/vivoweb.org\/ontology\/core#departmentOrSchool","explain":"VIVO-ISF Ontology V1.6 Property; The department or school name within institution; Not intended to be an institution name."}],"AggregatedSourceRepository":[{"label":"AggregatedSourceRepository","value":"DSpace","attrs":{"lang":"en","ns":"http:\/\/www.europeana.eu\/schemas\/edm\/dataProvider","classmap":"ore:Aggregation","property":"edm:dataProvider"},"iri":"http:\/\/www.europeana.eu\/schemas\/edm\/dataProvider","explain":"A Europeana Data Model Property; The name or identifier of the organization who contributes data indirectly to an aggregation service (e.g. Europeana)"}],"Campus":[{"label":"Campus","value":"UBCV","attrs":{"lang":"en","ns":"https:\/\/open.library.ubc.ca\/terms#degreeCampus","classmap":"oc:ThesisDescription","property":"oc:degreeCampus"},"iri":"https:\/\/open.library.ubc.ca\/terms#degreeCampus","explain":"UBC Open Collections Metadata Components; Local Field; Identifies the name of the campus from which the graduate completed their degree."}],"Creator":[{"label":"Creator","value":"Imai, Michael Kenji","attrs":{"lang":"en","ns":"http:\/\/purl.org\/dc\/terms\/creator","classmap":"dpla:SourceResource","property":"dcterms:creator"},"iri":"http:\/\/purl.org\/dc\/terms\/creator","explain":"A Dublin Core Terms Property; An entity primarily responsible for making the resource.; Examples of a Contributor include a person, an organization, or a service."}],"DateAvailable":[{"label":"DateAvailable","value":"2010-03-26T23:53:18Z","attrs":{"lang":"en","ns":"http:\/\/purl.org\/dc\/terms\/issued","classmap":"edm:WebResource","property":"dcterms:issued"},"iri":"http:\/\/purl.org\/dc\/terms\/issued","explain":"A Dublin Core Terms Property; Date of formal issuance (e.g., publication) of the resource."}],"DateIssued":[{"label":"DateIssued","value":"1981","attrs":{"lang":"en","ns":"http:\/\/purl.org\/dc\/terms\/issued","classmap":"oc:SourceResource","property":"dcterms:issued"},"iri":"http:\/\/purl.org\/dc\/terms\/issued","explain":"A Dublin Core Terms Property; Date of formal issuance (e.g., publication) of the resource."}],"Degree":[{"label":"Degree","value":"Master of Applied Science - MASc","attrs":{"lang":"en","ns":"http:\/\/vivoweb.org\/ontology\/core#relatedDegree","classmap":"vivo:ThesisDegree","property":"vivo:relatedDegree"},"iri":"http:\/\/vivoweb.org\/ontology\/core#relatedDegree","explain":"VIVO-ISF Ontology V1.6 Property; The thesis degree; Extended Property specified by UBC, as per https:\/\/wiki.duraspace.org\/display\/VIVO\/Ontology+Editor%27s+Guide"}],"DegreeGrantor":[{"label":"DegreeGrantor","value":"University of British Columbia","attrs":{"lang":"en","ns":"https:\/\/open.library.ubc.ca\/terms#degreeGrantor","classmap":"oc:ThesisDescription","property":"oc:degreeGrantor"},"iri":"https:\/\/open.library.ubc.ca\/terms#degreeGrantor","explain":"UBC Open Collections Metadata Components; Local Field; Indicates the institution where thesis was granted."}],"Description":[{"label":"Description","value":"This thesis introduces a new Petri net formulation for the general scheduling problem. The first part of this thesis concerns the development of the Petri net formulation. The Petri net formulation is a synthesis of concepts from three classes of Petri nets, marked graphs, timed Petri nets and coloured Petri nets. The general approach to the scheduling problem begins with the construction of a Petri net which models the structure of the general scheduling problem. The scheduling strategy is modeled by modifying the algorithm for the analysis of Petri nets. A schedule is generated by the execution of the Petri net model under the modified analysis.\r\nIn the second part of this thesis, The Petri net formulation is used for the analysis of a particular scheduling problem. The problem addressed is the scheduling of a task system on a set of processors of different speeds. The scheduling strategy to be analyzed is list scheduling. A new heuristic is proposed for the ordering of the tasks into a list. The proposed heuristic combines notions from the highest levels first heuristic and the longest processing time heuristic.\r\nThe performance of the proposed heuristic is evaluated by a comparision with other list ordering heuristics. The schedules which are generated by the proposed heuristic are compared to the schedules which are generated by the highest levels first heuristic, the Coffman and Graham Algorithm A and a random list for fifteen precedence constraints. The proposed heuristic generated a better schedule in 98 of 160 cases tested for the 15 precedence constraints. The proposed heuristic generated a schedule as good as the schedule which is generated by any other list in a further 39 cases.","attrs":{"lang":"en","ns":"http:\/\/purl.org\/dc\/terms\/description","classmap":"dpla:SourceResource","property":"dcterms:description"},"iri":"http:\/\/purl.org\/dc\/terms\/description","explain":"A Dublin Core Terms Property; An account of the resource.; Description may include but is not limited to: an abstract, a table of contents, a graphical representation, or a free-text account of the resource."}],"DigitalResourceOriginalRecord":[{"label":"DigitalResourceOriginalRecord","value":"https:\/\/circle.library.ubc.ca\/rest\/handle\/2429\/22797?expand=metadata","attrs":{"lang":"en","ns":"http:\/\/www.europeana.eu\/schemas\/edm\/aggregatedCHO","classmap":"ore:Aggregation","property":"edm:aggregatedCHO"},"iri":"http:\/\/www.europeana.eu\/schemas\/edm\/aggregatedCHO","explain":"A Europeana Data Model Property; The identifier of the source object, e.g. the Mona Lisa itself. This could be a full linked open date URI or an internal identifier"}],"FullText":[{"label":"FullText","value":"A PETRI NET FORMULATION FOR THE GENERAL SCHEDULING PROBLEM by MICHAEL KENJI IMAI B.Eng.Mgt., McMaster U n i v e r s i t y , 1979 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF APPLIED SCIENCE i n THE FACULTY OF GRADUATE STUDIES (Department of E l e c t r i c a l E n g i n e e r i n g ) We a c c e p t t h i s t h e s i s as c o n f o r m i n g t o t h e r e q u i r e d s t a n d a r d UNIVERSITY OF BRITISH COLUMBIA September, 1981 \u00a9 M i c h a e l K e n j i I ma i 1981 I n p r e s e n t i n g t h i s t h e s i s i n p a r t i a l f u l f i l m e n t o f t h e r e q u i r e m e n t s f o r an advanced degree a t the U n i v e r s i t y o f B r i t i s h C o l u m b i a , I ag r e e t h a t t h e L i b r a r y s h a l l make i t f r e e l y a v a i l a b l e f o r r e f e r e n c e and s t u d y . I f u r t h e r agree t h a t p e r m i s s i o n f o r e x t e n s i v e c o p y i n g o f t h i s t h e s i s f o r s c h o l a r l y p u r p o s e s may be g r a n t e d by t h e head o f my department o r by h i s o r h e r r e p r e s e n t a t i v e s . I t i s u n d e r s t o o d t h a t c o p y i n g o r p u b l i c a t i o n o f t h i s t h e s i s f o r f i n a n c i a l g a i n s h a l l n o t be a l l o w e d w i t h o u t my w r i t t e n p e r m i s s i o n . Michael K. Imai Department o f E l e c t r i c a l Engineering The U n i v e r s i t y o f B r i t i s h C o l u m b i a 2075 Wesbrook P l a c e V a n couver, Canada V6T 1W5 D a t e October 2, 1981 i i A b s t r a c t T h i s t h e s i s i n t r o d u c e s a new P e t r i net f o r m u l a t i o n f o r the g e n e r a l s c h e d u l i n g problem. The f i r s t p a r t of t h i s t h e s i s c o n c e r n s the development of the P e t r i net f o r m u l a t i o n . The P e t r i net f o r m u l a t i o n i s a s y n t h e s i s of c o n c e p t s from t h r e e c l a s s e s of P e t r i n e t s , marked graphs, timed P e t r i n e t s and c o l o u r e d P e t r i n e t s . The g e n e r a l approach t o the s c h e d u l i n g problem b e g i n s w i t h the c o n s t r u c t i o n of a P e t r i net which models the s t r u c t u r e of the g e n e r a l s c h e d u l i n g problem. The s c h e d u l i n g s t r a t e g y i s modeled by m o d i f y i n g the a l g o r i t h m f o r the a n a l y s i s of P e t r i n e t s . A s c h e d u l e i s g e n e r a t e d by the e x e c u t i o n of the P e t r i net model under the m o d i f i e d a n a l y s i s . In the second p a r t of t h i s t h e s i s , The P e t r i net f o r m u l a t i o n i s used f o r the a n a l y s i s of a p a r t i c u l a r s c h e d u l i n g problem. The problem a d d r e s s e d i s the s c h e d u l i n g of a t a s k system on a s e t of p r o c e s s o r s of d i f f e r e n t speeds. The s c h e d u l i n g s t r a t e g y t o be a n a l y z e d i s l i s t s c h e d u l i n g . A new h e u r i s t i c i s proposed f o r the o r d e r i n g of the t a s k s i n t o a l i s t . The proposed h e u r i s t i c combines n o t i o n s from the h i g h e s t l e v e l s f i r s t h e u r i s t i c and the l o n g e s t p r o c e s s i n g time h e u r i s t i c . The performance of the proposed h e u r i s t i c i s e v a l u a t e d by a c o m p a r i s i o n w i t h o t h e r l i s t o r d e r i n g h e u r i s t i c s . The s c h e d u l e s which a r e g e n e r a t e d by the proposed h e u r i s t i c are compared t o the s c h e d u l e s which a r e g e n e r a t e d by the h i g h e s t l e v e l s f i r s t h e u r i s t i c , the Coffman and Graham A l g o r i t h m A and a random l i s t f o r f i f t e e n precedence c o n s t r a i n t s . The proposed h e u r i s t i c g e n e r a t e d a b e t t e r s c h e d u l e i n 98 of 160 cases t e s t e d f o r the 15 precedence c o n s t r a i n t s . The proposed h e u r i s t i c g e n e r a t e d a s c h e d u l e as good as the s c h e d u l e which i s g e n e r a t e d by any o t h e r l i s t i n a f u r t h e r 39 c a s e s . i v T a b l e of C o n t e n t s A b s t r a c t i i T a b l e of C o n t e n t s i v L i s t of F i g u r e s v i L i s t of T a b l e s v i i i Acknowledgement .. i x 1 I n t r o d u c t i o n 1 1.2 Overview of the T h e s i s 4 2 P e t r i Nets 6 2.1 B a s i c Concepts and Ideas 6 2.2 A n a l y s i s of P e t r i Nets 18 2.2.1 S t r u c t u r a l A n a l y s i s 1 8 2.2.3 B e h a v i o r a l A n a l y s i s 22 2.3 C l a s s e s of P e t r i Nets 25 2.3.1 Marked Graphs 27 2.3.2 Timed P e t r i Nets 28 2.3.3 C o l o u r e d P e t r i Nets 35 3 The P e t r i Net F o r m u l a t i o n 41 3.1 The G e n e r a l S c h e d u l i n g Problem 41 3.2 The P e t r i Net F o r m u l a t i o n 45 3.2.1 The C o n s t r u c t i o n of the P e t r i Net Model 46 3.2.2 M o d e l i n g the B e h a v i o r of a S c h e d u l i n g S t r a t e g y 63 3.3 R e l a t e d Work 67 4 The A n a l y s i s of a S c h e d u l i n g Problem 75 4.1 The S c h e d u l i n g Model 77 4.2 A l g o r i t h m s f o r L i s t O r d e r i n g 8 1 4.3 E x p e r i m e n t a l O u t l i n e 95 4.4 R e s u l t s and D i s c u s s i o n 98 5 C o n c l u s i o n s and S u g g e s t i o n s f o r F u r t h e r Research 109 5.1 Summary and C o n c l u s i o n s 109 5.2 S u g g e s t i o n s f o r F u r t h e r Research 111 B i b l i o g r a p h y 114 Appendix A D e f i n i t i o n s and N o t a t i o n 123 Appendix B Sample R e s u l t s 128 v i L i s t of F i g u r e s 2.1 A simple P e t r i net . 7 2.2 A marked P e t r i net 9 2.3 T4 f i r e d 11 2.4 T3 f i r e d 11 2.5 2 consumer - s i n g l e producer 14 2.6 A p e r s i s t e n t P e t r i net 17 2.7 S t r u c t u r a l a n a l y s i s 20 2.8 B e h a v i o r a l a n a l y s i s 24 2.9 A r e a c h a b i l i t y t r e e 26 2.10 A marked graph 29 2.11 F i r i n g a timed t r a n s i t i o n 31 2.12 A timed t r a n s i t i o n 32 2.13 A timed t r a n s i t i o n ....... . .... ..................... 32 2.14 A producer-consumer system 36 2.15 A c o l o u r e d P e t r i net 38 2.16 S i m i l a r t r a n s i t i o n s 40 2.17 A t r a n s i t i o n scheme 40 3.1 A task system 44 3.2 A l g o r i t h m 1 47 3.3 The marked graph a f t e r Step 6 \u2014 . . \u2014 ... 49 3.4 Colour s e t s 51 3.5 A d y n a m i c a l l y r e c o n f i g u r a b l e a r c h i t e c t u r e ........... 53 3.6 Tasks ,T3 and T7 58 3.7 GRID A l g o r i t h m .... 65 3.8 A c a p a c i t a t e d computation graph 70 3.9 A l g o r i t h m to f i n d s(k) ... 72 v i i 3.10 Resource c o n f l i c t r e s o l u t i o n 73 4.1 C o l o u r s e t f o r p r o c e s s o r s of d i f f e r e n t speeds 79 4.1 Example 1 82 4.3 Example 1 l e v e l s 84 4.4 Coffman Graham A l g o r i t h m A 85 4.5 Example 1 - CG A l g o r i t h m A 86 4.6 Example 1 c h a i n l e n g t h 89 4.7 Ordered l i s t s of t a s k s f o r Example 1 92 4.8 Schedules f o r Example 1 93 4.9 Schedules f o r Example 1 94 B.1 Example 8 - <:most c o n s t r a i n e d 128 B.2 Example 9 - < : l e a s t c o n s t r a i n e d 129 v i i i L i s t of T a b l e s 3.1 T r a n s i t i o n scheme, T4 51 3.2 Task p r o c e s s o r r e q u i r e m e n t s and e x e c u t i o n times 55 3.3 T r a n s i t i o n scheme, T3 57 3.4 T r a n s i t i o n scheme, T7 57 3.5 T r a n s i t i o n scheme, T4 57 3.6 An a d m i s s a b l e s c h e d u l e 70 4.1 Bounds f o r l i s t s c h e d u l i n g 76 4.2 C o l o u r s e t f o r exp e r i m e n t s 97 4.3 Summary of R e s u l t s 99 4.4 Average w\/w* 101 4.5 R e s u l t s f o r Example 1 104 B.1 Example 1 l o n g e r e x e c u t i o n t i m e s slower p r o c e s s o r s ..130 B.2 Example 1 slow e r p r o c e s s o r s 131 B.3 Example 1 l o n g e r e x e c u t i o n t i m e s 132 B.4 Example 1 u n i t e x e c u t i o n t i m e s 133 i x Ac knowledqement I would l i k e t o thank Dr. Mabo R. I t o f o r i n t r o d u c i n g b o th the t o p i c s i n v o l v e d i n the r e s e a c h , P e t r i n e t s and s c h e d u l i n g t h e o r y . I a l s o thank him f o r h i s guidance and encouragement thoughout the c o u r s e of t h i s work. I g r a t e f u l l y acknowledge the f i n a n c i a l support of both the N a t i o n a l S c i e n c e s and E n g i n e e r i n g C o u n c i l and the U n i v e r s i t y of B r i t i s h Columbia'. 1 CHAPTER 1 INTRODUCTION A P e t r i net i s a f o r m a l model of i n f o r m a t i o n f l o w . P e t r i n e t s a r e p a r t i c u l a r l y u s e f u l f o r the d e s c r i p t i o n and the a n a l y s i s of systems which e x h i b i t asynchronous c o n c u r r e n t b e h a v i o r . P e t r i n e t s p r o v i d e a n a t u r a l and compact r e p r e s e n t a t i o n f o r asynchronous c o n c u r r e n t systems. The n a t u r a l and compact r e p r e s e n t a t i o n i s r e f l e c t e d i n a s i m p l e g r a p h i c a l r e p r e s e n t a t i o n . P e t r i n e t s a re e a s i l y extended so as to i n c r e a s e t h e i r a b i l i t y t o model systems. T h i s e x t e n d i b i l i t y a l l o w s compact and n a t u r a l d e s c r i p t i o n s f o r a wide v a r i e t y of systems. An i m p o r t a n t a s p e c t of P e t r i n e t s i s the a b i l i t y t o model both the s t r u c t u r e and the b e h a v i o r of systems. The s t u c t u r e of a system i s the s t a t i c p r o p e r t i e s i n a system which impose r e s t r i c t i o n s on the b e h a v i o r of the system. The b e h a v i o r of a system i s the s e t of a c t i o n s which occur as a r e s u l t of c o n d i t i o n s i n the ' system. The b e h a v i o r i s dynamic i n n a t u r e s i n c e the o c c u r r e n c e of an a c t i o n causes new c o n d i t i o n s t o become v a l i d . The new c o n d i t i o n s i n t u r n a l l o w more a c t i o n s t o o c c u r . Thus, P e t r i n e t s a r e a p o w e r f u l method of d e s c r i b i n g systems i n which the s t r u c t u r e and b e h a v i o r a r e of e q u a l importance. The g e n e r a l s c h e d u l i n g problem i s t h a t of s c h e d u l i n g the 2 e x e c u t i o n of a s e t of t a s k s on a set of r e s o u r c e s . For the purposes of t h i s t h e s i s , the s e t of r e s o u r c e s i s a computer system. The computer system i s c o m p rised of p r o c e s s o r s , p r i m a r y and secondary s t o r a g e , and p o s s i b l y o t h e r d e v i c e s . The t a s k system then c o n s i s t s of b l o c k s of independent code from a program. I t i s assumed the r e s o u r c e s a r e s u f f i c i e n t f o r the e x e c u t i o n of a l l of the t a s k s ; t h a t i s , the minimum amount of any r e s o u r c e i s the maximum, over a l l t a s k s , of the minimum amount r e q u i r e d by any s i n g l e t a s k . I t i s assumed t h a t a v a l i d s c h e dule e x i s t s . The scope of the problem i s t o f i n d the best schedule g i v e n a t a s k system, a s e t of r e s o u r c e s and a s c h e d u l i n g s t r a t e g y . The g e n e r a l s c h e d u l i n g problem may be c o n s i d e r e d i n terms of s t r u c t u r e and b e h a v i o r . The s t r u c t u r e of the g e n e r a l s c h e d u l i n g problem i s the o p e r a t i o n a l precedence c o n s t r a i n t s of the t a s k system. F u r t h e r s t r u c t u r e i s imposed by the r e s o u r c e s which a r e used f o r the e x e c u t i o n of the t a s k system. I f we c o n s i d e r s t o r a g e d e v i c e s as a s e t of r e s o u r c e s , the s e t of r e s o u r c e s may be s u b d i v i d e d i n t o p r i m a r y and secondary s t o r a g e w i t h p r i m a r y s t o r a g e b e i n g the f a s t e r of the two. The secondary s t o r a g e may be c o m p r ised of d i s k and tape d r i v e s . In e i t h e r c a s e , t h e r e are d i f f e r e n c e s which impose c o n s t r a i n t s on the use of the r e s o u r c e of s t o r a g e space. These r e l a t i o n s between the members of a s e t of r e s o u r c e s add t o the s t r u c t u r e of the g e n e r a l s c h e d u l i n g problem. The t o t a l b e h a v i o r of a system i s c h a r a c t e r i s e d by a 3 s t a t e space. The t r a n s i t i o n s between the s t a t e s are the p o s s i b l e a c t i o n s which may oc c u r i n a p a r t i c u l a r s t a t e . Suppose t h a t a p a r t i c u l a r b e h a v i o r i s imposed on the a c t i o n s of the system. As the system p r o g r e s s e s t h r o u g h the s t a t e space, a c e r t a i n sequence of s t a t e s i s f o l l o w e d . In terms of the g e n e r a l s c h e d u l i n g problem, t h e s t a t e s are d e f i n e d by the t a s k s which have completed e x e c u t i o n , the t a s k s which a re t o be e x e c u t e d and the t a s k s which a r e c u r r e n t l y e x e c u t i n g . A sche d u l e i n t h i s d e s c r i p t i o n i s a sequence of s t a t e s . The s c h e d u l i n g s t r a t e g y determines which sequence of s t a t e s i s f o l l o w e d . Hence, the s c h e d u l i n g s t r a t e g y i s the b e h a v i o r of the g e n e r a l s c h e d u l i n g problem. The o b j e c t i v e of t h i s t h e s i s i s the development of a P e t r i net f o r m u l a t i o n t o p r o v i d e a means of s t u d y i n g g e n e r a l s c h e d u l i n g problems. P e t r i n e t s have the a b i l i t y t o model both the s t r u c t u r e a r i s i n g from the precedence r e l a t i o n of the t a s k system and the s t r u c t u r e a r i s i n g from the r e l a t i o n s h i p s p r e s e n t i n the r e s o u r c e s . P e t r i n e t s a l s o have the a b i l i t y t o d e s c r i b e the b e h a v i o r of the system. The s c h e d u l i n g s t r a t e g i e s to be e v a l u a t e d a r e modeled by m o d i f i c a t i o n s t o the P e t r i net a n a l y s i s . In an e a r l y paper by S h a p i r o and S a i n t [ 8 4 ] , P e t r i n e t s are a p p l i e d t o a sequencing problem. The machine code f o r a FORTRAN DO-loop e x e c u t i n g on a CDC 6600 i s o p t i m i s e d u s i n g a P e t r i net model of the DO l o o p and the hardware c o n s t r a i n t s . The modeling which was p r e s e n t e d i s a t a much lower l e v e l than 4 i s i n t e n d e d by the P e t r i net f o r m u l a t i o n t o be p r e s e n t e d h e r e . The method of o p t i m i z a t i o n i s e x e c u t i o n of the net u n t i l a s o l u t i o n which i s a t or near a t h e o r e t i c a l o p t i m a l one i s found. A second use of P e t r i n e t s i n a s c h e d u l i n g c o n t e x t uses a r e s t r i c t e d c l a s s of P e t r i n e t s which cannot model c o n f l i c t s [92, 9 3 ] . To r e s o l v e a c o n f l i c t , a P e t r i net i s g e n e r a t e d f o r each p o s s i b l e r e s o l u t i o n . Each net i s then e v a l u a t e d t o determine the b e s t manner i n which t o r e s o l v e the c o n f l i c t . In both approaches the o p t i m i z a t i o n i s t h rough e x h a u s t i v e s e a r c h e s ; t h i s i s not the aim of the f o r m u l a t i o n t o be p r e s e n t e d h e r e . Both approaches a r e d i s c u s s e d i n d e t a i l a f t e r the i n t r o d u c t i o n of the f o r m u l a t i o n . 1.2 Overview of the T h e s i s Chapter 2 i s an i n t r o d u c t i o n t o P e t r i n e t s . The b a s i c i d e a s and p r o p e r t i e s are d i s c u s s s e d a t an i n f o r m a l l e v e l . The a n a l y s i s of P e t r i n e t s i s p r e s e n t e d i n two s e c t i o n s , the s t r u c t u r a l a n a l y s i s and the b e h a v i o r a l a n a y l s i s . Three c l a s s e s of P e t r i n e t s , marked graphs, t i m e d P e t r i n e t s and c o l o u r e d P e t r i n e t s , are i n t r o d u c e d w i t h emphasis on the p r o p e r t i e s which a r e r e l e v a n t t o the development of the f o r m u l a t i o n i n Chapter 3. Chapter 3 d e a l s w i t h the d e f i n i t i o n of the P e t r i net f o r m u l a t i o n of the g e n e r a l s c h e d u l i n g problem. The g e n e r a l 5 s c h e d u l i n g model upon which the f o r m u l a t i o n i s based i s p r e s e n t e d . The d e f i n i t i o n of the P e t r i net f o r m u l a t i o n i s s e p a r a t e d i n t o two l o g i c a l s e c t i o n s . F i r s t , the c o n s t r u c t i o n of the P e t r i net model of the f o r m u l a t i o n i s d i s c u s s e d . S e c o n d l y , the modeling of the b e h a v i o r of the s c h e d u l i n g s t r a t e g y by the P e t r i net a n a l y s i s i s p r e s e n t e d . The P e t r i net f o r m u l a t i o n i s compared i n d e t a i l t o p r e v i o u s uses of P e t r i n e t s f o r s c h e d u l i n g . Chapter 4 p r e s e n t s the a n a l y s i s of a s p e c i f i c s c h e d u l i n g problem t o demonstrate the use of the P e t r i net f o r m u l a t i o n . The problem which i s a n a l y z e d i s the use of l i s t s c h e d u l i n g on p r o c e s s o r s of d i f f e r e n t speeds. R e s u l t s of the comparison of the h e u r i s t i c s and a d i s c u s s i o n of the r e s u l t s i s p r e s e n t e d . Chapter 5 i s a summary of the s i g n i f i c a n t r e s u l t s and c o n c l u s i o n s . S u g g e s t i o n s f o r f u r t h e r r e s e a r c h a r e a l s o i n c l u d e d . Appendix A c o n t a i n s the f o r m a l d e f i n i t i o n s and the f o r m a l n o t a t i o n f o r the terms which are d i s c u s s e d a t an i n f o r m a l l e v e l i n t h i s t h e s i s . 6 CHAPTER 2 PETRI NETS A P e t r i net i s a f o r m a l model f o r the r e p r e s e n t a t i o n of systems. P e t r i n e t s a r e u s e f u l f o r the modeling of systems i n which the c o n c u r r e n c y of a c t i o n s i s an im p o r t a n t a s p e c t of the system. In these s i t u a t i o n s , the P e t r i n e t s p r o v i d e a n a t u r a l r e p r e s e n t a t i o n f o r the system which i s r e f l e c t e d i n a si m p l e g r a p h i c a l r e p r e s e n t a t i o n . The P e t r i net i s e a s i l y extended to i n c r e a s e i t s a b i l i t y t o model d i f f e r e n t c o n c u r r e n t systems. 2.1 B a s i c Concepts and Ideas A P e t r i net i s a p a i r ,
, where P i s a s e t of p l a c e s and T i s a s e t of t r a n s i t i o n s [ 5 3 ] , A c o n v e n i e n t means of c o n c e p t u a l i z i n g a P e t r i net i s i n terms of i t s g r a p h i c a l r e p r e s e n t a t i o n , a b i p a r t i t e d i r e c t e d graph. F i g u r e 2.1(a) shows the graph of a s i m p l e net whose f o r m a l r e p r e s e n t a t i o n appears i n F i g u r e 2 . 1 ( b ) . The f o r m a l r e p r e s e n t a t i o n i s d e f i n e d i n Appendix A. In the g r a p h i c a l r e p r e s e n t a t i o n , the two types of nodes, c i r c l e s and r e c t a n g l e s , r e p r e s e n t p l a c e s and t r a n s i t i o n s , r e s p e c t i v e l y . The s t r u c t u r a l p r o p e r t i e s of the net a r e the r e l a t i o n s h i p s between the p l a c e s and the t r a n s i t i o n s of the ne t . The r e l a t i o n s h i p s a r e the d i r e c t e d edges i n the g r a p h i c a l r e p r e s e n t a t i o n of the n e t . A p l a c e which i s con n e c t e d by an P4 P6 P3 P5 (a) G r a p h i c a l R e p r e s e n t a t i o n P={P1 rP2,P3 rP4,P5,P6} T={T1,T2,T3,T4} TI : P1 -> P2 T2: P2+P4 P1+P-3 T3: P3+P5 -> P4+P6 T4: P6 * P5 (b) Formal R e p r e s e n t a t i o n F i g u r e 2.1: A simple P e t r i net 8 edge from i t s e l f t o a t r a n s i t i o n , i s s a i d t o be an i n p u t p l a c e t o t h a t t r a n s i t i o n . A p l a c e which i s c o n n e c t e d by an edge from a t r a n s i t i o n t o i t s e l f i s s a i d t o be an output p l a c e of t h a t t r a n s i t i o n . S i m i l a r i l y , t r a n s i t i o n s may be d e s c r i b e d i n terms of i n p u t s and o u t p u t s t o p l a c e s . In F i g u r e 2 . 1 ( a ) , p l a c e P5 i s an output p l a c e of t r a n s i t i o n T4. P l a c e s P2 and P4 are i n p u t p l a c e s t o t r a n s i t i o n T2. C o n s i d e r the analogy of the f l o w c h a r t of a computer program. The s t r u c t u r e of the f l o w c h a r t r e p r e s e n t s the r e l a t i o n s h i p between the d i f f e r e n t s e c t i o n s of the program. I f a marker i s used to t r a c e on the f l o w c h a r t the e x e c u t i o n of. the program, th e n , the marker t r a v e r s e s the f l o w c h a r t as the d i f f e r e n t s e c t i o n s of the program are e x e c u t e d . The markers i n a P e t r i net a r e c a l l e d t o k e ns which a r e h e l d i n the p l a c e s of the n e t . The g r a p h i c a l r e p r e s e n t a t i o n of a token i s a d o t 1 , as shown i n F i g u r e 2.2. A marked P e t r i net i s a t r i p l e ,
, where m i s a marking. A marking i s a d i s t r i b u t i o n of tokens i n the p l a c e s of a n e t . Each marking r e p r e s e n t s a d i f f e r e n t s t a t e of the P e t r i n e t ; j u s t as i n the f l o w c h a r t a n a l o g y , the f l o w c h a r t marker i n d i c a t e s the s t a t e of the computer program. The b e h a v i o r a l or dynamic p r o p e r t i e s of the net are c h a r a c t e r i z e d by the movement of tokens i n the n e t . Tokens move through the net by the f i r i n g of the t r a n s i t i o n s . A 1 I f a p l a c e h o l d s s e v e r a l t o k ens i t i s c o n v e n i e n t t o i n d i c a t e the number of tokens by the number r a t h e r than a number of d o t s . 9 F i g u r e 2.2: A marked P e t r i net 10 t r a n s i t i o n may f i r e i f i t i s e n a b l e d i n the c u r r e n t marking under the assumed f i r i n g r u l e s . In the s i m p l e s t f i r i n g r u l e , a t r a n s i t i o n i s e n a b l e d when t h e r e i s a t l e a s t one token i n each of i t s i n p u t p l a c e s . In more complex f i r i n g r u l e s , w e i g h t s which are a s s i g n e d t o t h e - edges and c a p a c i t i e s which a r e a s s i g n e d t o p l a c e s are taken i n t o c o n s i d e r a t i o n when d e t e r m i n i n g whether a t r a n s i t i o n i s e n a b l e d . In F i g u r e 2.2, t r a n s i t i o n T4 i s e n a b l e d under the marking shown. A t r a n s i t i o n f i r e s by removing a token from each of i t s i n p u t p l a c e s and d e p o s i t i n g a token i n t o each of i t s output p l a c e s . The f i r i n g of a t r a n s i t i o n i s assumed t o occur i n s t a n t a n e o u s l y . The movementof tokens i s shown i n F i g u r e s 2.3 and 2.4 which i l l u s t r a t e s the f i r i n g of t r a n s i t i o n s , T4 then T3, r e s p e c t i v e l y , on the marked net of F i g u r e 2.2. The e x e c u t i o n of a net i s the f i r i n g of a sequence of t r a n s i t i o n s from an i n i t i a l marking of the n e t . The P e t r i net models the s t r u c t u r e and the b e h a v i o r of systems which may be e x p r e s s e d i n terms of c o n d i t i o n s and e v e n t s . The p l a c e s r e p r e s e n t c o n d i t i o n s which may be p r e s e n t i n the system and the t r a n s i t i o n s r e p r e s e n t the events i n the system which occur as a r e s u l t of the c o n d i t i o n s p r e s e n t . The edges i n d i c a t e which c o n d i t i o n s a r e n e c e s s a r y f o r the o c c u r r e n c e of an event and which c o n d i t i o n s r e s u l t from the o c c u r r e n c e of an e v e n t . C o n s i d e r the f o l l o w i n g c o n d i t i o n s and e v e n t s f o r the net shown i n F i g u r e 2.1. 11 F i g u r e 2.4: T3 f i r e d 1 2 P1: consumer ready t o consume a u n i t P2: consumer ready t o t a k e a u n i t from b u f f e r P3: b u f f e r empty P4: b u f f e r f u l l P5: producer ready t o produce a u n i t P6: producer ready t o d e p o s i t a u n i t i n t o b u f f e r T1: consumer consumes a u n i t T2: consumer t a k e s a u n i t from b u f f e r T3: producer d e p o s i t s a u n i t i n t o b u f f e r T4: producer produces a u n i t The P e t r i net now models the i n t e r a c t i o n of a producer and a consumer through a bounded b u f f e r . The marking i n d i c a t e the c o n d i t i o n s i n the system which are c u r r e n t l y v a l i d . The example i l l u s t r a t e s two i m p o r t a n t i d e a s u n d e r l y i n g the a b i l i t y of P e t r i n e t s t o model systems. F i r s t , the net c o r r e c t l y models the c o n c u r r e n c y i n the system. In F i g u r e 2.4, t r a n s i t i o n s T2 and T4 are e n a b l e d under the marking. In terms of the producer-consumer system, the consumer can t a k e a u n i t from the b u f f e r or the producer can produce another u n i t . These a c t i o n s may occur c o n c u r r e n t l y , which i s modeled i f both T2 and T4 f i r e t o g e t h e r . The a b i l i t y t o model c o n c u r r e n c y a r i s e s s i n c e the f i r i n g of a t r a n s i t i o n causes o n l y a l o c a l change of s t a t e . Only p l a c e s which are i n p u t or output t o a t r a n s i t i o n a r e a f f e c t e d . 13 The second i m p o r t a n t i d e a i s t h a t the P e t r i net model imposes the c o r r e c t sequencing of events i n the system. In the example, t r a n s i t i o n s T4 and T3 a r e f i r e d b e f o r e T2 may f i r e . In terms of the producer-consumer system, the producer must produce a u n i t and d e p o s i t i t i n t o the b u f f e r b e f o r e the consumer can take a u n i t from the b u f f e r . The t r a n s i t i o n s a r e sequenced s i n c e t hey are c o n n e c t e d by a s e r i e s of edges upon which the tokens t r a v e l . P e t r i n e t s thus have the a b i l i t y t o model c o r r e c t l y b o t h the c o n c u r r e n c y between events and the sequ e n c i n g c o n s t r a i n t s of e v e n t s of the system. C o n s i d e r the a d d i t i o n of a second consumer t o the producer-consumer example shown i n F i g u r e 2.2. The P e t r i net must model the c o n t e n t i o n between the consumers when both a r e ready t o take a u n i t from the b u f f e r . The P e t r i net model i s shown i n F i g u r e 2.5 where the a d d i t i o n a l p l a c e s a re the c o n d i t i o n s and e v e n t s of the second consumer. T r a n s i t i o n s T2 and T6 share a common i n p u t p l a c e , P4, and are s a i d t o be i n c o n f l i c t . Under the marking shown, e i t h e r T2 or T6 but not bo t h may f i r e . Hence the P e t r i net c o r r e c t l y models the c o n t e n t i o n f o r the u n i t i n the b u f f e r . C o n f l i c t i s a s t r u c t u r a l p r o p e r t y which e x i s t s as a r e s u l t of the r e l a t i o n s h i p between r e l a t e d e v e n t s . The b e h a v i o r of a system i s c h a r a c t e r i z e d by the movement of tokens i n the P e t r i net model of the system. P r o p e r t i e s of the b e h a v i o r of the system can be i n f e r r e d from the b e h a v i o r a l p r o p e r t i e s of the P e t r i n e t . Three such p r o p e r t i e s of P e t r i 14 F i g u r e 2.5: 2 consumer - s i n g l e producer system 15 nets a r e l i v e n e s s , p e r s i s t e n c e and boundedness. The l i v e n e s s p r o p e r t y i s i m p o r t a n t f o r the d e t e r m i n a t i o n of the p r o p e r t i e s of a system. A t r a n s i t i o n i s l i v e i f t h e r e e x i s t s a marking r e a c h a b l e from the i n i t i a l marking i n which the t r a n s i t i o n i s e n a b l e d . A marking, m2, i s r e a c h a b l e from a marking, m,, i f t h e r e e x i s t s a sequence of t r a n s i t i o n s , e, which t a k e s m, through a sequence of s t a t e s r e s u l t i n g i n m2. A s t r o n g e r statement of l i v e n e s s i s t h a t a t r a n s i t i o n i s l i v e i f t h e r e e x i s t s a marking r e a c h a b l e from a l l o t h e r markings of the net i n which the t r a n s i t i o n i s e n a b l e d . A net i s l i v e i f a l l of i t s t r a n s i t i o n s a re l i v e . I f the P e t r i net model of a system i s l i v e , then one can i n f e r (assuming a c o r r e c t model), t h a t the system has no a c t i o n s which never occur and t h a t the system cannot reach a s t a t e i n which no a c t i o n s may o c c u r . The l i v e n e s s p r o p e r t y of P e t r i n e t s has been the s u b j e c t of much r e s e a r c h [3, 5, 6, 11, 43, 52, 53, 55, 68, 69, 76, 88, 94]. The use of the l i v e n e s s p r o p e r t y f o r d e t e r m i n i n g p r o p e r t i e s of p a r a l l e l programs [36, 38, 44, 48} and f o r d e t e r m i n i n g p r o p e r t i e s of c o n c u r r e n t systems [18, 31, 37, 41, 50, 51, 70, 71, 72, 76, 83, 91, 98, 99] i s a l s o w e l l s t u d i e d . The b e h a v i o r a l p r o p e r t y c l o s e l y r e l a t e d t o c o n f l i c t i s p e r s i s t e n c e . A marked net i s p e r s i s t e n t i f the f i r i n g of a t r a n s i t i o n does not d i s a b l e any o t h e r t r a n s i t i o n . In F i g u r e 2.5, the f i r i n g of one of T2 or T6, under the marking shown, removes a t o k e n from the p l a c e , P4, t h u s d i s a b l i n g the o t h e r 16 t r a n s i t i o n . Hence, the net i s not p e r s i s t e n t . I f no c o n f l i c t s e x i s t i n the n e t , t h e n , the net i s p e r s i s t e n t . However, a net may have a c o n f l i c t and e x h i b i t p e r s i s t e n c e . In F i g u r e , 2 . 6 , the t r a n s i t i o n s T1 and T2 are i n c o n f l i c t s i n c e they share a common i n p u t p l a c e . The f i r i n g of T1 under the marking shown does not d i s a b l e T2. The f i r i n g of T2 under i t s e n a b l i n g marking does not d i s a b l e T1. The p e r s i s t e n c e p r o p e r t y of P e t r i n e t s i s u s e f u l i n the modeling and d e s i g n of hardware [8, 6 6 ] . A p e r s i s t e n t P e t r i net model of a hardware c i r c u i t ensures t h a t no race h a z a r d s e x i s t i n the c i r c u i t . The f i n a l p r o p e r t y of P e t r i n e t s t o be d i s c u s s e d i s boundedness. For some i n t e r p r e t a t i o n s of a n e t , one may c o n s i d e r the tokens t o r e p r e s e n t r e s o u r c e s and the p l a c e s t o r e p r e s e n t s t o r a g e f o r the r e s o u r c e s . For most r e a l systems of i n t e r e s t , the amount of s t o r a g e f o r r e s o u r c e s i s f i n i t e . A p l a c e i s k\u2014bounded i f the token count of t h a t p l a c e never exceeds k. A net i s bounded i f a l l of i t s p l a c e s a r e bounded. A net i s s a f e i f a l l of i t s p l a c e s a r e bounded by a v a l u e of one. I t can e a s i l y be seen t h a t the examples d i s c u s s e d are not o n l y bounded but a l s o s a f e . T h i s completes the i n t r o d u c t i o n t o P e t r i n e t s and the p r o p e r t i e s r e l e v a n t t o the model i n t r o d u c e d i n Chapter 3. P e t r i n e t s are a r i c h a r e a of r e s e a r c h c o v e r i n g a wide range of a p p l i c a t i o n s and t h e o r e t i c a l t o p i c s . A s e l e c t i o n of papers i s l i s t e d i n the B i b l i o g r a p h y and a l s o i n the two survey papers [ 2 , 7 8 ] , 17 Figure 2.6: A persistent P e t r i net 18 2.2 A n a l y s i s of P e t r i Nets The a n a l y s i s of P e t r i n e t s i s s e p a r a t e d i n t o two phases: s t r u c t u r a l and b e h a v i o r a l a n a l y s i s [ 7 4 ] . The s e p a r a t i o n of the a n a l y s i s i n t o two phases i s based upon the two s t a g e s of m o d e l i n g , s y n t h e s i s of the model and o p e r a t i o n of the model. The s t r u c t u r a l a n a l y s i s d e t e r m i n e s the s t a t i c p r o p e r t i e s of the net and the b e h a v i o r a l a n a l y s i s d e t e r m i n e s the dynamic p r o p e r t i e s of the n e t . The s t r u c t u r a l a n a l y s i s i s used t o r e s t r i c t the b e h a v i o r a l a n a l y s i s t o P e t r i n e t s which are l i v e and bounded. 2.2.1 S t r u c t u r a l A n a l y s i s S t r u c t u r a l a n a l y s i s i s based upon the n o t i o n t h a t c e r t a i n s t r u c t u r e s i n the net a f f e c t the b e h a v i o r of the n e t . The c h a r a c t e r i s t i c m a t r i x i s an nX m m a t r i x r e p r e s e n t i n g the s t r u c t u r e of the n e t . The elements of r , r i j ' a r e the net e f f e c t on the token count of p l a c e i by the f i r i n g of t r a n s i t i o n j . The s t r u c t u r e s are i d e n t i f i e d by the s o l u t i o n s t o r\u00abg<0, r\u00bbg>0, f\u2022r<0, and f\u00bbr>0, where f and g are v e c t o r s and \"\u2022\" i s a matix m u l t i p l i c a t i o n . The s o l u t i o n s t o r\u00abg^0 and t o r\u00bbg<0 i d e n t i f y s e t s of 19 t r a n s i t i o n s which c r e a t e or d e s t r o y t o k e n s . C o n s i d e r the example shown i n F i g u r e 2.7. g, i s the t r a n s p o s e of a p o s i t i v e i n t e g e r s o l u t i o n t o r\u00abg>0 1. Each element of g, i s g r e a t e r than or e q u a l t o z e r o . T2 and T3 a r e i d e n t i f i e d by the non-zero elements of g,. The s t r u c t u r e s i d e n t i f i e d by the p o s i t i v e i n t e g e r s o l u t i o n s t o r\u00abg>0 are c a l l e d g e n e r a t o r s . As T2 and T3 are r e p e a t e d l y f i r e d , an a r b i t r a r y number of tokens can accumulate i n p l a c e P4. g 2 i s the t r a n s p o s e of a n o n - t r i v i a l s o l u t i o n t o r\u00bbg<0. T1 and T2 form an a b s o r b e r . I f T1 and T2 are r e p e a t e d l y f i r e d , an a r b i t r a r y number of tokens can be removed from the p l a c e P4. I f a g e n e r a t o r e x i s t s , the net cannot be bounded. I f an a b s o r b e r e x i s t s i n a net which i s bounded, t h e n , the net i s not l i v e [ 8 8 ] , The s o l u t i o n s t o f\u00abr<0 and t o f\u00abr^0 i d e n t i f y s e t s of p l a c e s which a f f e c t the movement of tokens t h r o u g h the n e t . f , i s a p o s i t i v e i n t e g e r s o l u t i o n t o f\u00bbr<0. The p l a c e s P3 and P4 which a r e i d e n t i f i e d by the non-zero elements of f , are c a l l e d a d e a d l o c k . I f t r a n s i t i o n T3 or T2 i s f i r e d a t o k e n remains i n P4 or P3, r e s p e c t i v e l y . However, i f T1 or T4 i s f i r e d , t h e n , P3 l o s e s a token which i t cannot r e g a i n by the f i r i n g of any o t h e r t r a n s i t i o n . f 2 i s a s o l u t i o n t o f\u00abr>0 which i d e n t i f i e s P5 as a t r a p . Once a token i s p l a c e d i n P5 i t cannot be r e t u r n t o the r e s t of the n e t . In g e n e r a l a t r a p c o n s i s t s of s e v e r a l p l a c e s ; the tokens i n the t r a p remain i n the t r a p unable t o 1The r e l a t i o n s ^ and > a r e component-wise c o m p a r i s o n s . (a) A Pe t r i net (b) C h a r a c t e r i s t i c matrix, T 9i=(0, 1 , V, 0) g 2 = ( 1 , 1 , 0 , 0 ) f , = (0, 0, 1 , 1 , 0) f 2=(0, 0, 0, 0, 1) (c) Solutions to r\u00bbg, f\u00bbr Figure 2.7: Structural analysis 21 c i r c u l a t e i n the r e s t of the n e t . I f a deadlock e x i s t s i n a ne t , t h e n , the net i s not l i v e . I f a t r a p e x i s t s i n a n e t , t h e n , the net i s l i v e i f i t i s not bounded [ 8 8 ] . The dot p r o d u c t , r * g , i s the o v e r a l l r e s u l t on the token count of a p l a c e by the f i r i n g of a sequence of t r a n s i t i o n s , e. In the f i r i n g sequence, a, each t r a n s i t i o n i s f i r e d k^ t i m e s , where g = ( k ) , k 2 , . . . , k i , . . . , k | r i ) . I f r\u00abg=0, t h e n , the net e f f e c t of a f i r i n g sequence, c, on a marking x i s 0. I f the net e f f e c t i s 0 , th e n , a marking r e t u r n s t o i t s e l f , t h a t i s , x= bj . Two t a s k s , T^ . and ^ , are ready t o e x e c u t e and a r e t o be a s s i g n e d t o t h e p r o c e s s o r s . The e x e c u t i o n t i m e s f o r the t a s k s a r e and T^, r e s p e c t i v e l y . To d e r i v e the f i r s t s o r t i n g c o n d i t i o n of t h e h e u r i s t i c , d e f i n e a q u a n t i t y , A. L e t the c h a i n l e n g t h of t h e t a s k s T^ and T^ be 1 y and l - j _ , r e s p e c t i v e l y . Suppose t a s k T^ i s a s s i g n e d t o execute on p r o c e s s o r i and t a s k i s a s s i g n e d t o e x e c u t e on p r o c e s s o r j . L e t 6 ^ be the l e n g t h of the c h a i n of t a s k when i t i s a s s i g n e d t o t h e p r o c e s s o r i . To c o n s i d e r o n l y the e f f e c t of the c u r r e n t a s s i g n m e n t , assume 88 the remainder of the c h a i n i s e x e c u t e d on the f a s t e s t p r o c e s s o r . S i m i l a r i l y f o r t a s k T^, C o n s i d e r the d i f f e r e n c e , A, between the c h a i n l e n g t h s . A \" V - \\ * T k \/ b i - { 1 r ; i + T i \/ b i ) ( , ) I f the a ssumption t h a t T i s a s s i g n e d t o p r o c e s s o r i i s v a l i d , t h e n , A>0. - ^ ( l | < - T K + T k \/ b i ) - ( l 1 - T 1 + T 1 \/ b ; j ) > 0 (2) ( l k - l 1 ) > r k - ^ \/ ^ - ( ^ - ^ \/ b ^ ) . (3) E q u a t i o n (3) s t a t e s t h a t t h e the d i f f e r e n c e i n t h e c h a i n l e n g t h s of the t a s k s must be g r e a t e r than the d i f f e r e n c e between the amount the e x e c u t i o n t i m e s a r e extended by the e x e c u t i o n on p r o c e s s o r i or j . S i n c e , the l i s t s h o u l d be o r d e r e d such t h a t t a s k i s h i g h e r p r i o r i t y , t h e r e f o r e , e q u a t i o n (3) may be i n t e r p r e t e d t o o r d e r t h e l i s t i n d e c r e a s i n g c h a i n l e n g t h s . The c h a i n l e n g t h s f o r Example 1 a r e shown i n F i g u r e 4.6. The second c r i t e r i a f o r s o r t i n g the l i s t of t a s k s r e s o l v e s the case of. e q u a l c h a i n l e n g t h . C o n s i d e r t h e s i t u a t i o n w i t h two p r o c e s s o r s r e a d y t o e x e c u t e two t a s k s , as d e s c r i b e d above. Assume t a s k i s a s s i g n e d t o p r o c e s s o r i and t a s k T^ i s a s s i g n e d t o p r o c e s s o r j . From e q u a t i o n ( 1 ) , A = T u ( 1 - l \/ b i ) - - r : i ( 1 - 1 \/ b ^ ) . I f t h e a s s u m p t i o n t h a t t a s k T^ i s a s s i g n e d t o p r o c e s s o r i i s v a l i d , then A>0. t a s k \/ c h a i n l e n g t h F i g u r e 4.6: Example 1 c h a i n l e n g t h 90 T h e r e f o r e , Hence, But, T k A l > ( 1 - 1 \/ b j ) \/ ( 1 - 1 \/ b - ) | 1 ~ 1 \/ b j | > i 1 - 1 \/b ( i - i \/ b ^ \/ d - i \/ b ^ i and, The second c r i t e r i a i s to o r d e r the t a s k s i n or d e r of d e c r e a s i n g e x e c u t i o n time when the c h a i n l e n g t h s a r e e q u a l . Note e q u a t i o n (1) can a l s o be i n t e r p r e t e d t o o r d e r the l i s t L a c c o r d i n g t o d e c r e a s i n g subsequent c h a i n l e n g t h . S i m i l a r i l y , a second s o r t i n g c r i t e r i a i s the e x e c u t i o n time of the t a s k s . The maximum subsequent c h a i n l e n g t h maximum e x e c u t i o n t i m e , MSCMT, h e u r i s t i c and the maximum c h a i n l e n g t h maximum e x e c u t i o n t i m e , MCLMT, h e u r i s t i c a r e i d e n t i c a l , i n g e n e r a l , except i n c e r t a i n s i t u a t i o n s when e i t h e r h e u r i s t i c may y i e l d the wrong s c h e d u l e . C o n s i d e r two p r o c e s s o r s ready t o execute t a s k s and two t a s k s , T^ and T^, as above. Suppose the c h a i n l e n g t h of T^ i s g r e a t e r than the c h a i n l e n g t h of T^. F u r t h e r suppose the subsequent c h a i n l e n g t h of t a s k i s l e s s than the subsequent c h a i n l e n g t h of T,. U s i n g the MSCMT l i s t , T^ has a h i g h e r p r i o r i t y and i s a s s i g n e d t o a f a s t e r p r o c e s s o r . U s i n g the MCLMT l i s t , T^ has a h i g h e r p r i o r i t y and i s a s s i g n e d t o a f a s t e r p r o c e s s o r . E i t h e r l i s t may r e s u l t i n a worse sc h e d u l e than the r e v e r s e d s c h e d u l e V V V T i 91 depending on the d i f f e r e n c e s i n the l e n g t h s and the d i f f e r e n c e s i n the p r o c e s s o r speeds. T h i s i s a p o s s i b l e source of n o n - o p t i m a l i t y f o r e i t h e r h e u r i s t i c . The h e u r i s t i c reduces t o s i m p l e r forms i f r e s t r i c t e d problems are c o n s i d e r e d . I f the e x e c u t i o n times are r e s t r i c t e d t o be u n i t t i m e s , then the h e u r i s t i c reduces t o h i g h e s t l e v e l s f i r s t . Each t a s k can o n l y add a s i n g l e u n i t t o the l e n g t h , t h e r e f o r e , the l e n g t h i s i d e n t i c a l t o the l e v e l . I f the p a r t i a l o r d e r i s r e s t r i c t e d t o a n u l l p a r t i a l o r d e r , t h e n , the h e u r i s t i c reduces t o a l o n g e s t p r o c e s s i n g time h e u r i s t i c . A n u l l p a r t i a l o r d e r means the t a s k s a r e independent. In t h i s case the subequent c h a i n l e n g t h s of a l l t a s k s i s 0. The t a s k s a r e t h e n , o r d e r e d u s i n g the second c r i t e r i a i n t o a l i s t of d e c r e a s i n g e x e c u t i o n t i m e s . The l i s t s f o r Example 1 r e s u l t i n g from each of the t h r e e h e u r i s t i c s and a random l i s t a r e shown i n F i g u r e 4.7. The l i s t s a r e s o r t e d from the random l i s t shown. The Gantt c h a r t s of the s c h e d u l e s f o r the e x e c u t i o n of Example 1 on a s e t of p r o c e s s o r s P={P!,P 2,P 3,P\u201e} a r e shown on F i g u r e s 4.8 and 4.9. The speeds of the p r o c e s s o r s a r e b, = 1 and b 2=b 3=b 4=2\/3. (T1 T2 T3 T4 T5 T7 T10 T6 T9 T8 T14 T12 T13 T16 T15 T18 T19 T11 T21 T17 T20) (a) MCLMT ' (T1 T2 T3 T4 T5 T7 TG T9 T8 T10 T14 T12 T13 T16 T15 T18 T.19 T17 T11 T20 T21) (b) HLF (T2 T1 T3 T4 T5 T6 T7 T9 T10 T8 T13 T12 T14 T16 T15 T18 T19 T1.7. T20 T i l T21) (c) CG (T6 T13 T12 T18 T3 T5 T21 T2 T1 T16 T20 T14 T10 T11 T4 T17 T7 T8 T9 T19 T15) \" (d) RANDOM Figure 4.7: Ordered l i s t s of tasks f o r Example 1 T10 T i l T21 T3 \" T13 T19 T2 T6 T8 T12 T15 T1 T4 T5 T7 T9 T14 T16 K T18 T20 I 1 1 1 1 1 \u2014I 1 1 ' i i \u00bb i i i i i 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 ( a ) HLF T10 T11 T20 T3 T12 T19 T2 T6 T8 T13 T15 T17 T1 T4 T5 T7 T9 T14 T16 T21 T18 I 1\u2014 1 I . I ' i i i i I I i i i i i i 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 (b) MCLMT Figure 4.8: Schedules f o r Example 1 T10 T21 T3 T7 T12 T19 TI T1 1 T14 T15 T2 T4 T5 T8 T9 T13 T16 [ j r . , i i i T6 I I 1 1 1 Tie' \u2022 T20 1 1 1 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80. 85 (a) Coffman-Graham T10 T20 T1 T12 T19 T3 T2 T4 T11 T5 T7 T8 T9 T14 T13 T15 T16 T17 I T2 1 T6 T18 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 (b) Random Figure 4.9: Schedules f o r Example 1 95 4.3 E x p e r i m e n t a l O u t l i n e The GRID a n a l y s i s a l g o r i t h m and the a d d i t i o n a l programs f o r the comparison of the h e u r i s t i c s are implemented i n LISP. The s y m b o l i c c o m p u t a t i o n a l c a p a b i l i t i e s of LISP a l l o w the r e t e n t i o n of the grammar-style d e f i n i t i o n of the t r a n s i t i o n s (see Appendix A and F i g u r e 2 . 1 ( b ) ) . The grammar-style d e f i n i t i o n s a l s o a l l o w the use of s e l f - l o o p s , an e s s e n t i a l p a r t of the P e t r i net f o r m a l i z a t i o n . T r a n s i t i o n s can a l s o be d e f i n e d as v e c t o r s of l e n g t h n, where n i s the number of p l a c e s . A v e c t o r i s d e f i n e d f o r the i n p u t p l a c e s and a l s o f o r the output p l a c e s . The non-zero elements of the v e c t o r i n d i c a t e which p l a c e s a r e connected t o the t r a n s i t i o n . S i n c e i n g e n e r a l , a t r a n s i t i o n i s connected t o a s m a l l number of p l a c e s , r e l a t i v e t o n, many of the elements of the v e c t o r are z e r o . The t h r e e h e u r i s t i c s d e s c r i b e d i n Chapter 4.2, and a randomly g e n e r a t e d l i s t , a r e compared f o r 15 p a r t i a l o r d e r s . The s o u r c e s of the p a r t i a l o r d e r s a r e as n o t e d i n T a b l e 4.3. Three s p e c i a l cases of the p a r t i a l o r d e r s are used i n the c o m p a r i s o n , a n u l l p a r t i a l o r d e r , a most c o n s t r a i n e d p a r t i a l o r d e r and a l e a s t c o n s t r a i n e d p a r t i a l o r d e r , the l a t t e r two p a r t i a l o r d e r s are shown i n F i g u r e s B.1 and B.2 of Appendix B. The s i z e of the t a s k s e t , %J , ranges i n s i z e from 10 t a s k s to 85 t a s k s . Four randomly g e n e r a t e d p a r t i a l o r d e r s of s i z e s , 40 t a s k s , 50 t a s k s , 65 t a s k s and. 75 t a s k s , a r e i n c l u d e d for. the 96 c o m p a r i s o n . Each t a s k i n the p a r t i a l o r d e r s i s a s s i g n e d an e x e c u t i o n time chosen from a u n i f o r m d i s t r i b u t i o n between a minimum e x e c u t i o n time and a maximum e x e c u t i o n t i m e . The e x e c u t i o n time i s assumed t o be a p o s i t i v e i n t e g e r . For the examples taken from o t h e r s o u r c e s , the comparisons a r e made f o r the d e f i n e d e x e c u t i o n t i m e s i n a d d i t i o n t o the random e x e c u t i o n t i m e s i f the e x e c u t i o n time a r e not d e f i n e d t o be u n i t e x e c u t i o n t i m e s . The c o l o u r s e t , X p, which i s used f o r the comparisons i s shown i n Table 4.2. The assumption t h a t the speeds a r e r a t i o n a l numbers and the e x e c u t i o n t i m e s are p o s i t i v e i n t e g e r s a v o i d s the problems a s s o c i a t e d w i t h f i n i t e machine a r i t h m a t i c f o r r e a l numbers. T h i s assmption i s made w i t h o u t l o s s of g e n e r a l i t y . A t a s k system i s d e f i n e d by a t a s k s e t , a p a r t i a l o r d e r , and the e x e c u t i o n t i m e s f o r the t a s k s . The t a s k s of the p a r t i a l o r d e r s a re a s s i g n e d d i f f e r e n t e x e c u t i o n t i m e s , thus c r e a t i n g s e v e r a l t a s k systems based on a s i n g l e p a r t i a l o r d e r . For each t a s k system, the sc h e d u l e i s found f o r i t s e x e c u t i o n on s e v e r a l d i f f e r e n t s e t s of p r o c e s s o r s . In terms, of the P e t r i net f o r m a l i z a t i o n , the P e t r i net i s exe c u t e d w i t h s e v e r a l i n i t i a l m a r k i n g s , mO, of the form, m0=(READY c , C \u00a3 ... c j ) . Each i n i t i a l marking i s a l i s t of tokens w i t h a s i n g l e READY C o l o u r ' P r o c e s s o r Speed c, 1 c 2 2\/3 c 3 1\/2 c. 1\/3 c 5 1\/5 c 6 1\/6 T a b l e 4.2: C o l o u r s e t f o r e x p e r i m e n t s 98 token and two or more p r o c e s s o r t o k e n s . The READY token i s ne c e s s a r y f o r the p o r t i o n of the P e t r i net modeling the data dependencies (see Step 4 of A l g o r i t h m 1). c, and c^ are elements of the c o l o u r s e t , X p. At l e a s t one token i n the i n i t i a l marking i s the token c,, s i n c e i t i s assumed t h a t the f a s t e s t p r o c e s s o r has i t s speed n o r m a l i z e d t o 1. 4.4 R e s u l t s and D i s c u s s i o n A summary of the r e s u l t s i s shown i n Tab l e 4.3. n 0 i s the number of d i f f e r e n t s e t s of p r o c e s s o r s t e s t e d f o r the ta s k systems based on the p a r t i a l o r d e r , n, i s the number of times the l i s t from the h e u r i s t i c g e n e r a t e s the sc h e d u l e w i t h the s h o r t e s t e x e c u t i o n t i m e . n 2 i s the number of times the l i s t from the h e u r i s t i c g e n e r a t e s a sch e d u l e as good as a t l e a s t one o t h e r l i s t . The maximum c h a i n l e n g t h maximum t i m e , MCLMT, l i s t i s found t o generate a s c h e d u l e whose l e n g t h i s s h o r t e r than the l e n g t h of the s c h e d u l e s which a r e gen e r a t e d by the o t h e r h e u r i s t i c s i n 98 of 160 ca s e s f o r the f i f t e e n examples. The MCLMT l i s t i s a l s o found t o ge n e r a t e a sch e d u l e whose l e n g t h i s no l o n g e r than one or more of the h e u r i s t i c s compared i n 39 of 160 c a s e s t e s t e d . O v e r a l l , the MCLMT l i s t g e n e r a t e d the best s c h e d u l e of the f o u r l i s t s compared 86 per cen t of the cases t e s t e d . Note Example 1 ac c o u n t s f o r over 20 per cent of the cases Example r no MSCMT HLF CG RANDOM Notes ni ni ni ni n J ni t l ! 1 21 34 23 9 0 7 2 2 0 2 Example 2 l e s s 1 2 22 1 1 10 1 0 1 0 0 0 0 [14] p. 88 3 19 21 . 9 3 4 0 4 3 1 0 [24] 4 85 10 6 2 1 1 1 1 0 0 [57] 5 16 6 5 0 1 0 0 0 0 0 6 . 10 13 4 6 0 1 3 4 0 6 [15] p. 6 7 12 20 13 6 0 2 1 6 0 1 [1] 8 16 6 2 2 0 2 2 2 0 0 <:most constrained 9 15 6 5 1 0 1 0 1 0 1 <:least constrained 10 19 7 2 4 1 4 0 1 0 1 [14] p. 92 11 30 6 3 3 0 3 0 2 0 0 [59] 12 40 6 5 0 1 0 0 0 0 0 Randomly generated 13 50 5 5 0 0 0 0 0 0 o Randomly generated 14 65 6 6 0 0 0 0 0 0 0 Randomly generated 15 75 3 1 1 1 1 0 1 o o Randomly generated Total 160 98 39 9 23 14 23 1 11 Notes \":. 1. r Is the number of tasks. 2 . no Is the number of cases. 3 . n i 1s the number of best schedules. 4. ni Is the number of schedules at least as good as one other. Table 4 . 3 : Sumary of Results 100 t e s t e d . S i n c e , Example 1 i s Example 2 l e s s a s i n g l e independent t a s k , c o n s i d e r o n l y the r e s u l t s f o r examples 2 through 15. In t h i s c a s e , the MCLMT l i s t i s found t o generate the s h o r t e s t s c h e d u l e i n 75 of 127 ca s e s and t o generate a sc h e d u l e a t l e a s t as good as one o t h e r l i s t i n 30 of 127 c a s e s . The MCLMT i s found t o gen e r a t e the best s c h e d u l e i n 83 per cent of the ca s e s i f Example 1 i s ommitted. The r e s u l t s a r e h e a v i l y weighted by t a s k system w i t h fewer than 20 t a s k s . Examples 2, 4, and 11-15 are the examples i n which the number of t a s k s ranges from 20 t o 85, e x c l u d i n g Example 1. For thes e Examples, i t i s found t h a t the MCLMT l i s t g e n e r a t e d the s h o r t e s t s c h e d u l e i n 35 of 47 cases and a sch e d u l e a t l e a s t as good as one o t h e r l i s t i n another 8 of 47 c a s e s . For the l a r g e r t a s k systems, the MCLMT i s found t o gene r a t e the bes t s c h e d u l e i n 91 per cen t of the cases which were t e s t e d . The l e n g t h s of the s c h e d u l e s g e n e r a t e d by each of the h e u r i s t i c s i s compared t o J a f f e ' s lower bound on the l e n g t h of an o p t i m a l s c h e d u l e . The r a t i o i s an i n d i c a t i o n of the a b s o l u t e preformance of the h e u r i s t i c s . J a f f e ' s bound i s used s i n c e the bound i s e a s i l y c a l c u l a t e d . The r a t i o s w\/w*' are shown i n Tab l e 4.4. The lower bound, w*', i s d e f i n e d by the f o l l o w i n g lemma. 101 Example r MCLMT HLF CG RANDOM 1 21 1.17 1 .35 1.35 1 .38 2 22 1.10 1.18 1 .27 1:38 3 19 1 .26 1 .50 1 .30 1 .42 4 85 1.14 1 .20 1.19 1 .37 5 16 1 .05 1.15 1 .25 1 .29 6 10 1.21 1 .45 1.29 1 .35 7 12 1.19 1.71 1 .26 2.00 8 .16 1.53 1 .53 1 .65 1 .76 9 15 1.13 1 .22 1 .20 1.19 10 19 1.11 1.1 1 1.28 1.41 1 1 30 1 .08 1.11 1.15 1 .21 12 40 1 .41 1 .57 1 .54 1.61 13 - 50 1.00 1 .04 1 .02 1.15 14 65 1 .04 1.13 1.14 1.15 15 75 1 .05 1.06 1 .08 1 .22 where w*' i s the lower bound on the length Of the optimal schedule Table 4.4: Average w\/w*' 102 Lemma 1 [40] Let (%\/,<, v) be a t a s k system t o be sc h e d u l e d on a set of p r o c e s s o r s of d i f f e r e n t speeds. L e t w* be the f i n i s h i n g time of an o p t i m a l s c h e d u l e . Then, w*>max(M\/B a,h\/bT). The r a t i o s g i v e n i n Ta b l e 4.4 a r e a s i m p l e mean of the cases t e s t e d f o r each example. The a c t u a l v a l u e of w\/w*' ranges i n v a l u e from 1.00 t o 2.31. In g e n e r a l , the v a l u e s a re found t o be i n the range from 1.00 t o 1.50. The r a t i o w\/w*' i s an i n d i c a t o r of performance f o r the l i s t o r d e r i n g h e u r i s t i c s compared. A l a r g e v a l u e of w\/w*' may be caused by two re a s o n s . Under c e r t a i n c o n d i t i o n s , any l i s t used f o r l i s t s c h e d u l i n g r e s u l t s i n poor performance. T h i s case i s t o be d i s c u s s e d l a t e r i n the s p e c i f i c t e s t on Example 1. The second cause of a l a r g e v a l u e of w\/w*' i s t h a t the lower bound may u n d e r e s t i m a t e the l e n g t h of an o p t i m a l s c h e d u l e . J a f f e ' s bound i s a v e r y l o o s e bound f o r c e r t a i n t y p e s of o p e r a t i o n a l precedence c o n s t r a i n t s . I f the p a r t i a l o r d e r i s ve r y h i g h l y c o n s t r a i n e d , such as Example 8, th e n , t h e r e a r e many c h a i n s which a re of a p p r o x i m a t e l y the same l e n g t h as the c h a i n d e f i n i n g the h e i g h t , h. C o n s i d e r the case where s e v e r a l such c h a i n s d i f f e r from the l o n g e s t c h a i n by o n l y a few t a s k s . Assume the s e t of p r o c e s s o r s i n c l u d e s o n l y a s i n g l e f a s t p r o c e s s o r and the bound f o r the o p t i m a l i s d e f i n e d by h\/b^. I f the t a s k s on .the l o n g e s t c h a i n a r e exe c u t e d on the f a s t e s t 103 p r o c e s s o r s , then the r e m a i n i n g t a s k s on the c h a i n s which share t a s k s w i t h the l o n g e s t c h a i n must be ex e c u t e d on a slower p r o c e s s o r so d e l a y i n g the e x e c u t i o n of the s h a r e d p o r t i o n s of the l o n g e s t c h a i n . Thus, an o p t i m a l s c h e d u l e f o r the s e t of p r o c e s s o r s may be l o n g e r than the l e n g t h of the l o n g e s t c h a i n i n t h i s c a s e . An example of t h i s s i t u a t i o n i s d i s c u s s e d l a t e r . T a ble 4.5 i s an example of a t e s t run f o r a . p a r t i c u l a r assignment of e x e c u t i o n t i m e s f o r Example 1. The l e n g t h s of the s c h e d u l e s a r e compared t o J a f f e ' s lower bound f o r the l e n g t h of the o p t i m a l , w*', and the l e n g t h of an o p t i m a l s c h e d u l e , w*. The l e n g t h of an o p t i m a l s c h e d u l e i s i n c l u d e d as a comparison f o r J a f f e ' s lower bound. In g e n e r a l , the problem of f i n d i n g an o p t i m a l schedule i s i n t r a c t a b l e . The s t r u c t u r e of the precedence c o n s t r a i n t s of Example 1 and the s m a l l s i z e of the set of t a s k s e n a b l e s the c o n s t r u c t i o n of an o p t i m a l s c h e d u l e . The method of c o n s t r u c t i o n of an o p t i m a l s c h e d u l e i s s i m i l a r t o the method of Fernandez and B u s s e l l [25] f o r f i n d i n g the lower bound i n the case of i d e n t i c a l p r o c e s s o r s . In g e n e r a l , the f o l l o w i n g p r o c e d u r e amounts t o an e x h a u s t i v e s e a r c h . The c o n s t r u c t i o n of an o p t i m a l b e g i n s w i t h the i n s p e c t i o n of the Gantt c h a r t of the be s t s c h e d u l e r e s u l t i n g from the f o u r l i s t s . The t a s k assignments a r e swapped i f the swapping s h o r t e n s the l e n g t h of the s c h e d u l e . The swapping c o n t i n u e s u n t i l no f u r t h e r improvemant can be made. Processors Execution Time w MCLMT HLF CG RANDOM w* ' w* C l C l 70 72 72 72 66 68 C i C l C i 62 64 64 62 62 62 C l C l 88 88 95 93 80 82 C i C I C 2 67 67 82 82 62 67 C l C z C l C z 67 69 77 82 . 62 67 C l C l 90 92 92 92 88 90 C l C a C1 78 94 78 94 66 78 C i C i C i C ] 78 80 92 104 62 78 Table 4 . 5 : Results f o r Example 1 105 As an example, i t i s shown t h a t the l e n g t h of an o p t i m a l s c h e d u l e f o r the s e t of p r o c e s s o r s d e f i n e d by ( c , , c 2 , c 2 , c 2 ) i s 68. From the Gantt c h a r t shown i n F i g u r e 4.7(b), the t a s k system can be p a r t i t i o n e d i n t o t h r e e p a r t i t i o n s . T1 t o T1 1, T12 t o T14 and T15 t o T21. There i s no o v e r l a p between the e x e c u t i o n of the t a s k s i n each of the p a r t i t i o n s except f o r t a s k s T10 and T11 due t o the precedence c o n s t r a i n t s . T10 and T11 may o v e r l a p the second and t h i r d p a r t i t i o n s but i f they are e x e c u t e d as e a r l y as p o s s i b l e , t h e n , t h e r e i s no o v e r l a p . The l e n g t h of the o p t i m a l s c h e d u l e i s the sum of the l e n g t h s the o p t i m a l s c h e d u l e f o r each p a r t i t i o n . In the f i r s t p a r t i t i o n , the l o n g e s t c h a i n i s (T1, T4, T5, T7, T 9 ) . The l o n g e s t c h a i n i s of l e n g t h 38 u n i t s . Each t a s k i n the c h a i n i s e x e c t u t e d on the f a s t e s t p r o c e s s o r . A l l o t h e r t a s k s , i n the p a r t i t i o n i s e x e c u t e d on the slower p r o c e s s o r s and they complete e x e c u t i o n b e f o r e the t a s k s on the l o n g e s t c h a i n complete e x e c u t i o n . T h e r e f o r e the t a s k s not on the l o n g e s t c h a i n do not d e l a y the the t a s k s on the l o n g e s t c h a i n . S i n c e the p a r t i t i o n cannot be executed i n l e s s t i m e , the s c h e d u l e of l e n g t h 38 u n i t s i s o p t i m a l . In the second p a r t i t i o n t h e r e are s u f f i c i e n t p r o c e s s o r s f o r each t a s k t o be executed c o n c u r r e n t l y . The t a s k s a r e of e q u a l e x e c u t i o n t i m e s and two of the t a s k s a r e a s s i g n e d t o the slow p r o c e s s o r s . Note t h a t no b e n e f i t can r e s u l t from d e l a y i n g the e x e c u t i o n of any of the t h r e e t a s k s s i n c e the the e x e c u t i o n of two of the t a s k s on the f a s t p r o c e s s o r would 1 06 r e s u l t i n an e x e c u t i o n time of 8 u n i t s . Hence, the o p t i m a l i s 6 u n i t s . In the t h i r d p a r t i t i o n , c o n s i d e r the c h a i n s C1=(T16,T18,T21) and C2=(T16,T19). Chain C1 i s of l e n g t h 20 u n i t s and c h a i n C2 i s of l e n g t h 18. S i n c e o n l y one of the c h a i n s may be ex e c u t e d f u l l y on the f a s t p r o c e s s o r , e i t h e r T19 or T18 and T21 must be ex e c u t e d on a slower p r o c e s s o r . Assume T16 i s executed on the f a s t p r c e s s o r s i n c e i t i s common t o both c h a i n s . I f T19 i s exe c u t e d on a slower p r o c e s s o r , t h e n , the a c t u a l e x e c u t i o n time f o r c h a i n C2 i s 23 u n i t s and f o r c h a i n C1 i s 22 u n i t s . I f t a s k s T18 and T21 a r e executed on the sl o w e r p r o c e s s o r , t h e n , the a c t u a l e x e c u t i o n time f o r c h a i n C1 i s 28 and f o r c h a i n C2 i s 20. Hence, the e x e c u t i o n time i s m i n i m i z e d i f T19 i s exe c u t e d on a slower p r o c e s s o r . Note the e x e c u t i o n of t a s k s T15, T17 and T20 does not a f f e c t the e x e c u t i o n time of the p a r t i t i o n s i n c e the t a s k s may be ex e c u t e d s e r i a l l y on a slow p r o c e s s o r i n 21 u n i t s of t i m e . The l e n g t h of the o p t i m a l s c h e d u l e f o r the t h i r d p a r t i t i o n i s 22 un i t s . The l e n g t h of the o p t i m a l s c h e d u l e i s the sum of the l e n g t h s of the o p t i m a l s c h e d u l e s f o r each p a r t i t i o n . w*=38+6+22=67 The l e n g t h of an o p t i m a l s c h e d u l e f o r the e x e c u t i o n of Example 1 on the s e t of p r o c e s s o r s d e f i n e d by ( c 1 f c 2 , c2, c 2 ) i s 68 u n i t s . 107 A comparison between J a f f e ' s lower bound and the l e n g t h of an o p t i m a l schedule i n d i c a t e s t h a t , i n g e n e r a l , the bound i s r e l a t i v e l y c l o s e t o the l e n g t h of an o p t i m a l s c h e d u l e . However, note t h a t f o r the l a s t two s e t s of p r o c e s s o r s t e s t e d . The l e n g t h of an o p t i m a l s c h e d u l e exceeds the bound by a s i g n i f i c a n t amount, w*'\/w*=1.26. In t h i s c a s e , the bound y i e l d s a poor e s t i m a t e of the l e n g t h of an o p t i m a l , as d e s c r i b e d above. The t a s k s of Example 1 are h i g h l y c o n s t r a i n e d as i l l u s t r a t e d i n F i g u r e 4.2. The second c o n d i t i o n , t h a t a s i n g l e f a s t p r o c e s s o r i s i n c l u d e d i n the s e t of p r o c e s s o r s , i s a l s o met i n the l a s t two c a s e s . T h i s b e h a v i o r i s v e r i f i e d u s i n g the o t h e r precedence r e l a t i o n s . The p r o c e s s o r speeds and the maximum e x e c u t i o n t i m e s a re a r b i t r a r y parameters i n the e x p e r i m e n t a l procedure o u t l i n e d i n Chapter 4.3. Sample r e s u l t s f o r t e s t runs t o examine the e f f e c t of a l t e r i n g t h e s e parameters a r e shown i n Appendix B. The parameters a r e changed t o a l t e r the r a t i o s , T W \/ T W I H and bi\/b^. In the f i r s t t e s t , \/r^,n=b, \/bn and l o n g e r e x e c u t i o n times and slower speeds a r e used. In the second t e s t , \/T\u201e;\u201e m i s an element of P* D e f i n i t i o n 4 [53] The c h a r a c t e r i s t i c m a t r i x , r . ( r i 3 ) = a x i - b i 3 D e f i n i t i o n 5 [80] A timed P e t r i n e t , TPN. TPN=y, where y i s any marking on a p a t h from the r o o t node and > i s a component-wise comparison, X i > y i f 1y^ i s t r u e . F i g u r e 2.8 shows a P e t r i net and i t s r e a c h a b i l i t y t r e e . The i n i t i a l marking of the net i s P1+P3. T3 i s the o n l y t r a n s i t i o n e n a b l e d i n the i n i t i a l m arking. The marking P1+P4 i s c r e a t e d by the f i r i n g of T3. T r a n s i t i o n T2 f i r e s on the marking P1+P4 y i e l d i n g the marking P1+P2+P3. Note t h a t P1+P2+P3>P1+P3 and P2>0P2, hence, the c o e f f i c i e n t of P2 becomes o. T r a n s i t i o n s T1 and T3 a r e e n a b l e d under P1+oP2+P3. The f i r i n g of T1 c r e a t e s the marking P1+oP2, s i n c e u-1=o. S i n c e t h e r e a r e no t r a n s i t i o n s which are e n a b l e d under P1+uP2, the node i s marked as a dead marking. The f i r i n g of T3 i n the (a) a P e t r i net (P1+oP2+P3)* where * i n d i c a t e s an e x i s t i n g s t a t e and ** i n d i c a t e s a dead s t a t e (b) R e a c h a b i l i t y Tree F i g u r e 2.8: B e h a v i o r a l a n a l y s i s 25 marking P1+uP2+P3 c r e a t e s the marking P1+oP2+P4. T r a n s i t i o n T2 i s f i r e d t o c r e a t e the marking P1+uP2+P3. S i n c e the marking l a b e l s a node, the l e a f i s marked as an e x i s t i n g node. The g e n e r a t i o n of the t r e e i s complete s i n c e a l l of the l e a v e s a r e e i t h e r dead markings or e x i s t i n g markings and no new markings can be g e n e r a t e d . The p r o p e r t i e s of the net a r e d e c i d e d by i n s p e c t i o n of the r e a c h a b i l i t y t r e e . The t r e e of F i g u r e 2.8(b) has a l e a f marked as a dead s t a t e . Thus, the net i s not l i v e . S i n c e the t r e e c o n t a i n s nodes which are l a b e l e d w i t h markings which use u f o r a c o e f f i c i e n t , the net i s not bounded. The net i s not p e r s i s t e n c e s i n c e the net i s not l i v e . F i g u r e 2.9 shows the r e a c h a b i l i t y t r e e f o r the P e t r i net of F i g u r e 2.6. The t r e e c o n t a i n s no l e a v e s which are marked as dead m a r k i n g s , hence, the net i s l i v e . The c o e f f i c i e n t s f o r each p l a c e i n each of the markings i s 1, t h e r e f o r e the net i s s a f e . The net i s a l s o p e r s i s t e n t , s i n c e , each node has a t most a s i n g l e s u c e s s o r . 2.3 C l a s s e s of P e t r i Nets The P e t r i net model p r e s e n t e d i n Chapter 3.3 i s based upon t h r e e c l a s s e s of P e t r i n e t s : marked graphs, timed P e t r i n e t s and c o l o u r e d P e t r i n e t s . Marked graphs a r e a c l a s s of P e t r i n e t s w i t h a r e s t r i c t e d s t r u c t u r e . The r e s t r i c t i o n p e r m i t s g e n e r a l c o n d i t i o n s f o r the l i v e n e s s and the s a f e n e s s 26 \u2022 r (P1+P2) | T1 (P3+P4) | T3 (P3+P1) j T2-(P2+P4) j T3 (P1+P2)* where * i n d i c a t e s an e x i s t i n g s t a t e F i g u r e 2.9: R e a c h a b i l i t y t r e e f o r net of F i g u r e 2.6 27 of nets b e l o n g i n g t o the c l a s s . The timed n e t s model the n o t i o n of time i n the n e t . C o l o u r e d n e t s a l l o w the modeling of r e s o u r c e a t t r i b u t e s and dynamic h i e r a r c h i e s . The timed P e t r i n e t s and c o l o u r e d P e t r i n e t s are e x t e n s i o n s t o the P e t r i n e t s d e s c r i b e d i n Chapter 2.1. The e x t e n s i o n s i n c r e a s e a b i l i t y of P e t r i n e t s t o model systems i n a n a t u r a l and compact manner. 2.3.1 Marked Graphs The c l a s s of P e t r i n e t s known as marked g r a p h s 1 , i s c r e a t e d by r e s t r i c t i n g the s t r u c t u r e of the n e t . Each p l a c e of the net i s r e s t r i c t e d t o be an i n p u t t o a s i n g l e t r a n s i t i o n and to be output t o a s i n g l e t r a n s i t i o n . The example shown i n F i g u r e 2.1 i s a marked graph. S i n c e no c o n f l i c t s a r e a l l o w e d , o n l y d e t e r m i n i s t i c systems can be modeled w i t h a marked graph. However, the r e s t r i c t i o n s do a l l o w a s i m p l i f i c a t i o n of the a n a l y s i s of the n e t s . Marked graphs a r e a p a r t i c u l a r i l y w e l l -s t u d i e d c l a s s of P e t r i n e t s [17, 44, 39, 52, 53, 67, 69, 70, 92, 93, 100] and many r e s u l t s a re known f o r t h i s c l a s s of P e t r i n e t s . Due t o the r e s t r i c t e d n a t u r e of the s t r u c t u r e of the marked graph, a d i r e c t e d graph, G=