Journal of Intelligent and Robotic Systems

, Volume 8, Issue 1, pp 99–123 | Cite as

Petri net based process scheduling: A model of the control system of flexible manufacturing systems

  • Antonio Camurri
  • Paolo Franchi
  • Francesca Gandolfo
  • Renato Zaccaria


In this paper, we propose a class of algorithms for the sub-optimal solution of a particular class of problems of process scheduling, particularly focusing on a case study in the area of flexible manufacturing systems (FMSs). The general class of problems we face in our approach is characterized as follows: there is a set of concurrent processes, each formed by a number of temporally related tasks (segments). Tasks are executable by alternate resource sets, different both in performance and costs. Processes and tasks are characterized by release times, due dates, and deadlines. Time constraints are also present in the availability of each resource in resource sets. It has been proven that such a problem does not admit an algorithm for an optimal solution in polynomial time. Our proposed algorithm finds a sub-optimal schedule according to a set of optimization criteria, based on task and process times (earliness, tardiness), and/or time independent costs of resources. Our approach to process scheduling is based on Timed Coloured Petri Nets. We describe the structure of the coordination and scheduling algorithms, concentrating on (i) the general-purpose component, and (ii) the application-dependent component. In particular, the paper focuses on the following issues: (i) theautomatic synthesis of Petri net models of the coordination subsystem, starting from the problem knowledge base; (ii) the dynamic behavior of the coordination subsystem, whose kernel is a High Level Petri net executor, a coordination process based on an original, general purpose algorithm; (iii) the structure of the real-time scheduling subsystem, based on particular heuristic sub-optimal multi-criteria algorithms. Furthermore, the paper defines the interaction mechanisms between the coordination and scheduling subsystems. Our approach clearly distinguishes the mechanism of the net execution from the decision support system. Two conceptually distinct levels, which correspond to two different, interacting implementation modules in the prototype CASE tool, have been defined: theexecutor and thescheduler levels. One of the outstanding differences between these levels is that the executor is conceived as a fast, efficient coordination process, without special-purpose problem-solving capabilities in case of conflicts. The scheduler, on the other hand, is the adaptive, distributed component, whose behavior may heavily depend on the problem class. If the scheduler fails, the executor is, in any case, able to proceed with a general-purpose conflict resolution strategy. Experimental results on the real-time performance of the kernel of the implemented system are finally shown in the paper. The approach described in this paper is at the basis of a joint project with industrial partners for the development of a CASE tool for the simulation of blast furnaces.

Key words

High-level petri nets timed Petri nets concurrent scheduling flexible manufacturing systems CASE 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ajmone Marsan, M., Balbo, G., and Conte, G., A class of generalized stochastic Petri nets for the performance evaluation of multi-processors systems,ACM Trans. Comput. Syst. 2(2), 93–122 (1984).Google Scholar
  2. 2.
    Ajmone Marsan, M., Balbo, G., and Trivedi, K. (eds.),Proc. IEEE/ACM Int. Workshop Timed Petri Nets, Torino, Italy, (July 1985).Google Scholar
  3. 3.
    Allen, J.F., Towards a general theory of action and time,Artificial Intell. 23, 123–154 (1984).Google Scholar
  4. 4.
    Anderson, D.P. and Kuivila, R., A system for computer music performance,ACM Trans. Comput. Syst. 8(1), 56–82 (1990).Google Scholar
  5. 5.
    Anthonisse, J.M., Van Hee, K.M. and Lenstra, J.K., Resource-constrained project scheduling: an international exercise in DSS development, Note OS-N8702, Centre for Mathematics and Computer Science, Amsterdam, the Netherlands (1987); also inJ. Decision Support Syst. (1989).Google Scholar
  6. 6.
    Balbo, G., Chiola, G., Franceschini, G., and Molinar Roet, G., Generalized stochastic Petri nets for the performance evaluation of FMS,Proc. IEEE Int. Conf. Robotics and Automation, Raleigh, North Carolina, March 1987, IEEE Computer Society Press, pp. 1013–1018.Google Scholar
  7. 7.
    Bruno, G. and Morisio, M., Petri-net based simulation of manufacturing cells,Proc. IEEE Int. Conf. Robotics and Automation, Raleigh, North Carolina, March 1987, IEEE Computer Society Press, pp. 1174–1179.Google Scholar
  8. 8.
    Camurri, A. and Franchi, P., An approach to the design and implementation of the hierarchical control system of FMS combining a structured knowledge representation formalism and high-level Petri nets,Proc. 1990 IEEE Int. Conf. Robotics and Automation, Vol. 1, Cincinnati, USA, IEEE Computer Society Press, (1990), pp. 520–525.Google Scholar
  9. 9.
    Camurri, A. and Frixione, M., Structured representation of FMS integrating SI-nets and high-level Petri nets,Appl. Artificial Intell. 4(2), 109–131 (1990).Google Scholar
  10. 10.
    Camurri, A., Poggi, A., Vercelli, G. and Zaccaria, R., A-Nets: Structured representation of time and actions using Petri nets,European Workshop on Application and Theory of Petri Nets, Venice, June (1988).Google Scholar
  11. 11.
    Camurri, A. and Troiano, E., PETREX: a software tool for system modeling and simulation based on Petri nets,Proc. AICA Annual Conference, Trieste, Italy, (1989), Associazione Italiana Calcolo Automatico.Google Scholar
  12. 12.
    Dannenberg, R.B., A real time scheduler dispatcher,Proc. 1988 Intl. Computer Music Conference, Cologne, 19–24 Sept., 1988, ICMA, San Francisco, CA, pp. 239–242.Google Scholar
  13. 13.
    Faulk, S.R. and Parnas, D.L., On synchronization in hard-real-time systems,Comm. ACM 31(3), 274–287 (1988).Google Scholar
  14. 14.
    Genrich, H.J. and Lautenbach, K., System modelling with high-level Petri nets, Theoret. Comput. Sci.13, 109–136 (1981).Google Scholar
  15. 15.
    Gentina, J.C. and Corbeel, D., Coloured adaptive structured Petri net: A tool for the automatic synthesis of hierarchical control of Flexible Manufacturing Systems (FMS),Proc. IEEE Int. Conf. on Robotics and Automation, Raleigh, North Carolina, March 1987, IEEE Computer Society Press, pp. 1166–1173.Google Scholar
  16. 16.
    Gonzales, M.J. Jr., Deterministic processor scheduling,Comput. Surveys 9, Sept. (1977).Google Scholar
  17. 17.
    Jensen, K., Coloured Petri nets and the invariant method,Theoret. Comput. Sci. 14, 317–336 (1981).Google Scholar
  18. 18.
    Lawler, E.L., Lenstra, J.K., and Rinnooy Kan, A.H.G., Recent developments in deterministic sequencing and scheduling: A survey, inProc. NATO Advanced Study and Research Institute on Theoretical Approaches to scheduling Problems, Durham, England, July (1981); also in M.A.H.Dempsteret al. (eds),Deterministic and Stochastic Scheduling, D.Reidel, DordrechtGoogle Scholar
  19. 19.
    Loy, G., Designing an operating environment for a real time performance processing system,Proc. 1985 Int. Computer Music Conf., Burnaby B.C. (1985), ICMA, San Francisco, CA, pp. 9–13.Google Scholar
  20. 20.
    Martinez, J., Alla, H. and Silva, M., Petri nets for the specification of FMSs, in A.Kusiak (ed.),Modeling and Design of Flexible Manufacturing Systems, Elsevier, Amsterdam (1986), pp. 389–406.Google Scholar
  21. 21.
    Martinez, J., Muro, P., and Silva, M., Modeling validation and software implementation of production systems using high-level Petri nets,Proc. IEEE Int. Conf. Robotics and Automation, Raleigh, North Carolina, March 1987, IEEE Computer Society Press, pp. 1180–1185.Google Scholar
  22. 22.
    Mok, A.K., The design of real-time programming systems based on process models,Proc. IEEE Real Time Systems Symposium, Austin, Texas, Dec 1984, IEEE Press, pp. 5–17.Google Scholar
  23. 23.
    Pagnoni, A., Stochastic nets and performance evaluation, in W. Brauer, W. Reisig, and G. Rozenberg (eds),Advances in Petri Nets 1986, Lecture Notes in Comput. Sci. 254, Springer-Verlag, New York (1987).Google Scholar
  24. 24.
    Peterson, J.L.,Petri Net Theory and the Modeling of Systems, Prentice-Hall, New York (1981).Google Scholar
  25. 25.
    Petri, C.A., General net theory, in B. Shaw (Ed.),Proc. Joint IBM and University of Newcastle-upon-Tyne Seminar (1976), pp. 131–169.Google Scholar
  26. 26.
    Reisig, W.,Petrinetze, Springer-Verlag, Berlin, Heidelberg (1982).Google Scholar
  27. 27.
    Sahraoui, A., Atabakhche, H., Courvoisier, M. and Valette, R., Joining Petri nets and knowledge based systems for monitoring purposes,Proc. IEEE Int. Conf. Robotics and Automation, Raleigh, North Carolina, March 1987, IEEE Computer Society Press, pp. 1160–1165.Google Scholar
  28. 28.
    Shoham, Y., Temporal logics in AI: Semantical and ontological considerations,Artificial Intell. 33, 89–104 (1987).Google Scholar
  29. 29.
    Xu, J. and Parnas, D.L., Scheduling processes with releases times, deadlines, precedence, and exclusion relations,IEEE Trans. Software Engrg. 16(3), 360–369 (1990).Google Scholar
  30. 30.
    Lung-Chen Liu, and Horowitz, E., A formal model for software project management,IEEE Trans. Software Engrg. 15(10), 1280–1293 (1989).Google Scholar

Copyright information

© Kluwer Academic Publishers 1993

Authors and Affiliations

  • Antonio Camurri
    • 1
  • Paolo Franchi
    • 1
  • Francesca Gandolfo
    • 1
  • Renato Zaccaria
    • 1
  1. 1.DIST — Department of Communication, Computer and System SciencesUniversity of GenoaGenoaItaly

Personalised recommendations