Index FAQ Help Feedback
Non-Linear Canine Circulatory System Model
Circulatory Model originally contructed by Clement Yu
Controller Development and Language-Porting by Claudio Held, Johnnie Huang, Ramesh Rao, and Ravi Gopinath

This is a comprehensive nonlinear model that dynamically describes drug effects on the circulatory system. An example of the fuzzy logic based controller (two-input-two-output) is included as an illustration for the development of other prototype controllers. The program is coded in C and may be compiled with any ANSI C compilers on most platforms.


To extract, compile and execute this program, please refer to the readme file. The custom file contains detail information on the customization of the program to meet the needs of the controller developers. Procedures for changing the model parameters (for example: on analyzing robustness) are detailed in the file custom2. These text files have been included with the package.

This Circulatory Model as an Open-Loop system (without any controller built-in) is available in several different language formats for system identification purposes and the construction of new controllers. To download, please select the desired language format:

If you have any suggestions/questions, please fill out the questionaire form.

2/15/96 JH

Index FAQ Help Feedback
2-Input-2-Output Hemodynamic Controller
By Claudio M. Held

Released on: May 31, 1995

This is a trio-mode rule-based system designed to control the mean arterial pressure and cardiac output of a patient, using the infusion rates of two drugs: sodium nitroprusside and dopamine. Three different controller-mode: supervisory, fuzzy-logic, and fuzzy-logic smooth-to-zero are implemented for the regulations of the controlled variables.

Specifications and other information on this controller are detailed in the abstract available online.

Graphic interface included within this program requires the users to have a minimum of a 386-based PC with VGA graphic capabilities. To conduct real-time experiments using this program, proper serial port setup and other necessary hardware, such as infusion pumps are essential.

The non-linear canine circulatory model by Yu et al. is incorporated for simulation purposes.

You may DOWNLOAD THIS PACKAGE NOW to your local directory or FTP directly from

Press FAQ for instructions on extracting the downloaded package. Please fill out the questionaire form if you have any suggestions/comments.

10/23/95 JH

Index FAQ Help Feedback
3-Input-4-Output Hemodynamic Controller
By Johnnie W. Huang

Released on: December 1, 1995

This is a fuzzy-logic based, automated drug-delivery controller capable of regulating the arterial and venous circulation simultaneously. This controller features two separate fuzzy-logic inference engines:

  1. A fuzzy decision analysis module for patient status determination by assessing cardiac index, systemic vascular resistance index, and pulmonary vascular resistance index.

  2. A fuzzy hemodynamic management module for controlling mean arterial pressure, mean pulmonary arterial pressure, and cardiac output through the infusions of dopamine, phenylephrine, nitroprusside, and nitroglycerin.
Graphic interface included within this program requires the users to have a minimum of a 386-based PC with VGA graphic capabilities. The program utilizes the non-linear circulatory model as the plant for simulation.

You may DOWNLOAD THIS PACKAGE DOWN to your local directory or FTP directly from

Press FAQ for instructions on extracting the downloaded package. Please fill out the questionaire form if you have any suggestions/comments.

12/5/95 JH

Index FAQ Help Feedback
Depth of Anesthesia Estimating & Propofol Delivery System
By Johnnie W. Huang, Ying-Ying Lu, and Abinash Nayak

Released on: August 1, 1996

This is a fully automated system developed for the depth of anesthesia estimation and control with the intravenous anesthetic, Propofol. The system utilizes the mid-latency auditory evoked potentials (MLAEP) which are wavelet transformed and fed into an artificial neural network for classification in determining the anesthesia depth. Propofol is delivered and maintained by a mechanical syringe infusion pump controlled by Stanpump which predicts the internal concentrations of Propofol based on a 3-compartment pharmacokinetic model. The depth of anesthesia as determined by the neural network is regulated by means of a fuzzy-logic based controller for the decrementation and by a confidence level estimator for the scheduled incrementation of Propofol setpoint. Various safety mechanisms have been tested and built into the system to safeguard the patient from anesthetic overdosing or underdosing caused by excessive disturbances.

To replicate a prototype of this advanced anesthesia management system will require proper equipment and the system software. You may DOWNLOAD THIS PACKAGE DOWN which contains detailed documentation and the system software.

Press FAQ for instructions on extracting the downloaded package. Please fill out the questionaire form if you have any suggestions/comments.

7/23/96 JH

Index FAQ Help Feedback
EEG Complexity Analysis for Estimating the Depth of Anesthesia
By Xu-Sheng Zhang

Released on: April 01, 2000

Brain electrical activity (electroencephalogram (EEG)) exhibits significant complex behaviors with strong nonlinear and dynamical properties. The behaviors are formed as various activity patterns with different complexity. Considering this, the developing nonlinear dynamics theory may be a better approach than traditional linear methods in characterizing EEG's intrinsic natures. The first important nature of EEG lies in its "complexity". The brain activity can be learned from the EEG quantitative complexity measure, therefore, recently there is an increasing study in this field by the measure of correlation dimension (D2): EEG complexity evolution in human brain maturization, EEG complexity changes during emotional processing, different EEG complexity during divergent and convergent thinking, EEG complexity analysis for stroke patients and epileptic patients, and EEG complexity of brain dynamics. Other kinds of complexity measure are also proposed for EEG study, such as approximate entropy (ApEn), neural complexity CN, KL-complexity. However, by off-line EEG analysis these studies just show that these measures have certain characterization ability for a specific use, and do not mean that these measures can be utilized for real-time clinical use such as depth of anesthesia estimation, since they usually lack effective computational methods for implementation.
Back in early 1988, it was found that correlation dimension D2 was different for awake and anesthetized states during anesthesia. Up to now, on-line use of D2 under clinical situation is still impractical, since reliable estimation of D2 needs more data and more calculation time. Fortunately, Lempel-Ziv complexity measure C(n) can act as an alternative tool for EEG analysis[1][2], since it is extremely suited for characterizing the development of spatio-temporal activity patterns in high-dimensionality nonlinear systems. Moreover, the concept of C(n) is more simple to understand and its computation is easier to implement. It has been applied to study the brain information transmission, ECG dynamics study[3][4], and movement prediction during anesthesia in dogs[1][2].
Clinically compared with other EEG-derived parameters, C(n) is a better and suitable measure to characterize the feature of the EEG under anesthesia, and it can quantitatively track depth and trend of anesthesia in real-time on a continuous scale between the awake and asleep states. The effectiveness and feasibility of C(n) for on-line clinical use is validated by 27 human cases under four anesthesia regimens[5]. This puts forward a step to the clinical use of the promising C(n) measure.
In fact, the study is catching some anesthesia device manufacturers' attention, for instance, Datex-Ohmeda, see the News and the Abstract of their research.
[1] Zhang, Xu-Sheng; Roy, Rob J. "Predicting movement during anesthesia by complexity analysis of the EEG", Proceedings of the 1999 Annual Meeting of the Society for Technology in Anesthesia, San Diego, Cal., Jan. 1999.
[2] Zhang, Xu-Sheng; Roy, Rob J."Detecting Movement During Anesthesia by EEG Complexity Analysis," Medical & Biological Engineering & Computing, vol.37, no.3, pp.327-334, May, 1999.
[3] Zhang, Xu-Sheng; Zhu, Yi-Sheng: Zhang, Xiao-Jing "New approach to studies on ECG dynamics: the extraction and analyses of the QRS complex irregularity time series," Medical & Biological Engineering & computing, vol.35, no.5, pp.467-474, Sep. 1997.
[4] Zhang, Xu-Sheng, Nonlinear Analyses of Dynamic Characteristics for Ventricular Fibrillation and the Study on its Application, Ph.D. Dissertation, Shanghai Jiao Tong Univ., 1997.
[5] Zhang, Xu-Sheng; Roy, Rob J. "Complexity Measure of EEGs Characterizing the Depth of Anesthesia," Anesthesiology (to be submitted).

The program for implementation of the Complexity Analysis is not complex at all, however, it is simple and concise. Here is an EXAMPLE of C CODE, which is put here just as an example for interested readers to easily start complexity analysis.

Please fill out the questionaire form if you have any suggestions/comments.

04/01/00 XSZ

Frequently Asked Questions Index Help Feedback

Why can't I download the package after I've pressed the selection?

This problem may be attributed by one or several reasons listed below:

  • RPI only has a limited number of FTP ports. Try downloading in the evening if the system has reached its capacity.
  • Make sure your e-mail address is set in the preferences of your WWW client since some of the older WWW clients can not provide transferring without point specification.
  • Your WWW client may not support FTP. Try FTP directly via your TCP/IP connection.

How do I decompress the downloaded package on my system?

All the software packages are compressed using ZIP. If you are decompressing this package on a MS-DOS based PC, a decompressor such as PKUNZIP.EXE is needed. On an UNIX system, use the command: unzip -e to decompress the downloaded package. If the unzip command program is not available on your UNIX platform, you must download UNZIP.5.12E.TAR.Z first and use the command: zcat unzip.5.12e.tar.Z | tar -xvf- to decompress this downloaded UNZIP program. Then to decompress the packages downloaded from this archive with this UNZIP program, use the command usr/local/bin/unzip at the same local directory as

Back Menu

2/5/96 JH

Feedback Index FAQ Help

For information on contacting any members of the laboratory, please select the corresponding name from the list below. For site maintaneous, please use the e-mail form.

Faculty Members:

Dr. Rob Roy
Dr. Howard Kaufman
Dr. B. Wayne Bequette
Graduate Students:

Johnnie W. Huang
Ying-Ying Lu
Ramesh Rao
Ravi Gopinath
William Prevot
Robert Earl

Biological Signal Processing & Control Lab Software Archive Questionaires


The speed of connection to this software archive is
The process of extracting the downloaded package is

Purpose(s) for downloading the software: (Hold down Control to select or deselect disjoint items.)

Specialization(s)/Primary Interest(s): (Hold down Control to select or deselect disjoint items.)

Name: Institute/Company:
Telephone: Fax: E-mail:


Thank you for submitting the questionaires. We look forward to future collaborations and opportunities between you and our laboratory. If your browser does not support forms, please email the answers to the questions above. 2/5/95 JH

Index FAQ Help Feedback

Help Index FAQ Feedback

If you have any problems connecting to or getting information from this server, please contact Information Technology Services at Rensselaer Polytechnic Institute.

Instructions on how to decompress the downloaded packages are provided in FAQ. If you encounter problems in re-compiling any of the software in this archive, please contact the archive administrator via e-mail.

For further information on the development of controllers and physiological models, you may contact Biological Signal Processing & Control Laboratory, Intelligent Control, Robotics and Automation Laboratory, or Process Control and Dynamics Laboratory.

If you have any questions and/or suggestions on the maintaineous of this software archive, please fill out the questionaire form and submit it to Johnnie Huang.