
Jump to Japanese Manual
1. Introduction
2. Overview of BSA for BIS A2000 version
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 A2000" is a software customized for BIS monitor (A-2000/XP). This software only supports A-2000. BIS-XP/VISTA are also available. When you want to use "BSA for A2000" on BIS-VISTA monitor, you should set the serial mode as "LEGACY".
If you use A-1050, please use "Bsa for BIS" A-1050 version, which is customized for A-1050.
"BSA for A2000" 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 XP/VISTA/7, 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. Current machine probably has enough performance for running "BSA".
Current version of "BSA for A2000" can run on Windows XP/VISTA/7. However, to avoid the problem of UAC (User Access Control) of Windows VISTA/7, the users should install "BSA for A2000" in the directory other than "C:\Program Files\"
.

Previously, "BSA for A2000" was developed by C++Builder Ver5.0 (Borland). Current version (Ver 3.52.3) is now developed by C++Builder XE2. Instraller is also updated.
"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 A2000" eliminates epochs containing artifacts with the aid of "artifact flag" from BIS monitor.
Installation of "BSA for A2000" begins with double click the installer package. Only according to the instructions on the screen, you can easily install "BSA for A2000" on your computer.
You should connect to A-2000/XP using straight
serial cable with male connector on the monitor side. Do not use cross serial cable.
After connection with A2000, turn on the power switch of A2000. Then push "Menu" button and select "Advanced Setup" and "Diagnostic menu". In this menu, you should set the protocol of serial interface as "Binary".
Bsa for BIS A2000 version do not work, when the protocol of serial interface sets as "ASCII". It would be better to save this setting to A2000. This software also works well with BIS-XP and BIS-VISTA. If you want to use this software with BIS-VISTA, please set the Serial port mode as "Regacy".
If you installed "BSA for BIS" via installer, "BSA_A2000" folder is registered in the "Program" of "Start Menu". Only selecting this, you can run "BSA for A2000".
[Caution !!]
While you are running "BSA for A2000" in Online mode, it would be better not to run other application software. Because "BSA for A2000" gathers binary packets sent from BIS without any handshaking method.
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/2000) 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 +/-50m
V(maximum +/-70m
V). If you want to display +/-100m
V(maximum +/-140m
V), set this as 50m
V. Only this sub window can be available during data processing.
You can set optional parameters in "Bsa_A2000.ini" file. This file is loaded in starting process of "BSA for A2000". 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_A2000.ini'. You may edit the list at only the different setting from the defaults. 'Bsa_A2000.ini' must be located in the same directory of 'Bsa_A2000.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 Pow_real:true SamplingRate:128
If you have already written each setting in 'Bsa_A2000.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 5m
V lasts more than 0.5sec) would be "fooled" by superimposed slow wave, as written in the Rampil's review. As QUAZI is not in public domain, 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 q
1
,q
2
. 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 f1
t+q
1
, f2
t+q
2
. And the phase of X(f1
+f2
) is (f1
+f2
)t+q
3
. 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 (f1
t+q
1
)+(f2
t+q
2
)-{(f1
+f2
)t+q
3
} = q
1
+q
2
-q
3
. 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 q
1
,q
2
,q
3
, q
1
+q
2
-q
3
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 q
1
,q
2
,q
3
, (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 anesthesia7) . At this point physiological meaning of bispectrum in EEG is not clear.
As previously mentioned, "BSA" defined Burst Suppression as amplitude less than 5m
V 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.1999.09.27 Ver 0.33 first version of working well
1999.11.14 Ver 0.70 change from Bicoherence to Bispectrum
1999.12.09 Ver 0.85 rewrite calculation routines
1999.12.14 Ver 0.94 added Bsa.ini
1999.12.23 Ver 1.00 first distribution version
1999.12.31 Ver 1.02 added save routine of waveform in ASCII
2000.01.03 Ver 1.03 SEF90 area changed from 0.5-47.0Hz to 0.5-30.0Hz (adaptation for pEEG and BIS)
2000.01.11 Ver 1.05 replay start time setting added and calibration modified
2000.01.12 Ver 1.10 Now power spectrum is always displayed. "Log Window" was separated from main panel.
2000.01.21 Ver 1.11 Screen Display modified.
2000.01.25 Ver 1.20 Added "Calculation Only" mode. And some displaying thread modified. 'Waveform Scale' moved to 'SetView'.
2000.01.30 Ver 1.21 finally fixed the screen problem and some small bugs are fixed. added the replaying speed limter.
2000.01.30 Ver 1.22 Option for setting string for defect value is added and bugs around Bsa.ini fixed.
2000.01.31 Ver 1.23 additional Screen problem fixD
2000.01.31 Ver 1.24 WorkDir option added in Bsa.ini.
2000.02.15 Ver 1.30 Trend added
2000.03.25 Ver 1.31 Scale of Power spectrum changed
2000.05.08 Ver 1.32B for BIS version
2000.05.14 Ver 1.33B data input routine modified.
2000.06.30 Ver 1.34B online mode bug fixedD
2000.07.03 Ver 1.35B options in original "BSA" are almost ported.
2000.07.22 This manual updated
2000.09.07 Ver 1.35B03 added Shortcut keyDThe label "SynchFS" changed to "BispRatio".
2000.09.28 Ver 1.35B4 timer bug in online mode fixed, graphic screen modified
2000.10.12 Ver 1.36B BispR bug fixed
2000.10.18 Ver 1.37B Bispectrum calculation area expanded where f1
=f2
2000.11.06 Ver 2.00B Changed to bispectral calculation duration selectable. And Comment input button added
2000.11.23 Ver 2.10B BSR calculation improved. Bug fixed around utilization of artifact flag from BIS monitor.
2000.12.28 Ver 2.20B serious bug around epochs for power spectral analysis fixed. Added mean amplitude parameter in Log.
2001.01.08 Ver 2.21B Time domain analytic routine simplified.
2001.04.02 Manual modified.
2001.05.31 Manual modified.
2001.06.17 Ver 2.40B Display Thread changed to be always stayed.
2001.07.15 Ver 3.00B Major Version up !! Trend modified (can be scrolled in both direction) and moved to main panel. Averaged bicoherence is added in the trend screen. Parameter calculating interval changed to 10sec. Comment file is separated from data log file. AutoRec mode is added. SQI display added, etc.
2001.07.17 Ver 3.01B small bug around Trend thread fixed.
2001.08.02 Ver 3.02B Window Menu added, POST_OVER added, bicoherence init bug fixed, CommentOnLog flag added, Button positoin modified.
2001.08.10 Ver 3.03B small bug aroung Trend display fixed.
2001.10.06 Ver 3.04B Add Amp Trend, OVERSHOOT handling modified.
2001.10.29 Ver 3.05B OVERSHOOT handling changed back to V3.03.
2002.01.14 Ver 3.06B Focus set on Comment window added. Comfirmation Window added to Stop button. SQI graph draw modified. BSR scale changed.
2002.05.04 Ver 3.07B2 "B2" version is for A2000.
2002.05.09 Ver 3.10B2 first beta release of "BSA for A2000".
2002.05.14 Ver 3.11B2 ShowWaveThread modified.
2002.05.26 Ver 3.12B2 "Lock" changed to "TryLock".
2002.05.27 Ver 3.13B2 "TryLock" bug fixed.
2002.05.29 Ver 3.14B2 Trend Time bug fixed.
2002.06.09 Ver 3.15B2 Offspeed bug fixed.
2002.11.09 Ver 3.16B2 Work area too large bug fixed.
2002.11.14 Ver 3.17B2 Child mode added.
2003.05.25 Ver 3.21B2 TryLock routine modified for WinXP.
2003.11.15 Ver 3.22B2 Add EEG wave data ASCII save.
2004.09.16 Ver 3.30B2 Probably adapted for Windows NT/2000/XP
2004.10.02 Ver 3.31B2 memory leak bug fixed
2006.06.14 Ver 3.33B2 trend fixed
2007.05.15 Ver 3.34B2 available COM port extended to COM16
2010.09.09 Ver 3.50B2 EEG sampling rate made selectable 128Hz/256Hz
2011.10.03 Ver 3.51B2 artifact checking modified. Compiled by C++Buidler 2010
2011.11.23 Ver 3.52B2 Power Scale added
2012.01.03 Ver 3.53B2 Compiled by C++Builder XE2, bugs around unicode fixed
Copyright (c) 1999-2012 Satoshi Hagihira (hagihira@anes.med.osaka-u.ac.jp)
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@anes.med.osaka-u.ac.jp
, satoshi.hagihira@nifty.com