skip to main content


Title: Variable order metrics for decision diagrams in system verification
Decision diagrams (DDs) are widely used in system verification to compute and store the state space of finite discrete events dynamic systems (DEDSs). DDs are organized into levels, and it is well known that the size of a DD encoding a given set may be very sensitive to the order in which the variables capturing the state of the system are mapped to levels. Computing optimal orders is NP-hard. Several heuristics for variable order computation have been proposed, and metrics have been introduced to evaluate these orders. However, we know of no published evaluation that compares the actual predictive power for all these metrics. We propose and apply a methodology to carry out such an evaluation, based on the correlation between the metric value of a variable order and the size of the DD generated with that order. We compute correlations for several metrics from the literature, applied to many variable orders built using different approaches, for 40 DEDSs taken from the literature. Our experiments show that these metrics have correlations ranging from "very weak or nonexisting" to "strong." We show the importance of highly correlating metrics on variable order heuristics, by defining and evaluating two new heuristics (an improvement of the well-known Force heuristic and a metric-based simulated annealing), as well as a meta-heuristic (that uses a metric to select the "best" variable order among a set of different variable orders).  more » « less
Award ID(s):
1642397
NSF-PAR ID:
10129418
Author(s) / Creator(s):
; ;
Date Published:
Journal Name:
International Journal on Software Tools for Technology Transfer
ISSN:
1433-2779
Format(s):
Medium: X
Sponsoring Org:
National Science Foundation
More Like this
  1. Multivalued decision diagrams are an excellent technique to study the behavior of discrete-state systems such as Petri nets, but their variable order (mapping places to MDD levels) greatly affects efficiency, and finding an optimal order even just to encode a given set is NP-hard. In state-space generation, the situation is even worse, since the set of markings to be encoded keeps evolving and is known only at the end. Previous heuristics to improve the efficiency of the saturation algorithm often used in state-space generation seek a variable order minimizing a simple function of the Petri net, such as the sum over each transition of the top variable position (SOT) or variable span (SOS). This, too, is NP-hard, so we cannot compute orders that minimize SOT or SOS in most cases but, even if we could, it would have limited effectiveness. For example, SOT and SOS can be led astray by multiple copies of a transition (giving more weight to it), or transitions with equal inputs and outputs (giving weight to transitions that should be ignored). These anomalies inspired us to define SOUPS, a new heuristic that only takes into account the \emph{unique} and \emph{productive} portion of each transition. The SOUPS metric can be easily computed, allowing us to use it in standard search techniques like simulated annealing to find good orders. Experiments show that SOUPS is a much better proxy for the quantities we really hope to improve, the memory and time for MDD manipulation during state-space generation. 
    more » « less
  2. Obeid, I. ; Selesnik, I. ; Picone, J. (Ed.)
    The Neuronix high-performance computing cluster allows us to conduct extensive machine learning experiments on big data [1]. This heterogeneous cluster uses innovative scheduling technology, Slurm [2], that manages a network of CPUs and graphics processing units (GPUs). The GPU farm consists of a variety of processors ranging from low-end consumer grade devices such as the Nvidia GTX 970 to higher-end devices such as the GeForce RTX 2080. These GPUs are essential to our research since they allow extremely compute-intensive deep learning tasks to be executed on massive data resources such as the TUH EEG Corpus [2]. We use TensorFlow [3] as the core machine learning library for our deep learning systems, and routinely employ multiple GPUs to accelerate the training process. Reproducible results are essential to machine learning research. Reproducibility in this context means the ability to replicate an existing experiment – performance metrics such as error rates should be identical and floating-point calculations should match closely. Three examples of ways we typically expect an experiment to be replicable are: (1) The same job run on the same processor should produce the same results each time it is run. (2) A job run on a CPU and GPU should produce identical results. (3) A job should produce comparable results if the data is presented in a different order. System optimization requires an ability to directly compare error rates for algorithms evaluated under comparable operating conditions. However, it is a difficult task to exactly reproduce the results for large, complex deep learning systems that often require more than a trillion calculations per experiment [5]. This is a fairly well-known issue and one we will explore in this poster. Researchers must be able to replicate results on a specific data set to establish the integrity of an implementation. They can then use that implementation as a baseline for comparison purposes. A lack of reproducibility makes it very difficult to debug algorithms and validate changes to the system. Equally important, since many results in deep learning research are dependent on the order in which the system is exposed to the data, the specific processors used, and even the order in which those processors are accessed, it becomes a challenging problem to compare two algorithms since each system must be individually optimized for a specific data set or processor. This is extremely time-consuming for algorithm research in which a single run often taxes a computing environment to its limits. Well-known techniques such as cross-validation [5,6] can be used to mitigate these effects, but this is also computationally expensive. These issues are further compounded by the fact that most deep learning algorithms are susceptible to the way computational noise propagates through the system. GPUs are particularly notorious for this because, in a clustered environment, it becomes more difficult to control which processors are used at various points in time. Another equally frustrating issue is that upgrades to the deep learning package, such as the transition from TensorFlow v1.9 to v1.13, can also result in large fluctuations in error rates when re-running the same experiment. Since TensorFlow is constantly updating functions to support GPU use, maintaining an historical archive of experimental results that can be used to calibrate algorithm research is quite a challenge. This makes it very difficult to optimize the system or select the best configurations. The overall impact of all of these issues described above is significant as error rates can fluctuate by as much as 25% due to these types of computational issues. Cross-validation is one technique used to mitigate this, but that is expensive since you need to do multiple runs over the data, which further taxes a computing infrastructure already running at max capacity. GPUs are preferred when training a large network since these systems train at least two orders of magnitude faster than CPUs [7]. Large-scale experiments are simply not feasible without using GPUs. However, there is a tradeoff to gain this performance. Since all our GPUs use the NVIDIA CUDA® Deep Neural Network library (cuDNN) [8], a GPU-accelerated library of primitives for deep neural networks, it adds an element of randomness into the experiment. When a GPU is used to train a network in TensorFlow, it automatically searches for a cuDNN implementation. NVIDIA’s cuDNN implementation provides algorithms that increase the performance and help the model train quicker, but they are non-deterministic algorithms [9,10]. Since our networks have many complex layers, there is no easy way to avoid this randomness. Instead of comparing each epoch, we compare the average performance of the experiment because it gives us a hint of how our model is performing per experiment, and if the changes we make are efficient. In this poster, we will discuss a variety of issues related to reproducibility and introduce ways we mitigate these effects. For example, TensorFlow uses a random number generator (RNG) which is not seeded by default. TensorFlow determines the initialization point and how certain functions execute using the RNG. The solution for this is seeding all the necessary components before training the model. This forces TensorFlow to use the same initialization point and sets how certain layers work (e.g., dropout layers). However, seeding all the RNGs will not guarantee a controlled experiment. Other variables can affect the outcome of the experiment such as training using GPUs, allowing multi-threading on CPUs, using certain layers, etc. To mitigate our problems with reproducibility, we first make sure that the data is processed in the same order during training. Therefore, we save the data from the last experiment and to make sure the newer experiment follows the same order. If we allow the data to be shuffled, it can affect the performance due to how the model was exposed to the data. We also specify the float data type to be 32-bit since Python defaults to 64-bit. We try to avoid using 64-bit precision because the numbers produced by a GPU can vary significantly depending on the GPU architecture [11-13]. Controlling precision somewhat reduces differences due to computational noise even though technically it increases the amount of computational noise. We are currently developing more advanced techniques for preserving the efficiency of our training process while also maintaining the ability to reproduce models. In our poster presentation we will demonstrate these issues using some novel visualization tools, present several examples of the extent to which these issues influence research results on electroencephalography (EEG) and digital pathology experiments and introduce new ways to manage such computational issues. 
    more » « less
  3. Excessive phosphorus (P) applications to croplands can contribute to eutrophication of surface waters through surface runoff and subsurface (leaching) losses. We analyzed leaching losses of total dissolved P (TDP) from no-till corn, hybrid poplar (Populus nigra X P. maximowiczii), switchgrass (Panicum virgatum), miscanthus (Miscanthus giganteus), native grasses, and restored prairie, all planted in 2008 on former cropland in Michigan, USA. All crops except corn (13 kg P ha−1 year−1) were grown without P fertilization. Biomass was harvested at the end of each growing season except for poplar. Soil water at 1.2 m depth was sampled weekly to biweekly for TDP determination during March–November 2009–2016 using tension lysimeters. Soil test P (0–25 cm depth) was measured every autumn. Soil water TDP concentrations were usually below levels where eutrophication of surface waters is frequently observed (> 0.02 mg L−1) but often higher than in deep groundwater or nearby streams and lakes. Rates of P leaching, estimated from measured concentrations and modeled drainage, did not differ statistically among cropping systems across years; 7-year cropping system means ranged from 0.035 to 0.072 kg P ha−1 year−1 with large interannual variation. Leached P was positively related to STP, which decreased over the 7 years in all systems. These results indicate that both P-fertilized and unfertilized cropping systems may leach legacy P from past cropland management. Experimental details The Biofuel Cropping System Experiment (BCSE) is located at the W.K. Kellogg Biological Station (KBS) (42.3956° N, 85.3749° W; elevation 288 m asl) in southwestern Michigan, USA. This site is a part of the Great Lakes Bioenergy Research Center (www.glbrc.org) and is a Long-term Ecological Research site (www.lter.kbs.msu.edu). Soils are mesic Typic Hapludalfs developed on glacial outwash54 with high sand content (76% in the upper 150 cm) intermixed with silt-rich loess in the upper 50 cm55. The water table lies approximately 12–14 m below the surface. The climate is humid temperate with a mean annual air temperature of 9.1 °C and annual precipitation of 1005 mm, 511 mm of which falls between May and September (1981–2010)56,57. The BCSE was established as a randomized complete block design in 2008 on preexisting farmland. Prior to BCSE establishment, the field was used for grain crop and alfalfa (Medicago sativa L.) production for several decades. Between 2003 and 2007, the field received a total of ~ 300 kg P ha−1 as manure, and the southern half, which contains one of four replicate plots, received an additional 206 kg P ha−1 as inorganic fertilizer. The experimental design consists of five randomized blocks each containing one replicate plot (28 by 40 m) of 10 cropping systems (treatments) (Supplementary Fig. S1; also see Sanford et al.58). Block 5 is not included in the present study. Details on experimental design and site history are provided in Robertson and Hamilton57 and Gelfand et al.59. Leaching of P is analyzed in six of the cropping systems: (i) continuous no-till corn, (ii) switchgrass, (iii) miscanthus, (iv) a mixture of five species of native grasses, (v) a restored native prairie containing 18 plant species (Supplementary Table S1), and (vi) hybrid poplar. Agronomic management Phenological cameras and field observations indicated that the perennial herbaceous crops emerged each year between mid-April and mid-May. Corn was planted each year in early May. Herbaceous crops were harvested at the end of each growing season with the timing depending on weather: between October and November for corn and between November and December for herbaceous perennial crops. Corn stover was harvested shortly after corn grain, leaving approximately 10 cm height of stubble above the ground. The poplar was harvested only once, as the culmination of a 6-year rotation, in the winter of 2013–2014. Leaf emergence and senescence based on daily phenological images indicated the beginning and end of the poplar growing season, respectively, in each year. Application of inorganic fertilizers to the different crops followed a management approach typical for the region (Table 1). Corn was fertilized with 13 kg P ha−1 year−1 as starter fertilizer (N-P-K of 19-17-0) at the time of planting and an additional 33 kg P ha−1 year−1 was added as superphosphate in spring 2015. Corn also received N fertilizer around the time of planting and in mid-June at typical rates for the region (Table 1). No P fertilizer was applied to the perennial grassland or poplar systems (Table 1). All perennial grasses (except restored prairie) were provided 56 kg N ha−1 year−1 of N fertilizer in early summer between 2010 and 2016; an additional 77 kg N ha−1 was applied to miscanthus in 2009. Poplar was fertilized once with 157 kg N ha−1 in 2010 after the canopy had closed. Sampling of subsurface soil water and soil for P determination Subsurface soil water samples were collected beneath the root zone (1.2 m depth) using samplers installed at approximately 20 cm into the unconsolidated sand of 2Bt2 and 2E/Bt horizons (soils at the site are described in Crum and Collins54). Soil water was collected from two kinds of samplers: Prenart samplers constructed of Teflon and silica (http://www.prenart.dk/soil-water-samplers/) in replicate blocks 1 and 2 and Eijkelkamp ceramic samplers (http://www.eijkelkamp.com) in blocks 3 and 4 (Supplementary Fig. S1). The samplers were installed in 2008 at an angle using a hydraulic corer, with the sampling tubes buried underground within the plots and the sampler located about 9 m from the plot edge. There were no consistent differences in TDP concentrations between the two sampler types. Beginning in the 2009 growing season, subsurface soil water was sampled at weekly to biweekly intervals during non-frozen periods (April–November) by applying 50 kPa of vacuum to each sampler for 24 h, during which the extracted water was collected in glass bottles. Samples were filtered using different filter types (all 0.45 µm pore size) depending on the volume of leachate collected: 33-mm dia. cellulose acetate membrane filters when volumes were less than 50 mL; and 47-mm dia. Supor 450 polyethersulfone membrane filters for larger volumes. Total dissolved phosphorus (TDP) in water samples was analyzed by persulfate digestion of filtered samples to convert all phosphorus forms to soluble reactive phosphorus, followed by colorimetric analysis by long-pathlength spectrophotometry (UV-1800 Shimadzu, Japan) using the molybdate blue method60, for which the method detection limit was ~ 0.005 mg P L−1. Between 2009 and 2016, soil samples (0–25 cm depth) were collected each autumn from all plots for determination of soil test P (STP) by the Bray-1 method61, using as an extractant a dilute hydrochloric acid and ammonium fluoride solution, as is recommended for neutral to slightly acidic soils. The measured STP concentration in mg P kg−1 was converted to kg P ha−1 based on soil sampling depth and soil bulk density (mean, 1.5 g cm−3). Sampling of water samples from lakes, streams and wells for P determination In addition to chemistry of soil and subsurface soil water in the BCSE, waters from lakes, streams, and residential water supply wells were also sampled during 2009–2016 for TDP analysis using Supor 450 membrane filters and the same analytical method as for soil water. These water bodies are within 15 km of the study site, within a landscape mosaic of row crops, grasslands, deciduous forest, and wetlands, with some residential development (Supplementary Fig. S2, Supplementary Table S2). Details of land use and cover change in the vicinity of KBS are given in Hamilton et al.48, and patterns in nutrient concentrations in local surface waters are further discussed in Hamilton62. Leaching estimates, modeled drainage, and data analysis Leaching was estimated at daily time steps and summarized as total leaching on a crop-year basis, defined from the date of planting or leaf emergence in a given year to the day prior to planting or emergence in the following year. TDP concentrations (mg L−1) of subsurface soil water were linearly interpolated between sampling dates during non-freezing periods (April–November) and over non-sampling periods (December–March) based on the preceding November and subsequent April samples. Daily rates of TDP leaching (kg ha−1) were calculated by multiplying concentration (mg L−1) by drainage rates (m3 ha−1 day−1) modeled by the Systems Approach for Land Use Sustainability (SALUS) model, a crop growth model that is well calibrated for KBS soil and environmental conditions. SALUS simulates yield and environmental outcomes in response to weather, soil, management (planting dates, plant population, irrigation, N fertilizer application, and tillage), and genetics63. The SALUS water balance sub-model simulates surface runoff, saturated and unsaturated water flow, drainage, root water uptake, and evapotranspiration during growing and non-growing seasons63. The SALUS model has been used in studies of evapotranspiration48,51,64 and nutrient leaching20,65,66,67 from KBS soils, and its predictions of growing-season evapotranspiration are consistent with independent measurements based on growing-season soil water drawdown53 and evapotranspiration measured by eddy covariance68. Phosphorus leaching was assumed insignificant on days when SALUS predicted no drainage. Volume-weighted mean TDP concentrations in leachate for each crop-year and for the entire 7-year study period were calculated as the total dissolved P leaching flux (kg ha−1) divided by the total drainage (m3 ha−1). One-way ANOVA with time (crop-year) as the fixed factor was conducted to compare total annual drainage rates, P leaching rates, volume-weighted mean TDP concentrations, and maximum aboveground biomass among the cropping systems over all seven crop-years as well as with TDP concentrations from local lakes, streams, and groundwater wells. When a significant (α = 0.05) difference was detected among the groups, we used the Tukey honest significant difference (HSD) post-hoc test to make pairwise comparisons among the groups. In the case of maximum aboveground biomass, we used the Tukey–Kramer method to make pairwise comparisons among the groups because the absence of poplar data after the 2013 harvest resulted in unequal sample sizes. We also used the Tukey–Kramer method to compare the frequency distributions of TDP concentrations in all of the soil leachate samples with concentrations in lakes, streams, and groundwater wells, since each sample category had very different numbers of measurements. Individual spreadsheets in “data table_leaching_dissolved organic carbon and nitrogen.xls” 1.    annual precip_drainage 2.    biomass_corn, perennial grasses 3.    biomass_poplar 4.    annual N leaching _vol-wtd conc 5.    Summary_N leached 6.    annual DOC leachin_vol-wtd conc 7.    growing season length 8.    correlation_nh4 VS no3 9.    correlations_don VS no3_doc VS don Each spreadsheet is described below along with an explanation of variates. Note that ‘nan’ indicate data are missing or not available. First row indicates header; second row indicates units 1. Spreadsheet: annual precip_drainage Description: Precipitation measured from nearby Kellogg Biological Station (KBS) Long Term Ecological Research (LTER) Weather station, over 2009-2016 study period. Data shown in Figure 1; original data source for precipitation (https://lter.kbs.msu.edu/datatables/7). Drainage estimated from SALUS crop model. Note that drainage is percolation out of the root zone (0-125 cm). Annual precipitation and drainage values shown here are calculated for growing and non-growing crop periods. Variate    Description year    year of the observation crop    “corn” “switchgrass” “miscanthus” “nativegrass” “restored prairie” “poplar” precip_G    precipitation during growing period (milliMeter) precip_NG    precipitation during non-growing period (milliMeter) drainage_G    drainage during growing period (milliMeter) drainage_NG    drainage during non-growing period (milliMeter)      2. Spreadsheet: biomass_corn, perennial grasses Description: Maximum aboveground biomass measurements from corn, switchgrass, miscanthus, native grass and restored prairie plots in Great Lakes Bioenergy Research Center (GLBRC) Biomass Cropping System Experiment (BCSE) during 2009-2015. Data shown in Figure 2.   Variate    Description year    year of the observation date    day of the observation (mm/dd/yyyy) crop    “corn” “switchgrass” “miscanthus” “nativegrass” “restored prairie” “poplar” replicate    each crop has four replicated plots, R1, R2, R3 and R4 station    stations (S1, S2 and S3) of samplings within the plot. For more details, refer to link (https://data.sustainability.glbrc.org/protocols/156) species    plant species that are rooted within the quadrat during the time of maximum biomass harvest. See protocol for more information, refer to link (http://lter.kbs.msu.edu/datatables/36) For maize biomass, grain and whole biomass reported in the paper (weed biomass or surface litter are excluded). Surface litter biomass not included in any crops; weed biomass not included in switchgrass and miscanthus, but included in grass mixture and prairie. fraction    Fraction of biomass biomass_plot    biomass per plot on dry-weight basis (Grams_Per_SquareMeter) biomass_ha    biomass (megaGrams_Per_Hectare) by multiplying column biomass per plot with 0.01 3. Spreadsheet: biomass_poplar Description: Maximum aboveground biomass measurements from poplar plots in Great Lakes Bioenergy Research Center (GLBRC) Biomass Cropping System Experiment (BCSE) during 2009-2015. Data shown in Figure 2. Note that poplar biomass was estimated from crop growth curves until the poplar was harvested in the winter of 2013-14. Variate    Description year    year of the observation method    methods of poplar biomass sampling date    day of the observation (mm/dd/yyyy) replicate    each crop has four replicated plots, R1, R2, R3 and R4 diameter_at_ground    poplar diameter (milliMeter) at the ground diameter_at_15cm    poplar diameter (milliMeter) at 15 cm height biomass_tree    biomass per plot (Grams_Per_Tree) biomass_ha    biomass (megaGrams_Per_Hectare) by multiplying biomass per tree with 0.01 4. Spreadsheet: annual N leaching_vol-wtd conc Description: Annual leaching rate (kiloGrams_N_Per_Hectare) and volume-weighted mean N concentrations (milliGrams_N_Per_Liter) of nitrate (no3) and dissolved organic nitrogen (don) in the leachate samples collected from corn, switchgrass, miscanthus, native grass, restored prairie and poplar plots in Great Lakes Bioenergy Research Center (GLBRC) Biomass Cropping System Experiment (BCSE) during 2009-2016. Data for nitrogen leached and volume-wtd mean N concentration shown in Figure 3a and Figure 3b, respectively. Note that ammonium (nh4) concentration were much lower and often undetectable (<0.07 milliGrams_N_Per_Liter). Also note that in 2009 and 2010 crop-years, data from some replicates are missing.    Variate    Description crop    “corn” “switchgrass” “miscanthus” “nativegrass” “restored prairie” “poplar” crop-year    year of the observation replicate    each crop has four replicated plots, R1, R2, R3 and R4 no3 leached    annual leaching rates of nitrate (kiloGrams_N_Per_Hectare) don leached    annual leaching rates of don (kiloGrams_N_Per_Hectare) vol-wtd no3 conc.    Volume-weighted mean no3 concentration (milliGrams_N_Per_Liter) vol-wtd don conc.    Volume-weighted mean don concentration (milliGrams_N_Per_Liter) 5. Spreadsheet: summary_N leached Description: Summary of total amount and forms of N leached (kiloGrams_N_Per_Hectare) and the percent of applied N lost to leaching over the seven years for corn, switchgrass, miscanthus, native grass, restored prairie and poplar plots in Great Lakes Bioenergy Research Center (GLBRC) Biomass Cropping System Experiment (BCSE) during 2009-2016. Data for nitrogen amount leached shown in Figure 4a and percent of applied N lost shown in Figure 4b. Note the fraction of unleached N includes in harvest, accumulation in root biomass, soil organic matter or gaseous N emissions were not measured in the study. Variate    Description crop    “corn” “switchgrass” “miscanthus” “nativegrass” “restored prairie” “poplar” no3 leached    annual leaching rates of nitrate (kiloGrams_N_Per_Hectare) don leached    annual leaching rates of don (kiloGrams_N_Per_Hectare) N unleached    N unleached (kiloGrams_N_Per_Hectare) in other sources are not studied % of N applied N lost to leaching    % of N applied N lost to leaching 6. Spreadsheet: annual DOC leachin_vol-wtd conc Description: Annual leaching rate (kiloGrams_Per_Hectare) and volume-weighted mean N concentrations (milliGrams_Per_Liter) of dissolved organic carbon (DOC) in the leachate samples collected from corn, switchgrass, miscanthus, native grass, restored prairie and poplar plots in Great Lakes Bioenergy Research Center (GLBRC) Biomass Cropping System Experiment (BCSE) during 2009-2016. Data for DOC leached and volume-wtd mean DOC concentration shown in Figure 5a and Figure 5b, respectively. Note that in 2009 and 2010 crop-years, water samples were not available for DOC measurements.     Variate    Description crop    “corn” “switchgrass” “miscanthus” “nativegrass” “restored prairie” “poplar” crop-year    year of the observation replicate    each crop has four replicated plots, R1, R2, R3 and R4 doc leached    annual leaching rates of nitrate (kiloGrams_Per_Hectare) vol-wtd doc conc.    volume-weighted mean doc concentration (milliGrams_Per_Liter) 7. Spreadsheet: growing season length Description: Growing season length (days) of corn, switchgrass, miscanthus, native grass, restored prairie and poplar plots in the Great Lakes Bioenergy Research Center (GLBRC) Biomass Cropping System Experiment (BCSE) during 2009-2015. Date shown in Figure S2. Note that growing season is from the date of planting or emergence to the date of harvest (or leaf senescence in case of poplar).   Variate    Description crop    “corn” “switchgrass” “miscanthus” “nativegrass” “restored prairie” “poplar” year    year of the observation growing season length    growing season length (days) 8. Spreadsheet: correlation_nh4 VS no3 Description: Correlation of ammonium (nh4+) and nitrate (no3-) concentrations (milliGrams_N_Per_Liter) in the leachate samples from corn, switchgrass, miscanthus, native grass, restored prairie and poplar plots in Great Lakes Bioenergy Research Center (GLBRC) Biomass Cropping System Experiment (BCSE) during 2013-2015. Data shown in Figure S3. Note that nh4+ concentration in the leachates was very low compared to no3- and don concentration and often undetectable in three crop-years (2013-2015) when measurements are available. Variate    Description crop    “corn” “switchgrass” “miscanthus” “nativegrass” “restored prairie” “poplar” date    date of the observation (mm/dd/yyyy) replicate    each crop has four replicated plots, R1, R2, R3 and R4 nh4 conc    nh4 concentration (milliGrams_N_Per_Liter) no3 conc    no3 concentration (milliGrams_N_Per_Liter)   9. Spreadsheet: correlations_don VS no3_doc VS don Description: Correlations of don and nitrate concentrations (milliGrams_N_Per_Liter); and doc (milliGrams_Per_Liter) and don concentrations (milliGrams_N_Per_Liter) in the leachate samples of corn, switchgrass, miscanthus, native grass, restored prairie and poplar plots in Great Lakes Bioenergy Research Center (GLBRC) Biomass Cropping System Experiment (BCSE) during 2013-2015. Data of correlation of don and nitrate concentrations shown in Figure S4 a and doc and don concentrations shown in Figure S4 b. Variate    Description crop    “corn” “switchgrass” “miscanthus” “nativegrass” “restored prairie” “poplar” year    year of the observation don    don concentration (milliGrams_N_Per_Liter) no3     no3 concentration (milliGrams_N_Per_Liter) doc    doc concentration (milliGrams_Per_Liter) 
    more » « less
  4. Obeid, Iyad Selesnick (Ed.)
    Electroencephalography (EEG) is a popular clinical monitoring tool used for diagnosing brain-related disorders such as epilepsy [1]. As monitoring EEGs in a critical-care setting is an expensive and tedious task, there is a great interest in developing real-time EEG monitoring tools to improve patient care quality and efficiency [2]. However, clinicians require automatic seizure detection tools that provide decisions with at least 75% sensitivity and less than 1 false alarm (FA) per 24 hours [3]. Some commercial tools recently claim to reach such performance levels, including the Olympic Brainz Monitor [4] and Persyst 14 [5]. In this abstract, we describe our efforts to transform a high-performance offline seizure detection system [3] into a low latency real-time or online seizure detection system. An overview of the system is shown in Figure 1. The main difference between an online versus offline system is that an online system should always be causal and has minimum latency which is often defined by domain experts. The offline system, shown in Figure 2, uses two phases of deep learning models with postprocessing [3]. The channel-based long short term memory (LSTM) model (Phase 1 or P1) processes linear frequency cepstral coefficients (LFCC) [6] features from each EEG channel separately. We use the hypotheses generated by the P1 model and create additional features that carry information about the detected events and their confidence. The P2 model uses these additional features and the LFCC features to learn the temporal and spatial aspects of the EEG signals using a hybrid convolutional neural network (CNN) and LSTM model. Finally, Phase 3 aggregates the results from both P1 and P2 before applying a final postprocessing step. The online system implements Phase 1 by taking advantage of the Linux piping mechanism, multithreading techniques, and multi-core processors. To convert Phase 1 into an online system, we divide the system into five major modules: signal preprocessor, feature extractor, event decoder, postprocessor, and visualizer. The system reads 0.1-second frames from each EEG channel and sends them to the feature extractor and the visualizer. The feature extractor generates LFCC features in real time from the streaming EEG signal. Next, the system computes seizure and background probabilities using a channel-based LSTM model and applies a postprocessor to aggregate the detected events across channels. The system then displays the EEG signal and the decisions simultaneously using a visualization module. The online system uses C++, Python, TensorFlow, and PyQtGraph in its implementation. The online system accepts streamed EEG data sampled at 250 Hz as input. The system begins processing the EEG signal by applying a TCP montage [8]. Depending on the type of the montage, the EEG signal can have either 22 or 20 channels. To enable the online operation, we send 0.1-second (25 samples) length frames from each channel of the streamed EEG signal to the feature extractor and the visualizer. Feature extraction is performed sequentially on each channel. The signal preprocessor writes the sample frames into two streams to facilitate these modules. In the first stream, the feature extractor receives the signals using stdin. In parallel, as a second stream, the visualizer shares a user-defined file with the signal preprocessor. This user-defined file holds raw signal information as a buffer for the visualizer. The signal preprocessor writes into the file while the visualizer reads from it. Reading and writing into the same file poses a challenge. The visualizer can start reading while the signal preprocessor is writing into it. To resolve this issue, we utilize a file locking mechanism in the signal preprocessor and visualizer. Each of the processes temporarily locks the file, performs its operation, releases the lock, and tries to obtain the lock after a waiting period. The file locking mechanism ensures that only one process can access the file by prohibiting other processes from reading or writing while one process is modifying the file [9]. The feature extractor uses circular buffers to save 0.3 seconds or 75 samples from each channel for extracting 0.2-second or 50-sample long center-aligned windows. The module generates 8 absolute LFCC features where the zeroth cepstral coefficient is replaced by a temporal domain energy term. For extracting the rest of the features, three pipelines are used. The differential energy feature is calculated in a 0.9-second absolute feature window with a frame size of 0.1 seconds. The difference between the maximum and minimum temporal energy terms is calculated in this range. Then, the first derivative or the delta features are calculated using another 0.9-second window. Finally, the second derivative or delta-delta features are calculated using a 0.3-second window [6]. The differential energy for the delta-delta features is not included. In total, we extract 26 features from the raw sample windows which add 1.1 seconds of delay to the system. We used the Temple University Hospital Seizure Database (TUSZ) v1.2.1 for developing the online system [10]. The statistics for this dataset are shown in Table 1. A channel-based LSTM model was trained using the features derived from the train set using the online feature extractor module. A window-based normalization technique was applied to those features. In the offline model, we scale features by normalizing using the maximum absolute value of a channel [11] before applying a sliding window approach. Since the online system has access to a limited amount of data, we normalize based on the observed window. The model uses the feature vectors with a frame size of 1 second and a window size of 7 seconds. We evaluated the model using the offline P1 postprocessor to determine the efficacy of the delayed features and the window-based normalization technique. As shown by the results of experiments 1 and 4 in Table 2, these changes give us a comparable performance to the offline model. The online event decoder module utilizes this trained model for computing probabilities for the seizure and background classes. These posteriors are then postprocessed to remove spurious detections. The online postprocessor receives and saves 8 seconds of class posteriors in a buffer for further processing. It applies multiple heuristic filters (e.g., probability threshold) to make an overall decision by combining events across the channels. These filters evaluate the average confidence, the duration of a seizure, and the channels where the seizures were observed. The postprocessor delivers the label and confidence to the visualizer. The visualizer starts to display the signal as soon as it gets access to the signal file, as shown in Figure 1 using the “Signal File” and “Visualizer” blocks. Once the visualizer receives the label and confidence for the latest epoch from the postprocessor, it overlays the decision and color codes that epoch. The visualizer uses red for seizure with the label SEIZ and green for the background class with the label BCKG. Once the streaming finishes, the system saves three files: a signal file in which the sample frames are saved in the order they were streamed, a time segmented event (TSE) file with the overall decisions and confidences, and a hypotheses (HYP) file that saves the label and confidence for each epoch. The user can plot the signal and decisions using the signal and HYP files with only the visualizer by enabling appropriate options. For comparing the performance of different stages of development, we used the test set of TUSZ v1.2.1 database. It contains 1015 EEG records of varying duration. The any-overlap performance [12] of the overall system shown in Figure 2 is 40.29% sensitivity with 5.77 FAs per 24 hours. For comparison, the previous state-of-the-art model developed on this database performed at 30.71% sensitivity with 6.77 FAs per 24 hours [3]. The individual performances of the deep learning phases are as follows: Phase 1’s (P1) performance is 39.46% sensitivity and 11.62 FAs per 24 hours, and Phase 2 detects seizures with 41.16% sensitivity and 11.69 FAs per 24 hours. We trained an LSTM model with the delayed features and the window-based normalization technique for developing the online system. Using the offline decoder and postprocessor, the model performed at 36.23% sensitivity with 9.52 FAs per 24 hours. The trained model was then evaluated with the online modules. The current performance of the overall online system is 45.80% sensitivity with 28.14 FAs per 24 hours. Table 2 summarizes the performances of these systems. The performance of the online system deviates from the offline P1 model because the online postprocessor fails to combine the events as the seizure probability fluctuates during an event. The modules in the online system add a total of 11.1 seconds of delay for processing each second of the data, as shown in Figure 3. In practice, we also count the time for loading the model and starting the visualizer block. When we consider these facts, the system consumes 15 seconds to display the first hypothesis. The system detects seizure onsets with an average latency of 15 seconds. Implementing an automatic seizure detection model in real time is not trivial. We used a variety of techniques such as the file locking mechanism, multithreading, circular buffers, real-time event decoding, and signal-decision plotting to realize the system. A video demonstrating the system is available at: https://www.isip.piconepress.com/projects/nsf_pfi_tt/resources/videos/realtime_eeg_analysis/v2.5.1/video_2.5.1.mp4. The final conference submission will include a more detailed analysis of the online performance of each module. ACKNOWLEDGMENTS Research reported in this publication was most recently supported by the National Science Foundation Partnership for Innovation award number IIP-1827565 and the Pennsylvania Commonwealth Universal Research Enhancement Program (PA CURE). Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the official views of any of these organizations. REFERENCES [1] A. Craik, Y. He, and J. L. Contreras-Vidal, “Deep learning for electroencephalogram (EEG) classification tasks: a review,” J. Neural Eng., vol. 16, no. 3, p. 031001, 2019. https://doi.org/10.1088/1741-2552/ab0ab5. [2] A. C. Bridi, T. Q. Louro, and R. C. L. Da Silva, “Clinical Alarms in intensive care: implications of alarm fatigue for the safety of patients,” Rev. Lat. Am. Enfermagem, vol. 22, no. 6, p. 1034, 2014. https://doi.org/10.1590/0104-1169.3488.2513. [3] M. Golmohammadi, V. Shah, I. Obeid, and J. Picone, “Deep Learning Approaches for Automatic Seizure Detection from Scalp Electroencephalograms,” in Signal Processing in Medicine and Biology: Emerging Trends in Research and Applications, 1st ed., I. Obeid, I. Selesnick, and J. Picone, Eds. New York, New York, USA: Springer, 2020, pp. 233–274. https://doi.org/10.1007/978-3-030-36844-9_8. [4] “CFM Olympic Brainz Monitor.” [Online]. Available: https://newborncare.natus.com/products-services/newborn-care-products/newborn-brain-injury/cfm-olympic-brainz-monitor. [Accessed: 17-Jul-2020]. [5] M. L. Scheuer, S. B. Wilson, A. Antony, G. Ghearing, A. Urban, and A. I. Bagic, “Seizure Detection: Interreader Agreement and Detection Algorithm Assessments Using a Large Dataset,” J. Clin. Neurophysiol., 2020. https://doi.org/10.1097/WNP.0000000000000709. [6] A. Harati, M. Golmohammadi, S. Lopez, I. Obeid, and J. Picone, “Improved EEG Event Classification Using Differential Energy,” in Proceedings of the IEEE Signal Processing in Medicine and Biology Symposium, 2015, pp. 1–4. https://doi.org/10.1109/SPMB.2015.7405421. [7] V. Shah, C. Campbell, I. Obeid, and J. Picone, “Improved Spatio-Temporal Modeling in Automated Seizure Detection using Channel-Dependent Posteriors,” Neurocomputing, 2021. [8] W. Tatum, A. Husain, S. Benbadis, and P. Kaplan, Handbook of EEG Interpretation. New York City, New York, USA: Demos Medical Publishing, 2007. [9] D. P. Bovet and C. Marco, Understanding the Linux Kernel, 3rd ed. O’Reilly Media, Inc., 2005. https://www.oreilly.com/library/view/understanding-the-linux/0596005652/. [10] V. Shah et al., “The Temple University Hospital Seizure Detection Corpus,” Front. Neuroinform., vol. 12, pp. 1–6, 2018. https://doi.org/10.3389/fninf.2018.00083. [11] F. Pedregosa et al., “Scikit-learn: Machine Learning in Python,” J. Mach. Learn. Res., vol. 12, pp. 2825–2830, 2011. https://dl.acm.org/doi/10.5555/1953048.2078195. [12] J. Gotman, D. Flanagan, J. Zhang, and B. Rosenblatt, “Automatic seizure detection in the newborn: Methods and initial evaluation,” Electroencephalogr. Clin. Neurophysiol., vol. 103, no. 3, pp. 356–362, 1997. https://doi.org/10.1016/S0013-4694(97)00003-9. 
    more » « less
  5. We study inventory optimization for locally controlled, continuous‐review distribution systems with stochastic customer demands. Each node follows a base‐stock policy and a first‐come, first‐served allocation policy. We develop two heuristics, therecursive optimization(RO) heuristic and thedecomposition‐aggregation(DA) heuristic, to approximate the optimal base‐stock levels of all the locations in the system. The RO heuristic applies a bottom‐up approach that sequentially solves single‐variable, convex problems for each location. The DA heuristic decomposes the distribution system into multiple serial systems, solves for the base‐stock levels of these systems using the newsvendor heuristic of Shang and Song (2003), and then aggregates the serial systems back into the distribution system using a procedure we call “backorder matching.” A key advantage of the DA heuristic is that it does not require any evaluation of the cost function (a computationally costly operation that requires numerical convolution). We show that, for both RO and DA, changing some of the parameters, such as leadtime, unit backordering cost, and demand rate, of a location has an impact only on its own local base‐stock level and its upstream locations’ local base‐stock levels. An extensive numerical study shows that both heuristics perform well, with the RO heuristic providing more accurate results and the DA heuristic consuming less computation time. We show that both RO and DA are asymptotically optimal along multiple dimensions for two‐echelon distribution systems. Finally, we show that, with minor changes, both RO and DA are applicable to the balanced allocation policy.

     
    more » « less