
Jump to Japanese Manual
1. Introduction
2. Overview of BSA for BIS
3. Installation of BSA for BIS
4. Connection with BIS monitor
5. How to use BSA
6. Algorithm for data processing
7. Data format of Output Files
8. History of Development
9. Epilog
BIS monitor is a useful monitoring device for level of hypnosis or anesthesia. But as the entire algorithm for the calculaton of BIS Index has not been published, its scientific evaluation and utilization as a neurophysiological or anesthetic research tool is limited. The algorithm is only partially described in one review by Dr. Rampil 1). According to this review, BIS Index is calculated from following 3 or 4 sub-parameters: (1) BSR and QUAZI by Time Domain Analysis, (2) Relative b Ratio by Power spectral Analysis and (3) SynchFastSlow by Bispectral Analysis.
Of course the algorithm of bispectral analysis itself has already been published and we can execute bispectral analysis. Here we developed a software "BSA" for bispectral analysis of electroencephalogram (EEG). "BSA for BIS" is a software customized for BIS monitor (A-1050). This software only supports A-1050. If you want use Bsa with A-2000, you should download Bsa for A-2000.
"BSA for BIS" displays the raw EEG waveform in every 1.0sec (4sec of duration) and displays all bispectrum values by color spectral scale every 10 second. "BSA" can also shows power spectrum.
"BSA" has not only 'Online mode' for real time processing but also has 'Offline mode' for more detailed analysis after data acquisition.
"BSA" requires the system installed with Microsoft Windows 95 or 98, Pentium 100MHz or faster CPU, at least 20M Bytes of memory and video system with at least 800x600(SVGA) resolution and more than 216 colors. Pentium 150MHz or fatser CPU and 32M Bytes (or more) of memory is recommended. Previous version had some problems when it was used on Windows NT/2000/XP. Now I probably have fixed those problems in this version.

"BSA for BIS" was developed by C++Builder Ver5.0 (Borland). "BSA" displays the bispectrum or bicoherence using color spectral scale (or gray scale for B&W display). In Ver 3.00 or later, bispectrum or bicoherence or triple product is displayed every 10 seconds. In the default settings, Bsa calculates bispectrum values from the latest 3 miunites of EEG signal and calculates power spectrum from the latest 1 minute of EEG signal. With optional setting, bispectuml values can be calculated from the latest 1min (same as BIS monitor), 2min, 3min, 4min or 5min and power spectrum values can be calculated from the latest 20sec, 30sec or 1min. Internally Bsa always calculates parameters every 10 seconds. But Logging data interval can be selected from 10sec, 20sec, 30sec or 1min. The default setting is 1min. Bispectrum and Power spectrum are both scaled by logarithm.
"Bsa for BIS" uses BSR from BIS monitor in the deafult seting, but internally calculated value is available in the optional setting.
"BSA" detects and eliminates overshooting noise caused by electric cautery or some types of spike noise. Besides the own criteria, "BSA for BIS" eliminates epochs containing artifacts with the aid of "artifact flag" from BIS monitor.
Install Disk consists of 2 floppy disks. Installation of "BSA for BIS" begins with inserting the Install Disk1 to the drive A, and run "Setup.exe" from "Startup menu". Only according to the instructions on the screen, you can easily install "BSA for BIS" on your computer. As "Bsa for BIS" is developed on Japanese version of Windows 95, so some messages might not be correctly displayed. But this is not a serious problem.
You should connect to raw EEG port on A-1050 using crossed serial cable. Do not connect to the Processed EEG port (we can not get EEG wave data from this port).
If you installed "BSA for BIS" via INSTALL Disk, "BSA" folder is registered in the "Program" of "Start Menu". Only selecting this, you can run "BSA for BIS".
[Caution !!]
While you are running "BSA for BIS" in Online mode, you should not run other application software. As Windows 95/98/98SE/Me are not true multi-task OS, "BSA for BIS" would fail to get EEG packet from A-1050.
When you change the values in the Box, click "Apply" button before "Close" the sub-window. Otherwise, the new value would not be effective.
(1) Options for wave processing
"BSA for BIS" displays following parameters: SEF95/SEF90(Spectral Edge Frequency 95% or 90%) and 3 sub-parameters of BIS Index.
After artifact rejection, sampled raw EEG wave is processed against base line drift by subtraction of moving-average. Averages of waves of pre and post 0.5sec (totally 1.0sec, Moving_Average_1) or 1.0sec (totally 2.0sec, Moving_Average_2) are subtracted from original amplitude and the subtracted waves are handled as 'processed wave'.
For calculating BSR, 'processed wave' is always used. For calculating other parameters, raw wave or processed wave is selected by user. In the default setting, Moving_Average_1 is used. You can select this setting in the 'Set Processing' box from the "Options" of menu. In the default setting, "Bsa for BIS" uses BSR got from BIS.
You can also set threshold of Burst Suppression, Overshooting and Spike in this box. This threshold should not change the default values without special consideration.
When you check off the "Use Processed Wave" box, raw wave is used for power spectral analysis and bispectral analysis.
When you check off the "Use BSR from BIS", calculated BSR in BSA is used. When you check on the "Show in Gray Scale", bispectrum/bicoherence is displayed in gray scale.
In Ver 1.20 or later, you can re-calculate the parameters without displaying waveform, power spectrum or bispectrum. When you check on the "Calculation Only" checkbox, calculated parameters are written in "Log Window" with full speed.
In Ver 3.00 or later, You can choose the length of calculating period for bispectral analysis and power spectral analysis. BIS monitor (A-1050) calculates bispectrum values from 120 epochs (61.5sec) of EEG segment. But our investigation6) revealed that this setting is too short to get reliable and reproducible bicoherence values. So in the default setting Bsa calculates bispectrum values from the latest 3min of EEG segments.
You can also select the data logging intervals. In the default settings, this interval set at 1min. But you cal select 10sec, 20sec, 30sec or 1min. When calculated parameters exists in data buffer, you can update the contents of Log Window without re-calculation.
The second setting is 'Set View'. In this box, you may choose which waveform to display. Raw EEG wave is displayed in 'yellow' color and processed EEG wave is displayed in 'red' color in the wave window. You can also change the replaying speed in 'Offline mode' from x1 to x8 (8 times faster). If your CPU does not have enough power, the replaying speed may have the upper limit.
Furthermore in 'Offline mode' with binary wave file, you can set the processing start time by moving the trackbar or clicking the up-down button. These trackbar and up-down button are emerged only when binary wave file is selected in 'Offline' mode.
'Wave Form Scale' is a scale for displaying EEG wave. In the default setting displayed range is +/-50mV(maximum +/-70mV). If you want to display +/-100mV(maximum +/-140mV), set this as 50mV.
Only this sub window can be available during data processing.
You can set optional parameters in "Bsa_BIS.ini" file. This file is loaded in starting process of "BSA for BIS". Each line consists of two items; label name and its value. Items are separated by ":". No other character (TAB or SPACE) is allowed to put between the item and ":". Lines beginning with '#' are considered as comments and would be ignored.
Following list is a sample of 'Bsa_BIS.ini'. You may edit the list at only the different setting from the defaults. 'Bsa_BIS.ini' must be located in the same directory of 'Bsa_BIS.exe'.
# Parameter settings Wave_Scale:2 Moving_Average:1 Overshoot_Threshold:150 Spike_Threshold:80 BS_Threshold:5 Show_Raw:false Show_Proc:true Defect_Str:NULL WorkDir:C:\EEG Proc_Trend:true COM_Port:0 Use_BIS_BSR:true Power_Dur:1min Bisp_Dur:3min LogInterval:1min Maxmem:24 AutoRec:false
If you have already written each setting in 'Bsa_BIS.ini' file, you can start processing only clicking 'start' button after connecting EEG monitor. If you want to record EEG waveform or calculated power spectrum or bispectrum, you have to prepare record files before start processing. "File" menu is disabled during processing.
Calculated parameters are also displayed in the 'Log Window' with time stamp. You can add comments in this 'Log Window'. In 'Online mode', dialog box for saving this logged data will emerge when 'Stop' button is clicked.
When the packet data is recorded to a file, "On Recording" label is displayed above the trend screen.
'Offline mode' is used for re-processing recorded EEG waves. When you select 'Offline mode' from 'Mode' in the menu, Dialog box for file selection will display after file type selection. Then select purposed file to process. BIS wave file has a 128-bytes header, which contains time stamp and parameters on recording. These parameters are read and set at the start of processing.
In 'Offline mode', you can select replaying speed from x1 (equal to real time) to x8 (8 times faster than real time). You can set this option from 'Set View' of "Options" menu. You must select wave file before choosing this replaying speed.
Until you select other wave file or change to 'Online mode', you can replay the selected wave file repeatedly.
(3) Display selection of Bispectrum, Bicoherence or Triple Product
You can select one of 'Bispectrum', 'Bicoherence' or 'Triple Product' to display.

(5) Comment window manipulation
In Ver 3.00 or later, Comment buffer is separated from Log window. You can open 'Comment window' by selecting 'open Comment' tag from 'Window' menu. Just like 'Log Window', when Bsa runs on 'Online' mode, dialogbox which facilitates to save logged data to a file will be displayed at the end of processing.(6) about SQI (Signal Quality Index)
As mentioned in the previous section, sampled raw wave data are at first checked for artifacts. Then each moving-average is subtracted to suppress the base line drift.
Original criteria of Burst Suppression (region less than 5mV lasts more than 0.5sec) would be "fooled" by superimposed slow wave, as written in the Rampil's review. As I can not fully understand the algorithm of QUAZI suppression, QUAZI is not calculated in "BSA". (In the Rampil's review, QUAZI detects Burst Suppression incorporating slow waves, less than 1Hz in frequency, information derived from the frequency domain.)
Moving average works as the simplest low-pass filter. Then subtraction of moving average results in low-cut filter. "BSA" uses processed wave for calculating BispRatio and Relative b Ration sub-parameters in the default setting. You can also calculate those sub-parameters from raw wave by optional setting. To calculate the moving-average, wave data in the pre and post 0.5sec or 1.0sec period are required. Then the displayed (and processed) EEG waves have a delay of 0.5sec or 1.0sec.
As to the detail of Bispectral Analysis, refer the manuscript by Dr. Sigl in J Clin Monit 3). And for more detailed information, please refer to the manuscript by Nikias in Proc IEEE 5). Regarding to the principle of bispectral analysis, do not refer Dr. Rampil's review 1), because it would be wrong. Here I only explain the concept.
Bispectral Analysis quantifies the nonlinear interaction (phase coupling) between the components making up a signal. Sigl et al. sited a function that outputs the square of input as a simple example of phase coupling. Then we thinkof a sum of two cosine function as input, those frequencies are f1 and f2 and phases are q1,q2. Then the output becomes as follows.
Epochs are overlapped in some degrees. After applying a Blackman window function, the Fourier transform of each epoch is computed. Here we think of 3 components of signals with f1,f2,f1+f2 frequencies. Each component, X(f1), X(f2), X(f1+f2), is a complex-value. And we also think of conjugate of X(f1+f2); X*(f1+f2). Each phase of X(f1), X(f2) is f1t+q1, f2t+q2. And the phase of X(f1+f2) is (f1+f2)t+q3. The phase angle of the products of complex-value becomes the sum of each phase angle. And the phase angle of conjugate becomes the negative of its native phase angle. Consequently, the phase angle of triple product becomes (f1t+q1)+(f2t+q2)-{(f1+f2)t+q3} = q1+q2-q3. The fact that time parameter is canceled is important because it means that how to select the epochs does not influence on the result of bispectral calculation. If there were no relation among q1,q2,q3, q1+q2-q3 would distribute randomly between [0,2p]. As a result, the sum of triple products tends toward zero. On the other hand, there were some relations among q1,q2,q3, (phase coupling exists), bispectrum becomes none zero value. The bispectral analysis can thus be used to detect phase coupling between components. As shown above, bispectrum is a function of two frequency variables, f1 and f2.
According to the review by Rampil1), SynchFastSlow parameter is computed by following equation.
SynchFastSlow = log( B0.5-47.0Hz/B40.0-47.0Hz )
He describes bispectrum as Bx-y (the sum of the bispectrum activity in the area subtended from frequency x to y on both axes in the frequency versus frequency bispectral space). According to this description, we, for example, must calculate B(40Hz,40Hz). To calculate B(40Hz,40Hz), X(80Hz) is required, but we cannot get such high frequency components from 128Hz sampling signal. I asked ASPECT and get their reply that BIS calculates SynchFastSlow from bispectrum values of f1+f2<48Hz. But they did not tell me the precise method of SynchFastSlow claculation. Consequently, they informed me that the description of the components in Dr. Rampil's paper are intended to be schematic representations of the Index subcomponents, not the exact definitions.
Here I used BispRatio instead of SynchFastSlow for bispectrum derived parameter. This is only my speculation, but I think SynchFastSlow and BispRatio would be compatible.
BispRatio = log( B40.0-47.0Hz/B0.5-47.0Hz )
"BSA" calculates bipectrum in the area 0.5Hz<=f2<=f1<=47.0Hz, f1+f2<=47.5Hz and then calculates BispRatio according to this equation.
SynchFastSlow parameter predominates during the phenomenon of EEG activation (excitement phase) and during surgical levels of hypnosis in the BIS Index. In my data analysis, BispRatio showed good correlation with the level of hypnosis in surgical levels.
"BSA" can also show bicoherence instead of bispectrum. Bicoherence is defined by the ratio of the bispectrum to the sum of square root of real triple product (power of f1,f2,f1+f2). Bicoherence is usually scaled between 0 to 100%. In the report by Dr. Sigl, bicoherence is the ratio of the bispectrum to the square root of the sum of the real triple product. But this might be wrong, because bispectrum is the size of sum of vectors, then the scale should be the sum of size of each vector. Bicoherence can show the degree of phase coupling, so it seems to be better index than bispectrum. Although, at first I could not find any specific pattern of bicoherence in the EEG, now I have found specific changes of bicoherence according to the depth of anesthesia. At this point physiological meaning of bispectrum in EEG is not clear.
As previously mentioned, "BSA" defined Burst Suppression as amplitude less than 5mV lasts more than 0.5 sec in the processed wave. BSR is calculated in the same period which used for calculation of SynchFastSlow and b Ratio. When the effective period is less than 20% of total, this parameter is not calculated. Although the algorithm for calculating BSR differs from that used in BIS monitor, I think the value would be similar.
At this point waves with small amplitude and fast frequency emerging in the light anesthetic state also be detected as "BS" despite that they are not true "BS". This is a future problem to solve.
BSR/QUAZI is used to detect deep anesthesia in the BIS Index. It is quite natural that when the suppression progresses, EEG waves become almost flat and frequency analysis becomes less meaningful.
According to the review by Rampil1), "Relative b Ratio" sub-parameter is the log ratio of power in the two empirically derived frequency bands: log(P30-47Hz/P11-20Hz). The parameter is most heavily weighted when the EEG has characteristics of light sedation in the BIS Index.
In the article by Glass et al.2) base frequency band is written as 40-47Hz instead of 30-47Hz. Concerning this point, I got an answer from ASPECT INC. that Rampil's review was correct.
The spectral edge frequency (SEF95) is the frequency below which 95% of the power in the spectrum resides. SEF95 becomes small in the state of anesthesia. "BSA" calculates SEF95 among the power spectrum of less or equal to 30.0Hz. Original "BSA" calculates SEF90 instead of SEF95, but BIS monitor calculates SEF95. So in the default setting, "BSA for BIS" calculates SEF95.
All output files are closed when "Stop" button is clicked. Each data format is as follows.
In binary mode, raw wave data are saved as is gathered from A/D converter. At the top of the file, 128 bytes of header record containing time is added. These parameters are read and set at the start of processing.
In binary mode, these values are recorded in IEEE standard floating point format (single). Power spectrums are recorded from 0.5Hz to 47.0Hz in every 0.5Hz. Bispectrums are recorded as following manner: (f1,f2) = (0.5,0.5),(1.0,0.5), (1.5,0.5),...(47.0,0,5),(1.0,1.0),(1.5,1.0),(2.0,1.0),..... (46.5,1.0),(1.5,1.5),(2.0,1.5), (2.5,1.5).......................,(24.0,23.5). In binary mode, all bispectrums are written and each sum of square root of real triple product is then written in the same order. And in ASCII mode, the order of bispectrum and real triple product is as same as that in binary mode. But in this mode bispectrum and the square root of real triple product wrote in pair. At the top of each block, time and the effective number of epoch are written in following format: '# hh;mm;ss,n'.
Index of bispectrum array (0-2255) is calculated from the following equation.BIS monitor become widely accepted monotoring device, but nobody have discussed the bispectrum itself. In my opinion, watching only BIS Index resembles to watching only SpO2 value without checking its waveform. (BIS monitor also can show the raw EEG, but cannot show all bispectrum pattern.) We should watch raw EEG waveform ,power spectrum and bispectrum as well as each sub-parameters. Of course BIS monitor is a 'monitor' and equips many artifact-detecting algorithms relevant for clinical use, but "BSA" is a research oriented software and is relatively sensitive to artifacts. "BSA for BIS" partially utilizes the artifact flags from BIS monitor.
Although EEG waveform is rather specific for each anesthetic agent, but we can roughly guess 'the depth of anesthesia' or 'the depth of hypnosis' by watching EEG waveform. Adding the information of power spectrum or bispectrum to the raw waveform may give us more precise information.
I think anesthesiologists will routinely monitor EEG waveform like ECG or SpO2 waveform in the near future.
I will distribute this software for joint study. If you want to use Bsa for research, please contact me. I will also distribute this software for simple clinical use. You can freely use this software in simple clinical use. I would be glad if you provide raw EEG data or recorded EEG parameters when you found a case who awared during operation. As I want to know raw EEG pattern in such a case. I do not warrant the contents of my software, but there would be no bugs in data processing algorithm.
You should take attention that bispectral analysis derived paremeter of "BSA", BispRatio, would not be identical to SynchFastSlow in the BIS monitor, because calculation algorithm for SynchFastSlow would not be clear.
In Ver 1.37 or later, we expanded the calculating range of bispectrum to where f1=f2. According to this change, BispRatio is now calculated from 0.5Hz<=f2<=f1<=47.0Hz(f1+f2<=47.5Hz). As a result, values of BispRatio would be slightly different from that calculated by the earlier version of BSA.
In the older version (before Ver1.21), display screen sometimes shows strange views during processing. (New line will be overwritten on the previous line, or graphic sub-window will be freezed while data calculation goes on.) In Ver1.21 or later, I have fixed this problem.
If the true algorithm for calculating SynchFastSlow or BIS Index, I will adopt them in "BSA".
Questions or comments are welcome. Please tell me by Email.
References
Satoshi Hagihria MD, Ph.D.
Department of Anesthesiology, Osaka University Graduate School of Medicine. 2-2 Yamadaoka, Suita City, Osaka, Japan 565-0871.
Tel. +81-6(6879)3133, Fax. +81-6(6879)3139
email: hagihira@masui.med.osaka-u.ac.jp, pgb00174@nifty.ne.jp