Next: About this document Up: No Title Previous: Conclusions

References

1
R. Bajcsy, ``Active Perception,'' Proceedings of the IEEE, Vol. 76, No. 8, August 1988.

2
M. J. Banks and E. Cohen, ``Realtime B-Spline Curves from Interactively Sketched Data,'' Proceedings of the 1990 Symposium on Interactive 3-D graphics, ACM, March 1990.

3
A. Benveniste and P. L. Guernic, ``Hybrid Dynamical Systems Theory and the SIGNAL Language,'' IEEE Transactions on Automatic Control, Vol. 35, No. 5, May 1990.

4
M. J. Bradakis, ``Reactive Behavior Design Tool,'' Master's Thesis, Computer Science Department, University of Utah, January 1992.

5
Y. Brave and M. Heymann, Control of Discrete Event Systems Modeled as Hierarchical State Machines, Technical Report CIS-9012, Computer Science Department, TECHNION - Israel Institute of Technology, March 1991.

6
T. M. Carter, K. F. Smith, S. R. Jacobs, and R. M. Neff, ``Cell Matrix Methodologies for Integrated Circuit Design,'' Integration, The VLSI Journal, 9(1), 1990.

7
C. Chase, J. Serrano, and P. Ramadge, Periodicity and Chaos from Switched Flow Systems : Contrasting Examples of Discretely Controlled Continuous Systems, Technical Report, Department of Electrical Engineering, Princeton University, January 1991.

8
F. Chaumette and P. Rives, ``Vision-Based-Control for Robotic Tasks,'' In Proceedings of the IEEE International Workshop on Intelligent Motion Control, Vol. 2, pp. 395-400, August 1990.

9
J. J. Chou and E. Cohen, ``Computing Offsets and Tool Paths with Vornoi Diagrams,'' Technical Report UUCS-89-017, Department of Computer Science, University of Utah, 1989.

10
J. J. Chou and E. Cohen, ``Constant Scallop Height Tool Path Generation,'' Technical Report UUCS-89-011, Department of Computer Science, University of Utah, 1989.

11
E. Cohen, T. Lyche, and R. F. Riesenfeld, ``Discrete B-Splines and Subdivision Techniques in Computer Aided Geometric Design and Computer Graphics,'' Computer Graphics and Image Processing, 14(2):87-111, October 1980.

12
S. Drake and S. Sela, ``A Foundation for Features,'' Mechanical Engineering, 111(1), January 1989.

13
J. Gu and K. Smith, ``A Structured Approach for VLSI Circuit Design,'' IEEE Computer, 22(11), 1989.

14
C. D. Hansen and T. C. Henderson, ``CAGD-Based Computer Vision,'' IEEE Transactions on Pattern Analysis and Machine Intelligence, PAMI-11(10) : 1181-1193, 1989.

15
M. Heymann, ``Concurrency and Discrete Event Control'', In Proceedings of the IEEE Conference on Decision and Control, December 1989.

16
Y. Ho, ``Performance Evaluation and Perturbation Analysis of Discrete Event Dynamic Systems'', IEEE Transactions on Automatic Control, July 1987.

17
K. Inan and P. Varaiya, ``Finitely Recursive Process Models for Discrete Event Systems'', IEEE Transactions on Automatic Control, Vol. 33, No. 7, July 1988.

18
Y. Li and W. M. Wonham, ``Controllability and Observability in the State-Feedback Control of Discrete-Event Systems'', Proc. Conf. on Decision and Control, 1988.

19
G. Lindstrom, J. Maluszynski, and T. Ogi, ``Using Types to Interface Functional and Logic Programming,'' July 1990, 10 pp. technical summary submitted to 1991 SIGPLAN Symposium on Principles of Programming Languages.

20
A. Nerode and J. B. Remmel, ``A Model for Hybrid Systems,'' Presented at the Hybrid Systems Workshop, Mathematical Sciences Institute, Cornell University, May 1991.

21
C. M. Özveren, Analysis and Control of Discrete Event Dynamic Systems : A State Space Approach, Ph.D. Thesis, Massachusetts Institute of Technology, August 1989.

22
C. M. Özveren and A. S. Willsky, Aggregation and Multi-Level Control in Discrete Event Dynamic Systems, Technical Report CICS-P-199, Center for Intelligent Control Systems, Massachusetts Institute of Technology, March 1990.

23
P. J. Ramadge and W. M. Wonham, ``Supervisory Control of a Class of Discrete Event Processes'', SIAM Journal of Control and Optimization, January 1987.

24
P. J. Ramadge and W. M. Wonham, ``Modular Feedback Logic for Discrete Event Systems'', SIAM Journal of Control and Optimization, September 1987.

25
R. F. Riesenfeld, ``Mathematical Methods in Computer Aided Geometric Design,'' chapter Design Tools for Shaping Spline, Academic Press 1989.

26
T. M. Sobh and R. Bajcsy, ``A Model for Observing a Moving Agent,'' Proceedings of the Fourth International Workshop on Intelligent Robots and Systems (IROS '91), Osaka, Japan, November 1991.

27
R. Suri, ``Perturbation Analysis : The State of the Art and Research Issues Explained via the GI/G/1 Queue'', Proc. of the IEEE, January 1989.

28
M. Swanson, R. Kessler, ``Domains : efficient mechanisms for specifying mutual exclusion and disciplined data sharing in concurrent scheme,'' First U.S./Japan Workshop on Parallel, August 1989

29
J. A. Thingvold and E. Cohen, ``Physical Modeling with B-Spline Surfaces for Interactive Design and Animation,'' Proceedings of the 1990 Symposium on Interactive 3-D graphics, ACM, March 1990.

30
A. F. Vaz and W. M. Wonham, ``On Supervisor Reduction in Discrete-Event Systems'', Technical Report, Systems Control Group, Department of Electrical Engineering, University of Toronto, 1985.

31
Y. Willner and M. Heymann, On Supervisory Control of Concurrent Discrete-Event Systems, Technical Report CIS-9009, Computer Science Department, TECHNION - Israel Institute of Technology, October 1990.

Appendix A



/* Code Generated for a Simple DRFSM */

main()
{

  /* Some initializations */

  VTV_ptr = get_VTV() ;
  drfsm (VTV_ptr) ;

  /* Finish Up */

}

/****************************************/

drfsm (VTV_ptr) 
{
  /* do some initializations for each level */

  state_A (VTV_ptr) ;

  /* do some cleaning */
}

/****************************************/

state_A (VTV_ptr)
{
  int finish = 0 ;

  /* do something */

  while ( !finish ){
    get-action1 (x) ;
    if ((x > VTV_ptr[1]) && (x < VTV_ptr[2])){
      finish = 1 ;
      state_B (VTV_ptr) ;
    }
  }
}

/****************************************/

state_B (VTV_ptr)
{
  int finish = 0 ;

  /* do something */

  while ( !finish ){
    get-action2 (c, w) ;
    if ((c > 0.2) && (c < 0.5){
      finish = 1 ;
      state_A (VTV_ptr) ;
    }
    if (w > 120){
      finish = 1 ;
      state_C (VTV_ptr) ;
    }
  }
}

/****************************************/

state_C (VTV_ptr)
{
  int finish = 0 ;

  /* do something */

  while ( !finish ){
    get-action3 (L,z,y) ;
    if (z > 3*VTV_ptr[4]/sin(VTV_ptr[5])){
      finish = 1 ;
      state_B (VTV_ptr) ;
    }
    if (y > VTV_ptr[3]){
      finish = 1 ;
      state_D (VTV_ptr) ;
    }
    if (L > 10){
      newVTV_ptr = get_VTV() ;
      drfsm (new_VTV_ptr) ;
      /* Free memory allocated to new_VTV */
      /* Complete something */
    }
  }
}

/*****************************************/


state_D (VTV_ptr)
{

  /* do something */
  /* end of this level ... return to previous level */

}

/******************************************/


sobh@cs.utah.edu
Tue Sep 20 12:46:05 MDT 1994