WO2006101527A1 - Methods and apparatuses for evaluating water samples - Google Patents

Methods and apparatuses for evaluating water samples Download PDF

Info

Publication number
WO2006101527A1
WO2006101527A1 PCT/US2005/034771 US2005034771W WO2006101527A1 WO 2006101527 A1 WO2006101527 A1 WO 2006101527A1 US 2005034771 W US2005034771 W US 2005034771W WO 2006101527 A1 WO2006101527 A1 WO 2006101527A1
Authority
WO
WIPO (PCT)
Prior art keywords
value
range
data values
current
assigning
Prior art date
Application number
PCT/US2005/034771
Other languages
French (fr)
Inventor
Zaruhi Roberti Mnatsakanyan
Original Assignee
Sensis Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sensis Corporation filed Critical Sensis Corporation
Publication of WO2006101527A1 publication Critical patent/WO2006101527A1/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N33/00Investigating or analysing materials by specific methods not covered by groups G01N1/00 - G01N31/00
    • G01N33/18Water

Definitions

  • the present invention relates to apparatus and methods for evaluating water samples. More particularly, the present invention is directed to apparatuses and methods for estimating the likelihood that one or more specific conditions exist (or will exist in the future) in water samples. The present invention also relates to apparatuses and methods for predicting, as early as possible, emergencies or other situations which require action.
  • the present invention provides methods and apparatuses for estimating the likelihood that a particular water condition exists and/or estimating the likelihood that a particular water condition will exist in the near future.
  • the methods and apparatuses of the present invention can, if desired, be capable of making such estimations for a plurality of water conditions.
  • the methods and apparatuses of the present invention preferably can also provide an estimation as to whether a particular water condition arose as a result of a deliberate act (e.g., terrorism or sabotage).
  • Methods according to the present invention comprise evaluating at least one parameter of a water sample and/or sensing (or determining, e.g., by a sensor or by a user) whether one or more conditions exist in a water sample or body of water.
  • water sample refers to one of a plurality of successive water samples taken from or remaining within a body of water (e.g., a river, a lake, an ocean, a reservoir, a water treatment facility, a canal, a swimming pool, an aquarium, a reflecting pool, etc.), and/or to a specific volume of water (e.g., contained within a beaker), which may have been obtained from any possible source.
  • condition(s) for which the method or apparatus of the invention is testing i.e., estimating the likelihood that the condition exists or will exist
  • the condition(s) for which the method or apparatus of the invention is testing is among the conditions (if any) being sensed or determined, in which case the method or apparatus can serve either to tend to confirm the result or to raise doubt as to the result of such sensing or determining.
  • Each parameter being evaluated is measured, e.g., with a sensor, and a determination is made as to the current "reading" for the parameter.
  • the “reading” can be selected from any suitable group of choices, e.g., the group of choices might consist of "high”, “normal” and “low”. Reference herein to "high”, “normal” and “low” readings is exemplary only, and any number of readings or type or readings can be used according to the present invention.
  • a “reading” for a parameter can be derived in any desired manner.
  • a reading is derived by comparing a current value for the parameter to a reference value (or values) or to an average of a plurality of recent values, or by any other kind of evaluation (e.g., calculations made when operating in a "tendency mode" as discussed below).
  • condition being sensed or determined is characterized as existing or not existing (although in some cases, the results might be characterized as being ambiguous).
  • condition being "true” the fact that a condition is sensed to exist can be characterized as the condition being "true” and the fact that a condition is sensed to not exist can be characterized as the condition being "false”.
  • a condition can be sensed as existing or not existing through the use of a device (e.g., a sensor which senses whether there is a statistically significant detection of a material, such as a contaminant) or without the use of a device (e.g., whether or not a user can detect a particular smell, such as a foul odor, or based on detection by a user's sight, taste, hearing or sense of touch).
  • a device e.g., a sensor which senses whether there is a statistically significant detection of a material, such as a contaminant
  • a device e.g., whether or not a user can detect a particular smell, such as a foul odor, or based on detection by a user's sight, taste, hearing or sense of touch.
  • a method or apparatus Based on the readings of the parameter(s) being evaluated and/or the current existence or non-existence of any conditions being sensed or determined, a method or apparatus according to the present invention makes estimations as to the likelihood that a particular water condition (or conditions) exists and/or estimates the likelihood that a particular water condition (or conditions) will exist in the near future.
  • Each parameter which is being evaluated is linked to one or more conditions. Where a particular parameter is linked to only a single condition, the apparatus will include values for the probabilities for each reading to occur (e.g., the parameter value is "high”, the parameter value is "normal” or the parameter value is "low") where the condition is sensed to exist, and values for the probabilities for each reading to occur where the condition is sensed to not exist.
  • the probability of a "high” reading might be 0.95
  • the probability of a "normal” reading might be 0.04
  • the probability of a "low” reading might be 0.01
  • the probability of a "high” reading might be 0.15
  • the probability of a "normal” reading might be 0.80
  • the probability of a "low” reading might be 0.05.
  • the apparatus will include values for the probabilities for each reading to occur (e.g., the parameter value is "high”, the parameter value is "normal” or the parameter value is “low”). Accordingly, where there are two conditions linked to a parameter), the apparatus will include: (1) for the combination "TT”, the probability of a "high” reading for the parameter, the probability of a "normal” reading for the parameter and the probability of a "low” reading for the parameter; (2) for the combination "TF”, the probability of a "high” reading for the parameter, the probability of a "normal” reading for the parameter and the probability of a "low” reading for the parameter; (3) for the combination "FT”, the probability of a "high” reading for the parameter, the probability of a "normal” reading for the parameter and the probability of a "low” reading for the parameter; and (4) for the combination "FF”, the probability of a "high” reading for the parameter, the probability of a "normal” reading for the parameter, and the probability of
  • each parameter being monitored is linked to a quantity of conditions, and for each combination of results as to whether the respective conditions are sensed, values for the probabilities of each reading for the parameter are stored.
  • conditions can be linked to one or more parameters and/or one or more other conditions (one of which can be detection of that same condition, i.e., a particular condition can be linked to detection of such particular condition).
  • the bases for making the estimations made by the methods and apparatus of the present invention can optionally also include, for any condition(s) being evaluated, the probability that such condition will naturally exist in the water sample.
  • the methods and apparatus of the present invention are not limited to any particular number of parameters being measured and/or any particular number of conditions being evaluated. Likewise, the methods and apparatus of the present invention are not limited to any particular degree of interrelation among the parameters being measured and/or the conditions being evaluated. For example, it would be readily apparent to those of skill in the art that there are situations where a high value for a particular parameter can be expected when any of a number of conditions exist in the water sample.
  • the parameters and conditions employed by the methods according to the present invention, and the linking between parameters and conditions can be developed by obtaining, for one or more parameters, data regarding values of such parameter when a particular condition exists and values of such parameter when such condition does not exist, and/or data regarding values of such parameter when specific combinations of results as to whether the particular conditions are sensed. Decisions are made as to whether a parameter will be linked to a particular condition or combination of conditions based on whether the probabilities of different readings for the parameter differ substantially based on whether the condition exists or differ substantially based on the combination of conditions which exist (or do not exist).
  • condition 1 true; condition 2 false; condition 3 true, or condition 1 false; condition 2 false, condition 3 false e.g., condition 1 true; condition 2 false; condition 3 true, or condition 1 false; condition 2 false, condition 3 false
  • detecting that the parameter is "low” is indicative that the particular combination of conditions exist.
  • a chart is preferably developed in which specific parameters are each linked to one or more specific conditions (and specific conditions are linked to at least one specific parameter and/or at least one other condition) to provide a logic system.
  • specific parameters are each linked to one or more specific conditions (and specific conditions are linked to at least one specific parameter and/or at least one other condition) to provide a logic system.
  • the accuracy of the logic system is preferably tested by applying it to samples for which the existence or non-existence of specific conditions is known.
  • microcystin is the condition under investigation
  • condition of cyanobacteria presence and the condition of detected microcystin presence are linked to the condition of microcystin presence;
  • pH, turbidity, dissolved oxygen, temperature and chlorophyll parameters are linked to the condition of cyanobacteria presence
  • condition of wind presence is linked to the condition of presence of bloom other than cyanobacteria and to the condition of cyanobacteria presence;
  • condition of E-coli presence and the condition of presence of bacteria other than cyanobacteria are linked to the condition of presence of a bacterial problem; the condition of detected E-coli (by an E-coli sensor) is linked to the condition of E- coli presence; and
  • condition of presence of cyanobacteria is linked to the condition of presence of toxin other than microcystin or no toxin presence.
  • condition of detected benzene presence (by a chemical sensor) is linked to the condition of presence of benzene;
  • condition of detected paraxylene presence (by a chemical sensor) is linked to the condition of presence of paraxylene;
  • condition of detected orthoxylene presence is linked to the condition of presence of orthoxylene
  • one of the charts described above is implemented in a Bayesian network (or each of the two charts is implemented in a separate Bayesian network).
  • a method or apparatus makes estimations as to the likelihood that a particular water condition (or conditions) under investigation exists and/or estimates the likelihood that a particular water condition (or conditions) will exist in the near future.
  • the accuracy of these estimations result from the analysis as to the likelihood that the readings of the parameter(s) would be as they are detected when the condition under investigation exists, and/or the likelihood that the condition (or conditions) would be sensed when the condition under investigation exists.
  • detecting a "high” reading for a parameter would result in an increase in the estimated probability that the condition under investigation exists where the stored probability for a "high” reading for that parameter is very low when the condition under investigation does not exist and the stored probability for a "high” reading for that parameter is very high when the condition under investigation exists.
  • the methods and apparatuses of the present invention preferably also provide an estimation as to whether a particular water condition arose as a result of a deliberate act (e.g., terrorism or sabotage), hi such cases, the deliberate act aspect is treated in a manner similar to a water condition, i.e., one or more parameters are linked (as described above) to it, and/or in some cases it is itself sensed (e.g., did someone report seeing sabotage?).
  • a contamination occurs as a result of sabotage
  • there is a tendency for a particular parameter to exhibit a particular reading in some cases there is a tendency for a particular parameter to exhibit a particular reading, whereas when such contamination occurs naturally, there is a tendency for such parameter to exhibit a different reading.
  • the probability that a particular condition arose as a result of sabotage is heightened where the reading (or values) for a particular parameter changed abruptly, in view of knowledge that where such condition arises as a result of natural causes, the reading (or values) for such parameter changes much more slowly.
  • a method of evaluating a water sample for the presence of microcystin comprising:
  • the estimation is based on the results of determining which of a plurality of data value ranges for the first parameter each of the first data values or first data quantities (each first data quantity being calculated based on a plurality of data values obtained from the corresponding sensor, e.g. an average of such values) falls within (e.g., for each parameter, whether the first data value or first data quantity is or is not greater than a reference value for such parameter, or within which of three or more ranges, such as "low", "normal” and "high” the first data value or first data quantity falls.
  • the estimation is based on the results of analyzing the data values according to one of a number of processes (described in more detail below) which involve not only analyzing how the values relate to reference values or ranges, but also analyzing the tendencies of changes in the values.
  • the method is computer-implemented.
  • a method of evaluating a water sample for the presence of gasoline comprising:
  • the method is computer-implemented.
  • apparatuses which comprise: a plurality of sensors for detecting values of the parameters and/or conditions discussed above in connection with the third and fourth aspects of the present invention, respectively; a data evaluation component which receives sensor data from the plurality of sensors and which generates data information based on evaluation of the sensor data; and at least a first report generating component which receives data information from the data evaluation component and expert information, and which generates first reports based on the expert information and the data information.
  • the apparatus further comprises a second report generating component which receives information pertaining to the water sample or a body of water from which the water sample was taken, and expert information, and which generates second reports based on the expert information, the information pertaining to the water sample or the body of water and data information received from the data evaluation component.
  • the result is that the second reports may be shifted from the first reports as a result of the information regarding the specific water sample or the body of water.
  • the information pertaining to the water sample or the body of water can include information as to reference values for the water sample or the body of water which differ from "normal” reference values for water (e.g., if it is observed over time that a particular parameter is generally higher than normal, and that such higher values are not indicative of any changes in the combination of conditions which exist, the ranges of values which are characterized as "low", "normal” and “high” can be adjusted appropriately in the second report-generating component).
  • the apparatus further comprises a decision-making component which makes decisions based on data information from the data evaluation component, the first reports and the second reports.
  • the apparatus is capable of carrying out at least one of the methods described herein.
  • the methods and apparatuses according to the present invention can be used to evaluate data (1) to provide early warnings when there is a high likelihood of a contamination situation arising in the near future, (2) to advise that contamination is present, (3) to advise whether contamination is likely due to an intentional act, and/or (4) to provide other analyses of the system or the data.
  • the data evaluation component takes an initial set of data values (obtained from at least one sensor), and removes all data values which exceed a maximum possible value or which are below a minimum possible value (i.e., to remove incorrect values, e.g., values which can only have been obtained as a result of a sensor error or the like).
  • the data evaluation component preferably determines whether a significant number of the data values in the initial set are outside of an "acceptable" range.
  • the data evaluation component preferably generates a "basic record", which identifies a basic range (preferably within the acceptable range and which preferably encompasses fewer values than the acceptable range) within which a significant number of the data values in the initial set fall.
  • the basic record is thus a baseline for the specific system being analyzed, against which subsequent "current records” can be compared, to help to see whether the data reflects a tendency of trending away from the original condition of the system, and possible movement toward a changed circumstance (and possibly an emergency situation).
  • the data evaluation component preferably receives subsequent sets of data values, and examines whether significant quantities of data values are in specific ranges defined outside of the basic range and/or outside of the acceptable range.
  • the data evaluation component By evaluating the quantity of data values in a variety of such ranges established by the data evaluation component based on the data received, the data evaluation component selects from among different algorithms for generating data information in specific formats (examples of which are described in detail below), each format being useful in evaluating trends in the data values.
  • Fig. 1 is a schematic diagram depicting the structure of an embodiment of an inferencing engine for evaluating data according to an embodiment of the present invention.
  • Fig. 2 is a schematic flowchart depicting an algorithm for determining the segments included in a "final range" in accordance with an embodiment of the present invention.
  • Fig. 3 is a schematic diagram depicting the architecture of a DataAgent component according to an embodiment of the present invention.
  • Fig. 4 is a schematic diagram depicting the architecture of an Arbiter Agent component of an inference engine according to an embodiment of the present invention.
  • a method of evaluating a water sample for the presence of microcystin comprising:
  • one or more data values for at least one of the parameters are evaluated to obtain a reading as to which of a plurality of ranges the value falls within, e.g., a "normal” range, a "high” range or a “low” range.
  • groups of such values e.g., all values within a given time frame
  • the quantity can be evaluated to obtain a reading as to which of the plurality of ranges the quantity (or quantities) falls within.
  • a "reading" for a parameter can be derived in any desired manner, for example, by comparing to a reference value (or values) a single current value or an average of a plurality of recent values, or by any other kind of evaluation (e.g., calculations made when operating in a "tendency mode" as discussed below).
  • raw data incoming from one or more sensors is evaluated and converted to form statistical values.
  • the first step in this process is to establish the framework of analysis by identifying the basic and acceptable ranges of statistical values.
  • An "acceptable range" of statistical values for a water sample can be, e.g., a range of not less than a specific value, a range of not greater than a specific value, or a range of between (and including) minimum and maximum values.
  • the "basic range” (or normal range) of statistical values is typically a range within the acceptable range. The acceptable and/or basic ranges may vary for different water samples.
  • the data evaluation component, the first report generating component, the second report generating component (if present) and the decision-making component (if present) are included on a single computer-readable medium (e.g., a computer-readable medium contained in a single computer or network), but alternatively, the respective components can each be included on different computer-readable media, e.g., different computer-readable media on different computers, processors or devices, or can be included on one or more computer-readable media in any desired combinations.
  • the data evaluation component With respect to a system operating in a tendency mode and which includes a first report generating component, a second report generating component and a decision-making component, the data evaluation component generates data information which includes analyses of the data in specific formats which are preferably sent to the first report generating component, the second report generating component and the decision-making component.
  • the first report generating component generates first reports based on (1) expert information relating to the type of water sample being evaluated and (2) data information received from the data evaluation component.
  • the second report generating component generates second reports based on (1) expert information relating to the type of water sample being evaluated, (2) data information received from the data evaluation component, and (3) information pertaining to the specific water sample (as opposed to the type of system) being evaluated.
  • the second reports may be shifted from the first reports, due to the fact that the second reports factor in information pertaining to the specific water sample, as well as expert information relating to the type of water sample.
  • the data evaluation component takes an initial set of data values, removes all data values which exceed a maximum possible value or which are below a minimum possible value, and preferably determines whether a significant number of the data values in the initial set are outside of an "acceptable" range. If a significant number of the data values in the initial set are within the acceptable range, the data evaluation component preferably generates a "basic record", which identifies a basic range (preferably within the acceptable range and which preferably encompasses fewer values than the acceptable range) within which a significant number of the data values in the initial set fall.
  • the basic record is thus a baseline for the specific water sample being analyzed, against which subsequent "current records” can be compared, to help to see whether the data reflects a trending away from the original condition of the water sample, and possible movement toward a changed circumstance (and possibly an emergency situation).
  • the data evaluation component preferably receives subsequent sets of data values, and examines whether significant quantities of data values are in specific ranges defined outside of the basic range and/or outside of the acceptable range. By evaluating the quantity of data values in a variety of such ranges established by the data evaluation based on the data received, the data evaluation component selects different algorithms for generating data information in specific formats (examples of which are described in detail below), each format being useful in evaluating tendencies in the data values.
  • the first report generating component (as well as the system-specific report generating component and/or the decision-making component, if present) preferably contains arrays and/or networks of logic.
  • the second report generating component includes logic to the effect that where a water sample has a specific condition, (1) the probability that a particular parameter will be higher than a particular upper reference value is a particular value, (2) the probability that such parameter will be not higher than the upper reference value and not less than a particular lower reference value is a second particular value, and (3) the probability that such parameter will be less than the lower reference value is a third particular value.
  • an inference engine When operating in a tendency mode, the device provides tendency mode information as well as real mode information; in the case of an embodiment which operates only in a real mode, the device provides only real mode information.
  • the inference engine of this embodiment includes a data evaluation component, a first report generating component and a decision-making component.
  • the data evaluation component which receives sensor data from at least one sensor for each of a plurality of parameters and which generates data information based on evaluation of the sensor data in the present embodiment is the "DataAgent”; the first report generating component in the present embodiment is the “ReasonNET”; and the decision-making component is the "ArbiterAgent.”
  • ReasonNET is a Bayesian network design which is based on expert information.
  • the inference engine of this example corresponding to this embodiment receives substantially real-time data from sensors, and expert information including basic information about normal values for monitoring statistics.
  • the inference engine may also receive manually entered data (this data component is optional, i.e., the system is able to make decisions when there is no manual data).
  • FIG. 1 The structure of the inference engine according to this example corresponding to this embodiment is depicted in Fig. 1.
  • DataAgent receives information from the sensors, and/or from one or more data files, and places information in specific respective formats for receipt by ReasonNET.
  • DataAgent receives information from sensors, compares it with expert information, and generates a real mode record and a real mode output, hi the real mode, the status is characterized as "normal” if a statistical value is within the acceptable range; the status is characterized as "high” if the statistical value is higher than the maximum value in the acceptable range; and the status is declared “low” if the statistical value is lower than the minimum value in the acceptable range.
  • DataAgent collects information from the sensors during a period of time (every T seconds) and compares it to basic records. Basic records, described below in more detail, function as baseline information for comparing later- obtained data.
  • DataAgent creates current records, decreasing current records and/or increasing current records (described below in more detail). If significant changes occur and a potential problem is detected, then DataAgent creates a status record for ReasonNET, and generates a status/color code record for ArbiterAgent. hi this embodiment, the tendency mode can be turned on or off, but the real mode is always on so that DataAgent always sends real data. The DataAgent processes data every T seconds.
  • a basic record is created with respect to the real-time data received from each of the sensors (i.e., a basic record will be created for each of those parameters.
  • Each of these records includes data set forth in a specific format, discussed in more detail below,
  • a basic image may be created, which includes all of the basic records (e.g., the basic image includes all of the parameters being monitored).
  • the basic image (or one or more basic records) for the water sample can be updated (i.e., replaced with a new basic image generated using current data).
  • MIN/MAX/Low/High/ Acceptable detection routine is performed for each parameter being monitored and/or evaluated.
  • a set of data values is received from the sensor for that parameter.
  • Each data value is the value of the parameter detected by the sensor during a sub-interval (e.g., one second) within an initial time interval (e.g., five minutes).
  • Each sub-interval within the initial time interval is a period of time such that the sub-intervals taken together sequentially comprise an entirety of the initial time interval (e.g., 300 sequential one second sub-intervals within an initial time interval of five minutes).
  • each of the data values (among the set of data values for this parameter) is assigned to one category selected from among categories characterized as "MIN", “Low”, “Acceptable”, “High” and “MAX”.
  • Each data value (i.e., if any) which is less than a minimum possible value is characterized as "MIN”.
  • Each data value which is greater than a maximum possible value is characterized as "MAX”.
  • Each data value which is within an acceptable range of values is characterized as "Acceptable”.
  • Each data value which is greater than or equal to the minimum possible value and less than the lowest value in the acceptable range is characterized as "Low”.
  • Each data value which is less than or equal to the maximum possible value and greater than the highest value in the acceptable range is characterized as "High”.
  • the effect of assigning data values less than a minimum possible value to "MIN" and assigning data values greater than a maximum possible value to "MAX” according to the present embodiment is to eliminate such readings because they are clearly erroneous. This exclusion is done to eliminate data which is clearly incorrect, e.g., due to sensor error.
  • a signal is generated which indicates that the sensor which generated the readings for that parameter should be replaced.
  • "Replace sensor-min” values may differ depending on the particular parameter.
  • the quantity or percentage of data values (from among the set of data values) which are assigned to "MAX” (the “MAX value”) for the parameter exceeds a "replace sensor-max” value, a signal is generated which indicates that the sensor which generated the readings for that parameter should be replaced.
  • "Replace sensor-max” values also may differ depending on the particular parameter.
  • the acceptable range of values described above is defined as a range of values between and including a lowest acceptable value and a highest acceptable value.
  • the lowest acceptable value is a reference value which is considered by experts in the appropriate field to be the minimum normally acceptable value.
  • the highest acceptable value is a reference value which is considered by experts to be the maximum normally acceptable value.
  • the color code indicator is characterized as “red”
  • the status indicator is characterized as “increasing” and another MESf/MAX/Low/High/ Acceptable detection routine is then performed.
  • a basic record creation routine is then performed.
  • the range of values within the "Acceptable" category for the parameter is divided into a number (e.g., 30, 40 or 60) of range segments.
  • the range segments each cover ranges of substantially equal size.
  • a quantity of the data values which fall within the range segment is determined.
  • a range segment having a maximum quantity of the data values is identified and characterized as Rmax.
  • Rmax is assigned to a final range category.
  • a next range segment analysis is performed.
  • a next lower range segment is the range segment having values just below the lowest value within the final range
  • a next higher range segment is the range segment having values just above the highest value in the final range (if all range segments have already been included in the final range, the next range segment analysis is concluded and, as described below, a final range comparison is performed next).
  • next lower range segment has a greater quantity of data values than the quantity of data values in the next higher range segment (or if there are no remaining range segments having values higher than the final range)
  • a determination is made as to whether the next lower range segment has a quantity of data values which is at least a minimum ratio (e.g., 0.7 or any other desired ratio) of the quantity of data values in Rmax; if so, the next lower range segment is added to the final range category and another next range segment analysis is performed next.
  • a minimum ratio e.g., 0.7 or any other desired ratio
  • next lower range segment does not have a greater quantity of data values than the quantity of data values in the next higher range segment (or if there are no remaining range segments having values lower than the final range)
  • a determination is made as to whether the next higher range segment has a quantity of data values which is at least the minimum ratio of the quantity of data values in Rmax; if so, the next higher range segment is added to the final range category and another next range segment analysis is performed next.
  • next lower range segment and the next higher range segment each have a quantity of data values which is less than the minimum ratio of the quantity of data values in Rmax, or if there is no next lower range segment and the next higher range segment has a quantity of data values which is less than the minimum ratio of the quantity of data values in Rmax, or if there is no next higher range segment and the next lower range segment has a quantity of data values which is less than the minimum ratio of the quantity of data values in Rmax, or if all range segments have already been included in the final range, a final range comparison routine is then performed.
  • FIG. 2 An example of an embodiment of an algorithm for determining the segments included in the "final range" is depicted in Fig. 2.
  • the quantity of data values (from among the set of data values) falling within a Low range (the "Low value"), the quantity of data values falling within an X range (the "X value”), the quantity of data values falling within a Y range (the “Y value”), the quantity of data values falling within a Z range (the “Z value”) and the quantity of data values falling within a High range (the "High value”).
  • the Low range includes all values which are not less than the minimum possible value and which are less than the lowest value in the acceptable range.
  • the X range includes all values which are not less than the lowest value in the acceptable range and which are less than the lowest value in the final range.
  • the Y range includes all values which are within the final range.
  • the Z range includes all values which are greater than the highest value in the final range and which are not greater than the highest value in the acceptable range.
  • the High range includes all values which are not greater than the maximum possible value and which are greater than the highest value in the acceptable range.
  • a determination may be made as to the quantity of data values assigned to the "MIN” category (the MIN value) and the quantity of data values assigned to the "MAX” category (the MAX value).
  • Each basic record contains the following components:
  • the parameter's name or identifier e.g., a code or ID number
  • the P-time i.e., the period of time, in seconds, between each time that the parameter is to be detected (preferably, the P-time is input by the user);
  • T-time i.e., the period of time, in seconds, during which values are to be monitored to generate a "current record” (current records are described in detail below);
  • the basic record may also include:
  • a similar basic record is created for each other parameter being detected.
  • the basic records for the different parameters together make up a basic image.
  • Each data value among the fresh set of data values is the value of the parameter detected by the sensor during a sub-interval (e.g., one second) within a current time interval (e.g., one minute).
  • Each current time interval preferably follows immediately after the end of the previous time interval (i.e., immediately after a previous current time interval or, where there have been no previous current time intervals, immediately after the initial time interval).
  • Each sub-interval within a current time interval is a period of time such that the sub-intervals taken together sequentially comprise an entirety of the current time interval (e.g., 60 sequential one second sub-intervals within a current time interval of one minute).
  • the Low value is the quantity of data values within the fresh set of data values which fall within the Low range.
  • the X value is the quantity of data values within the fresh set of data values which fall within the X range.
  • the Y value is the quantity of data values within the fresh set of data values which fall within the Y range.
  • the Z value is the quantity of data values within the fresh set of data values which fall within the Z range.
  • the High value is the quantity of data values within the fresh set of data values which fall within the High range.
  • a determination may be made as to the quantity of data values assigned to the "MIN” category (the MIN value) and the quantity of data values assigned to the "MAX” category (the MAX value).
  • the color code indicator is characterized as "red”
  • the status indicator is characterized as "decreasing” and a decreasing current record creation routine (described below) is then performed.
  • the color code indicator is characterized as "red”
  • the status indicator is characterized as "increasing” and an increasing current record creation routine (described below) is then performed.
  • the color code indicator is characterized as "yellow”
  • the status indicator is characterized as "decreasing” and a decreasing current record creation routine is then performed.
  • the color code indicator is characterized as "yellow”
  • the status indicator is characterized as "increasing” and an increasing current record creation routine is then performed.
  • the color code indicator is characterized as "green”
  • the status indicator is characterized as "normal” and another current record creation routine is performed next.
  • Each current record contains the following components:
  • the current record may also include:
  • the status indicator i.e., "increasing", “decreasing” or “normal” (or corresponding symbols, e.g., “1” for “increasing”, “2” for “decreasing” and “0” for “normal”);
  • the color code indicator i.e., "red”, “orange”, “yellow” or “green” (or corresponding symbols, e.g., “0” for “green”, “1” for “yellow”, “2” for “orange” and “3” for “red”).
  • the current record may also include:
  • Each data value among the new fresh set of data values is the value of the parameter detected by the sensor during a sub- interval (e.g., one second) within a current time interval (e.g., one minute).
  • Each current time interval preferably follows immediately after the end of the previous current time interval.
  • Each sub-interval within a current time interval is a period of time such that the sub-intervals taken together sequentially comprise an entirety of the current time interval (e.g., 60 sequential one second sub-intervals within a current time interval of one minute).
  • the new Low value is the quantity of data values within the new fresh set of data values which fall within the Low range.
  • the Xl value is the quantity of data values within the new fresh set of data values which fall within a first portion of the X range.
  • the X2 value is the quantity of data values within the new fresh set of data values which fall within a second portion of the X range, the second portion of the X range including values which are greater than values in the first portion of the X range.
  • the X3 value is the quantity of data values within the new fresh set of data values which fall within a third portion of the X range, the third portion of the X range including values which are greater than values in the second portion of the X range, hi a preferred representative example, the third portion of the X range is the highest approximately 50% of the values within the X range, the first portion of the X range is the lowest approximately 30% of the values within the X range, and the second portion of the X range is the remaining approximately 20% of the values within the X range.
  • the new Y value is the quantity of data values within the new fresh set of data values which fall within the Y range.
  • the new Z value is the quantity of data values within the new fresh set of data values which fall within the Z range.
  • the new High value is the quantity of data values within the new fresh set of data values which fall within the High range.
  • a determination may be made as to the quantity of data values in the new fresh set of data values assigned to the "MIN" category (the MIN value) and the quantity of data values in the new fresh set of data values assigned to the "MAX” category (the MAX value).
  • the color code indicator is characterized as "red”
  • the status indicator is characterized as "increasing” and an increasing current record creation routine is performed next.
  • the color code indicator is characterized as "red”
  • the status indicator is characterized as "decreasing” and another decreasing current record creation routine is performed next.
  • the color code indicator is characterized as "yellow”
  • the status indicator is characterized as "increasing” and an increasing current record creation routine is performed next.
  • the color code indicator is characterized as "orange”
  • the status indicator is characterized as "decreasing” and another decreasing current record creation routine is performed next.
  • the color code indicator is characterized as "yellow”
  • the status indicator is characterized as "decreasing” and another decreasing current record creation routine is performed next.
  • the color code indicator is characterized as "yellow”
  • the status indicator is characterized as "decreasing” and another decreasing current record creation routine is performed next.
  • the color code indicator is characterized as "green”, the status indicator is characterized as "normal” and another current record creation routine is performed next.
  • Each decreasing current record contains the following components:
  • the parameter's name e.g., heart rate
  • identifier e.g., a code or ID number
  • the decreasing current record may also include:
  • the status indicator i.e., "increasing", “decreasing” or “normal” (or corresponding symbols, e.g., “1” for “increasing, “2” for “decreasing” and “0” for “normal”);
  • the color code indicator i.e., "red”, “orange”, “yellow” or “green” (or corresponding symbols, e.g., “0” for “green”, “1” for “yellow”, “2” for “orange” and “3” for “red”).
  • the decreasing current record may also include:
  • a current fresh set of data values for the parameter is received from the sensor for that parameter.
  • Each data value among the current fresh set of data values is the value of the parameter detected by the sensor during a sub-interval (e.g., one second) within a current time interval (e.g., one minute).
  • Each current time interval preferably follows immediately after the end of the previous current time interval.
  • Each sub-interval within a current time interval is a period of time such that the sub- intervals taken together sequentially comprise an entirety of the current time interval (e.g., 60 sequential one second sub-intervals within a current time interval of one minute). Then, a current Low value, a current X value, a current Y value, a Zl value, a Z2 value, a Z3 value and a current High value are determined.
  • the current Low value is the quantity of data values within the current fresh set of data values which fall within the Low range.
  • the current X value is the quantity of data values within the current fresh set of data values which fall within the X range.
  • the current Y value is the quantity of data values within the current fresh set of data values which fall within the Y range.
  • the Zl value is the quantity of data values within the current fresh set of data values which fall within a first portion of the Z range.
  • the Z2 value is the quantity of data values within the current fresh set of data values which fall within a second portion of the Z range, the second portion of the Z range including values which are greater than values in the first portion of the Z range.
  • the Z3 value is the quantity of data values within the current fresh set of data values which fall within a third portion of the Z range, the third portion of the Z range including values which are greater than values in the second portion of the Z range.
  • the first portion of the Z range is the lowest approximately 50% of the values within the Z range
  • the third portion of the Z range is the highest approximately 30% of the values within the Z range
  • the second portion of the Z range is the remaining approximately 20% of the values within the Z range.
  • the current High value is the quantity of data values within the current fresh set of data values which fall within the High range.
  • a determination may be made as to the quantity of data values assigned to the "MIN” category (the MEN value) and the quantity of data values assigned to the "MAX” category (the MAX value).
  • the color code indicator is characterized as "red”
  • the status indicator is characterized as "decreasing” and a decreasing current record creation routine is performed next.
  • the color code indicator is characterized as "red”
  • the status indicator is characterized as "increasing” and another increasing current record creation routine is performed next.
  • the color code indicator is characterized as "yellow”
  • the status indicator is characterized as "decreasing” and a decreasing current record creation routine is performed next.
  • the color code indicator is characterized as "orange”
  • the status indicator is characterized as "increasing” and another increasing current record creation routine is performed next.
  • the color code indicator is characterized as "yellow”
  • the status indicator is characterized as "increasing” and another increasing current record creation routine is performed next.
  • the color code indicator is characterized as "yellow”
  • the status indicator is characterized as "increasing” and another increasing current record creation routine is performed next.
  • the color code indicator is characterized as "green”, the status indicator is characterized as "normal” and another current record creation routine is performed next.
  • Each increasing current record contains the following components:
  • the parameter's name e.g., heart rate
  • identifier e.g., a code or ID number
  • the increasing current record may also include:
  • the status indicator i.e., "increasing", “decreasing” or “normal” (or corresponding symbols, e.g., “1” for “increasing, “2” for “decreasing” and “0” for “normal”);
  • the color code indicator i.e., "red”, “orange”, “yellow” or “green” (or corresponding symbols, e.g., “0” for “green”, “1” for “yellow”, “2” for “orange” and “3” for “red”).
  • the increasing record may also include:
  • the embodiment proceeds in the event that two or more values are equal (e.g., in the event that the X value and the Z value are equal, according to the discussion of the embodiment set forth above, the Z value controls, i.e., the status indicator is characterized as "increasing" and an increasing current record creation routine is performed next).
  • the hierarchy as to which value controls in situations where any two or more values are equal can be set up in any other way (e.g., in the event that the X value and the Z value are equal, the X value can control, i.e., such that the status indicator would be characterized as "decreasing” and a decreasing current record creation routine would be performed next).
  • the X value can control, i.e., such that the status indicator would be characterized as "decreasing” and a decreasing current record creation routine would be performed next.
  • any or all types of current records i.e., including "current records”, “decreasing current records” and “increasing current records”
  • the previous current record, decreasing current record or increasing current record can optionally be discarded.
  • the second embodiment is similar to the first embodiment described above, except that:
  • the status indicator is characterized as "decreasing"
  • the third portion of the X range is increased to include all values which were within the second portion of the X range as well as all values which were within the third portion of the X range
  • the first portion of the X range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the first portion of the X range, the second part becoming the second portion of the X range, and (4) another decreasing current record creation routine is performed next;
  • the status indicator is characterized as "decreasing”
  • the third portion of the X range is increased to include all values which were within the second portion of the X range as well as all values which were within the third portion of the X range
  • the first portion of the X range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the first portion of the X range, the second part becoming the second portion of the X range, and (4) another decreasing current record creation routine is performed next; if the X3 value is greater than or equal to the new Low value, greater than or equal to the new High value, greater than or equal to the X2 value, greater than or equal to the Xl value, greater than or equal to the new Z value, and
  • the status indicator is characterized as "increasing"
  • the first portion of the Z range is increased to include all values which were within the second portion of the Z range as well as all values which were within the first portion of the Z range
  • the third portion of the Z range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the second portion of the Z range, the second part becoming the third portion of the Z range, and (4) another increasing current record creation routine is performed next;
  • the status indicator is characterized as "increasing"
  • the first portion of the Z range is increased to include all values which were within the second portion of the Z range as well as all values which were within the first portion of the Z range
  • the third portion of the Z range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the second portion of the Z range, the second part becoming the third portion of the Z range, and (4) another increasing current record creation routine is performed next;
  • the status indicator is characterized as "increasing"
  • the third portion of the Z range is increased to include all values which were within the second portion of the Z range as well as all values which were within the third portion of the Z range
  • the first portion of the Z range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the first portion of the Z range, the second part becoming the second portion of the Z range, and (4) another increasing current record creation routine is performed next.
  • the color code indicator is preferably characterized in other situations, i.e., including: when the Xl value is greater than or equal to the new Low value, greater than or equal to the new High value and greater than or equal to the new Z value, and is greater than each of the X3 value, the X2 value and the new Y value,
  • the color code indicator is preferably characterized in other situations, i.e., including:
  • the color code indicator is characterized based on the new fresh set of data values by further:
  • the new X value being a quantity of data values within the new fresh set of data values which fall within the X range
  • the status indicator is characterized as "decreasing” and the new X value is greater than the new Low value, the new Y value, the new Z value and the new High value, characterizing the color code indicator as "yellow”, and
  • the status indicator is characterized as "increasing” and the new Z value is greater than the new Low value, the new X value, the new Y value and the new High value, characterizing the color code indicator as "yellow";
  • the color code indicator is characterized based on the current fresh set of data values by further: -determining a component Z value, the component Z value being a quantity of data values within the component fresh set of data values which fall within the Z range;
  • the status indicator is characterized as "decreasing” and the component X value is greater than the component Low value, the component Y value, the component Z value and the component High value, characterizing the color code indicator as "yellow”, and
  • the status indicator is characterized as "increasing” and the component Z value is greater than the component Low value, the component X value, the component Y value and the component High value, characterizing the color code indicator as "yellow”.
  • the color code indicator is characterized based on the new fresh set of data values by further:
  • the color code indicator is characterized based on the current fresh set of data values by further:
  • the Z3 value is greater than the current Low value, the current X value, the current Y value and the current High value, and is not less than the Zl value and the Z2 value, characterizing the color code indicator as "orange".
  • DataAgent provides the option of automatically updating the basic record for a particular parameter when the color code indicator for that parameter has been yellow for a particular number of consecutive times (e.g., 30 times), which number may vary depending on the particular parameter, and/or when the color code indicator for that parameter has been orange for a particular number of consecutive times (which number may vary depending on the particular parameter).
  • a particular number of consecutive times e.g. 30 times
  • the color code indicator for that parameter has been orange for a particular number of consecutive times (which number may vary depending on the particular parameter).
  • the number of consecutive times which prompts the basic record to be updated can differ depending on whether the yellow or orange color code is caused by elevated values (i.e., where the status indicator is "increasing") or depressed values (i.e., where the status indicator is "decreasing"), hi order to update the basic record, the basic record creation subroutine is performed using fresh data from the sensor or sensors.
  • DataAgent provides the option of automatically updating the basic record for a particular parameter when the values for that parameter have been within a range of a particular size (i.e., in which the highest value differs from the lowest value by not more than a particular amount), such that the basic range (and/or the acceptable range) can be modified so as to encompass such values.
  • the basic range can be modified so as to encompass such values.
  • the acceptable range for a parameter is, e.g., from 60 to 100, and the water sample values have consistently been about 103
  • the acceptable range and the basic range for that parameter for the water sample can be set such that they encompass a value of 103.
  • DataAgent also creates a temporary record.
  • the temporary record which is created is a decreasing temporary record.
  • a decreasing temporary record includes the parameter's name or identifier (e.g., a code or DD number), an N value, the Xl value, the X2 value, the X3 value and a C value.
  • the Xl value, the X2 value and the X3 value are the same as those described above in connection with the decreasing current record creation routine.
  • the N value is equal to the new Low value determined in the decreasing current record creation routine.
  • the C value is equal to the sum of the new Y value, the new Z value and the new High value determined in the decreasing current record creation routine.
  • the temporary record which is created is an increasing temporary record.
  • An increasing temporary record includes the parameter's name or identifier (e.g., a code or ID number), an N value, the Zl value, the Z2 value, the Z3 value and a C value.
  • the Zl value, the Z2 value and the Z3 value are the same as those described above in connection with the increasing current record creation routine.
  • the N value is equal to the sum of the new Low value, the new X value and the new Y value determined in the increasing current record creation routine, hi an increasing temporary record, the C value is equal to the new High value determined in the increasing current record creation routine.
  • any and all temporary records are discarded.
  • DataAgent also generates a real mode record.
  • the real mode record for a particular parameter includes a reading ("high”, "normal” or “low”, and/or an identifier which signifies one of such readings, e.g., 0 for normal, 1 for high or increased and 2 for low or decreased), a color code, as well as the parameter's name or identifier (e.g., a code or ID number). If the color code indicator for a parameter is red and the status is "increasing", the parameter is given a "high” reading, and the color code is red.
  • the parameter is given a "low” reading, and the color code is red. Otherwise (i.e., if the color code indicator is green, yellow or orange), the parameter is given a "normal” reading, and the color code is green.
  • the real mode record is sent to ArbiterAgent, preferably along with a mode value indicating that it is a real mode record.
  • DataAgent preferably also generates a real mode output which is preferably sent to ReasonNET, the real mode output preferably including the parameter's name or identifier and the reading ("high”, “low” or “normal”-determined in the same way as described above with regard to the real mode record).
  • DataAgent preferably also generates a status/color code record.
  • the status/color code record for a particular parameter preferably includes a status value ("increasing", “decreasing” or "normal"), as well as the color code indicator (green, yellow, orange or red) and the parameter's name or identifier.
  • the status/color code record is sent to ArbiterAgent (preferably along with a tendency mode value indicating that it is a tendency mode reading).
  • a first status record includes (1) the parameter's name or identifier, and (2) a reading of "normal” if the color code indicator is green or yellow, a reading of "high” if the color code indicator is orange or red and the status is "increasing", or a reading of "low” if the color code indicator is orange or red and the status is "decreasing”.
  • the first status record is preferably used by ReasonNET to generate "orange" reports.
  • a second status record includes (1) the parameter's name or identifier, and (2) a reading of "normal” if the color code indicator is green, a reading of "high” if the color code indicator is yellow, orange or red and the status is “increasing", or a reading of "low” if the color code indicator is yellow, orange or red and the status is "decreasing”.
  • the second status record is preferably used by ReasonNET to generate "yellow" reports.
  • the parameter When operating in an "orange” mode, the parameter can be considered to be:
  • the parameter when operating in a "yellow” mode, the parameter can be considered to be: -"high” if the color code indicator is yellow, orange or red and the status is "increasing";
  • the color codes can be interpreted as follows:
  • Green - normal mode values are real (the data is not from tendency mode) and they are in a normal range
  • a tracking record can optionally be produced.
  • a tracking record can include information as to the sequence of the ranges over time which had the maximum quantity of data values.
  • a tracking record might read "Y range, Y range, Y range, Y range, Z range, Z range, Z range, Z range, Zl range, Z2 range, Z2 range, Z2 range, Z2 range, Z2 range, Z2 range, Z2 range, Z2 range, Z2 range, Zl range, Zl range, Zl range, Z2 range, Z2 range, Z2 range, Z3 range, Z3 range, Z3 range, High range, High range, High range, Z3 range, Z3 range, Z2 range, Z2 range, Zl range, Zl range, Y range, Y range, Y range, Y range, Y range, Y range, Y range, Y range, Y range, etc.”
  • the tracking record can include any other information, e.g., the quantity of data values in the range which had the maximum quantity of data values, and/or the quantity of data values in any other or all of the ranges.
  • the ReasonNET component of the inference engine is designed based on experts' knowledge of water bodies of the type being evaluated or monitored.
  • expert data can include information based on existing knowledge and preferably the use of a Bayesian network frame.
  • Input to ReasonNET can be in the form of expert data contained in a case file or a separate formatted case.
  • ReasonNET receives and evaluates the expert data, as well as real mode outputs and status records generated by DataAgent to generate expert reports, which show probabilities of a number of possible conditions.
  • ReasonNET might be influenced by a combination of parameter readings which is highly indicative of a particular condition existing to generate an appropriately high probability as to whether that condition exists.
  • ReasonNET sends the expert reports to ArbiterAgent.
  • each parameter or condition has associated with it a table of values, and the table can further include one or more columns which each indicate whether a particular condition exists, and a plurality of probability columns.
  • Each row of each probability column indicates the probability that the parameter or condition to which the table applies will fall within a corresponding range (for example, the ranges can include "high”, "normal”, and "low") for that column when the condition or each of the conditions in that row are either present or not present as indicated by the responses in the respective columns.
  • condition X a parameter which is linked to condition X and to condition Y (i.e., in a Bayesian format, an arrow extends from condition X to the parameter and an arrow extends from condition Y to the parameter):
  • Data Agent can provide information as to whether any particular parameter (e.g., heart rate) is within any particular range, e.g., "high", "normal” and "low".
  • Fig. 5 depicts a Bayesian network format in accordance with the first aspect of the present invention.
  • Fig. 6 depicts a Bayesian network format in accordance with the second aspect of the present invention.
  • the ArbiterAgent of the embodiments described above makes decisions based on real mode records and status/color code records from said DataAgent and expert reports (from ReasonNET).
  • Fig. 4 depicts architecture of the ArbiterAgent according to the embodiments described above.
  • ArbiterAgent makes a final decision regarding each possible condition based on reports from ReasonNET and the real mode records received from DataAgent.
  • a separate method of decision-making may be included in ArbiterAgent for each type of condition. These methods are based on expert information, and are preferably adjusted as more experience is gained.
  • a summary of probabilities for all readings is preferably considered before an alarm is requested.
  • the severity of the problem may be increasing and an alarm may therefore be required.
  • an alarm may be required once and a report indicating the problem can be generated continuously - but no further alarm is required.
  • the ReasonNET component of each of the embodiments described above are Bayesian networks (which are conventionally known learning networks), either or both of these components can instead be any other learning network, e.g., a virtual vector machine, a neural network, a discrimination function, a decision tree, an expectation-maximization on mixtures of Gaussians, a probability distribution function (PDF), estimation through moment computation, PDF estimation through histograms, etc.
  • a virtual vector machine e.g., a virtual vector machine, a neural network, a discrimination function, a decision tree, an expectation-maximization on mixtures of Gaussians, a probability distribution function (PDF), estimation through moment computation, PDF estimation through histograms, etc.
  • PDF probability distribution function
  • the basic records, current records, decreasing current records, increasing current records, status/color code records, status records, real mode records and real mode outputs described above include specific data in specific respective formats, the types of data contained in each record and/or image can vary and can be in any desired format.
  • time interval over which data is collected (and/or sub-intervals reflecting the period of time between each piece of data for a sensor) for generating a basic record can be selected from among a wide range of time periods, and/or can differ from one another for different parameters.
  • the duration of time over which data is collected (and/or sub-intervals reflecting the period of time between each piece of data for a sensor) for generating current records, decreasing current records or increasing current records can be selected from among a wide range of time periods and/or can differ from one another.
  • data e.g., status, color code and/or readings
  • DataAgent can send ReasonNET a status/color code record which is similar to the status/color code record sent to Arbiter Agent).
  • the number of range segments can be selected from among a wide range of quantities; in addition, it is not necessary that each of the segments have an equal range from lowest value to highest value.
  • the "minimum ratio" used in the basic record creation routine (i.e., the "minimum ratio of the quantity of data values in Rmax") can be selected from within a wide range of quantities.
  • the percentages used in the decreasing current record creation routine i.e., 30% for the first portion, 20% for the second portion and 50% for the third portion
  • the increasing current record creation routine i.e., 50% for the first portion, 20% for the second portion and 30% for the third portion
  • the number of consecutive times for the color code to be yellow or the number of consecutive times for the color code to be orange for the option of automatically updating the basic record can be selected from among a wide range of values.
  • Any two or more functions can be conducted simultaneously, and/or any function can be conducted in a series of steps.

Landscapes

  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Chemical & Material Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Food Science & Technology (AREA)
  • Medicinal Chemistry (AREA)
  • Physics & Mathematics (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Investigating Or Analysing Biological Materials (AREA)

Abstract

The system for evaluating water samples with steps for measuring and obtaining the water data values and measuring the parameters using the sensors (1) for a plurality of water quality parameters, and providing the computations and obtaining the evaluations to determine the specific water conditions and estimating the specific water quality problems obtained from the water samples using the measurements and the (data agent) and providing estimates on the specific problems based on the measured data values and equations with the apparatus and sensors for carrying out the evaluation and estimations for the water quality.

Description

METHODS AND APPARATUSES FOR EVALUATING WATER SAMPLES
Cross-reference to Related Applications
This application claims the benefit of U.S. Provisional Patent Application No. 60/663,793, filed March 21, 2005, the entirety of which is incorporated herein by reference.
Field of the Invention
The present invention relates to apparatus and methods for evaluating water samples. More particularly, the present invention is directed to apparatuses and methods for estimating the likelihood that one or more specific conditions exist (or will exist in the future) in water samples. The present invention also relates to apparatuses and methods for predicting, as early as possible, emergencies or other situations which require action.
Background of the Invention
It is well known that water supplies which are safe for drinking and for other uses are critical to the functioning of our society. There are a wide variety of potential sources of contamination of such water supplies, including naturally-occurring phenomena, accidental contamination and intentional sabotage, e.g., terrorism. Such sources of contamination can be limited, but there is no way to ensure that contamination will never occur-in short, water supplies have become contaminated and will continue to do so.
There is an ongoing need for reliable, inexpensive and accurate (i.e., which reliably detect problems while minimizing false positive reports) methods and apparatuses to detect whether water supplies have become contaminated. In addition, it would be desirable to be able to provide methods and apparatuses which can accurately assign a probability to whether a contamination resulted from an intentional act.
Brief Summary of the Invention
The present invention provides methods and apparatuses for estimating the likelihood that a particular water condition exists and/or estimating the likelihood that a particular water condition will exist in the near future. The methods and apparatuses of the present invention can, if desired, be capable of making such estimations for a plurality of water conditions. The methods and apparatuses of the present invention preferably can also provide an estimation as to whether a particular water condition arose as a result of a deliberate act (e.g., terrorism or sabotage).
Methods according to the present invention comprise evaluating at least one parameter of a water sample and/or sensing (or determining, e.g., by a sensor or by a user) whether one or more conditions exist in a water sample or body of water. The expression "water sample" as used herein refers to one of a plurality of successive water samples taken from or remaining within a body of water (e.g., a river, a lake, an ocean, a reservoir, a water treatment facility, a canal, a swimming pool, an aquarium, a reflecting pool, etc.), and/or to a specific volume of water (e.g., contained within a beaker), which may have been obtained from any possible source. In some cases, the condition(s) for which the method or apparatus of the invention is testing (i.e., estimating the likelihood that the condition exists or will exist) is among the conditions (if any) being sensed or determined, in which case the method or apparatus can serve either to tend to confirm the result or to raise doubt as to the result of such sensing or determining.
Each parameter being evaluated is measured, e.g., with a sensor, and a determination is made as to the current "reading" for the parameter. The "reading" can be selected from any suitable group of choices, e.g., the group of choices might consist of "high", "normal" and "low". Reference herein to "high", "normal" and "low" readings is exemplary only, and any number of readings or type or readings can be used according to the present invention. A "reading" for a parameter can be derived in any desired manner. For example, in some cases, a reading is derived by comparing a current value for the parameter to a reference value (or values) or to an average of a plurality of recent values, or by any other kind of evaluation (e.g., calculations made when operating in a "tendency mode" as discussed below).
Each condition being sensed or determined (if any) is characterized as existing or not existing (although in some cases, the results might be characterized as being ambiguous). For example, the fact that a condition is sensed to exist can be characterized as the condition being "true" and the fact that a condition is sensed to not exist can be characterized as the condition being "false". A condition can be sensed as existing or not existing through the use of a device (e.g., a sensor which senses whether there is a statistically significant detection of a material, such as a contaminant) or without the use of a device (e.g., whether or not a user can detect a particular smell, such as a foul odor, or based on detection by a user's sight, taste, hearing or sense of touch).
Based on the readings of the parameter(s) being evaluated and/or the current existence or non-existence of any conditions being sensed or determined, a method or apparatus according to the present invention makes estimations as to the likelihood that a particular water condition (or conditions) exists and/or estimates the likelihood that a particular water condition (or conditions) will exist in the near future.
Each parameter which is being evaluated is linked to one or more conditions. Where a particular parameter is linked to only a single condition, the apparatus will include values for the probabilities for each reading to occur (e.g., the parameter value is "high", the parameter value is "normal" or the parameter value is "low") where the condition is sensed to exist, and values for the probabilities for each reading to occur where the condition is sensed to not exist. As a hypothetical example, where only a single condition is linked to a parameter, (1) where the condition exists, the probability of a "high" reading might be 0.95, the probability of a "normal" reading might be 0.04 and the probability of a "low" reading might be 0.01, and (2) where the condition does not exist, the probability of a "high" reading might be 0.15, the probability of a "normal" reading might be 0.80 and the probability of a "low" reading might be 0.05.
Where a particular parameter is linked to two or more conditions, there are 2n possible combinations of results as to whether the respective conditions are sensed, where n is the number of conditions. For example, where there are two conditions linked to a parameter, there are 22 (i.e., 4) possible combinations of results as to whether the respective conditions are sensed, namely, first and second conditions both sensed ("true-true" or "TT"), first condition sensed and second condition not sensed ("true- false" or "TF"), first condition not sensed and second condition sensed ("false-true" or "FT"), and neither first nor second condition sensed ("false-false" or "FF"). For each possible combination of results as to whether the respective conditions are sensed, the apparatus will include values for the probabilities for each reading to occur (e.g., the parameter value is "high", the parameter value is "normal" or the parameter value is "low"). Accordingly, where there are two conditions linked to a parameter), the apparatus will include: (1) for the combination "TT", the probability of a "high" reading for the parameter, the probability of a "normal" reading for the parameter and the probability of a "low" reading for the parameter; (2) for the combination "TF", the probability of a "high" reading for the parameter, the probability of a "normal" reading for the parameter and the probability of a "low" reading for the parameter; (3) for the combination "FT", the probability of a "high" reading for the parameter, the probability of a "normal" reading for the parameter and the probability of a "low" reading for the parameter; and (4) for the combination "FF", the probability of a "high" reading for the parameter, the probability of a "normal" reading for the parameter, and the probability of a "low" reading for the parameter.
Likewise, where a parameter is linked to three conditions and where the parameter has three possible readings, there will be twenty-four probability values. That is, there will be three probability values (one for each of the three possible readings) for each of the eight different possible combinations of results as to whether the respective conditions are sensed (TTT, TTF, TFT, TFF, FTT, FTF, FFT and FFF. Similarly, where a parameter is linked to four conditions (and where the parameter has three possible readings), there will be forty- eight probability values (three probability values for each of the sixteen different possible combinations of results as to whether the respective conditions are sensed (TTTT, TTTF, TTFT, TTFF, TFTT, TFTF, TFFT, TFFF, FTTT, FTTF, FTFT, FTFF, FFTT, FFTF, FFFT and FFFF, and analogously where a parameter is linked to more conditions.
In such a way, each parameter being monitored is linked to a quantity of conditions, and for each combination of results as to whether the respective conditions are sensed, values for the probabilities of each reading for the parameter are stored.
Analogously, conditions can be linked to one or more parameters and/or one or more other conditions (one of which can be detection of that same condition, i.e., a particular condition can be linked to detection of such particular condition).
As noted above, the reference above to only three readings, namely, "high", "normal" and "low" is exemplary only, and any number of readings or type or readings for each parameter can be used according to the present invention (and different parameters can have different possible groups of readings).
The bases for making the estimations made by the methods and apparatus of the present invention can optionally also include, for any condition(s) being evaluated, the probability that such condition will naturally exist in the water sample. The methods and apparatus of the present invention are not limited to any particular number of parameters being measured and/or any particular number of conditions being evaluated. Likewise, the methods and apparatus of the present invention are not limited to any particular degree of interrelation among the parameters being measured and/or the conditions being evaluated. For example, it would be readily apparent to those of skill in the art that there are situations where a high value for a particular parameter can be expected when any of a number of conditions exist in the water sample. Likewise, it would be readily apparent to those of skill in the art that there are situations where, for example, a high value for a first parameter, combined with a low value for a second parameter, is very unlikely to occur unless the particular condition being tested for exists in the water sample (or that such a combination of levels of such parameters makes it extremely likely that the particular condition will arise in the future)-in such a situation, the estimation that such condition exists (or will arise in the future) would be appropriately high.
The parameters and conditions employed by the methods according to the present invention, and the linking between parameters and conditions can be developed by obtaining, for one or more parameters, data regarding values of such parameter when a particular condition exists and values of such parameter when such condition does not exist, and/or data regarding values of such parameter when specific combinations of results as to whether the particular conditions are sensed. Decisions are made as to whether a parameter will be linked to a particular condition or combination of conditions based on whether the probabilities of different readings for the parameter differ substantially based on whether the condition exists or differ substantially based on the combination of conditions which exist (or do not exist). For example, where the data shows that there is a high probability that the parameter will be "high" when the condition exists and a low probability that the parameter will be "high" when the condition does not exist, detecting that the parameter is "high" is indicative that the condition exists. Similarly, where the data shows that there is a high probability that the parameter will be "low" when there is a particular combination of responses as to whether specific conditions exist (e.g., condition 1 true; condition 2 false; condition 3 true, or condition 1 false; condition 2 false, condition 3 false), and a low probability that the parameter will be "low" when any other combination of responses as to whether specific conditions exist, detecting that the parameter is "low" is indicative that the particular combination of conditions exist.
Based on such analyses, a chart is preferably developed in which specific parameters are each linked to one or more specific conditions (and specific conditions are linked to at least one specific parameter and/or at least one other condition) to provide a logic system. After developing such a logic system, the accuracy of the logic system is preferably tested by applying it to samples for which the existence or non-existence of specific conditions is known.
In accordance with a first aspect of the present invention, there is provided a chart in which:
the presence of microcystin is the condition under investigation;
the condition of cyanobacteria presence and the condition of detected microcystin presence (by a biological sensor) are linked to the condition of microcystin presence;
pH, turbidity, dissolved oxygen, temperature and chlorophyll parameters are linked to the condition of cyanobacteria presence;
the condition of sunlight presence is linked to the parameter chlorophyll;
temperature, chlorophyll, turbidity and dissolved oxygen parameters are linked to the condition of presence of bloom other than cyanobacteria;
the condition of wind presence is linked to the condition of presence of bloom other than cyanobacteria and to the condition of cyanobacteria presence;
temperature, turbidity and dissolved oxygen parameters are linked to the condition of presence of a bacterial problem;
the condition of E-coli presence and the condition of presence of bacteria other than cyanobacteria are linked to the condition of presence of a bacterial problem; the condition of detected E-coli (by an E-coli sensor) is linked to the condition of E- coli presence; and
the condition of presence of cyanobacteria is linked to the condition of presence of toxin other than microcystin or no toxin presence.
hi accordance with a second aspect of the present invention, there is provided a chart h:
the presence of gasoline is the condition under investigation;
the condition of detected benzene presence (by a chemical sensor) is linked to the condition of presence of benzene;
the condition of detected MTBE (methyl tertiary butyl ether) presence (by a chemical sensor) is linked to the condition of presence of MTBE;
the condition of detected paraxylene presence (by a chemical sensor) is linked to the condition of presence of paraxylene;
the condition of detected metaxylene presence (by a chemical sensor) is linked to the condition of presence of metaxylene;
the condition of detected orthoxylene presence (by a chemical sensor) is linked to the condition of presence of orthoxylene;
the condition of detected toluene presence (by a chemical sensor) is linked to the condition of presence of toluene; and
the conditions of presence of benzene, presence of MTBE, presence of paraxylene, presence of metaxylene, presence of orthoxylene and presence of toluene are linked to the condition of presence of gasoline.
In accordance with preferred aspects of the present invention, one of the charts described above is implemented in a Bayesian network (or each of the two charts is implemented in a separate Bayesian network).
As noted above, based on the readings of the parameter(s) being evaluated and/or the current existence or non-existence of any conditions being sensed or determined, a method or apparatus according to the present invention makes estimations as to the likelihood that a particular water condition (or conditions) under investigation exists and/or estimates the likelihood that a particular water condition (or conditions) will exist in the near future. The accuracy of these estimations result from the analysis as to the likelihood that the readings of the parameter(s) would be as they are detected when the condition under investigation exists, and/or the likelihood that the condition (or conditions) would be sensed when the condition under investigation exists. For example, detecting a "high" reading for a parameter would result in an increase in the estimated probability that the condition under investigation exists where the stored probability for a "high" reading for that parameter is very low when the condition under investigation does not exist and the stored probability for a "high" reading for that parameter is very high when the condition under investigation exists.
As mentioned above, the methods and apparatuses of the present invention preferably also provide an estimation as to whether a particular water condition arose as a result of a deliberate act (e.g., terrorism or sabotage), hi such cases, the deliberate act aspect is treated in a manner similar to a water condition, i.e., one or more parameters are linked (as described above) to it, and/or in some cases it is itself sensed (e.g., did someone report seeing sabotage?). For example, where a contamination occurs as a result of sabotage, in some cases there is a tendency for a particular parameter to exhibit a particular reading, whereas when such contamination occurs naturally, there is a tendency for such parameter to exhibit a different reading. In addition, in some cases, the probability that a particular condition arose as a result of sabotage is heightened where the reading (or values) for a particular parameter changed abruptly, in view of knowledge that where such condition arises as a result of natural causes, the reading (or values) for such parameter changes much more slowly. In addition, in some instances, there are other characteristics in conditions and/or parameters which are expected where a contamination occurs as a result of an accident which do not occur where the contamination occurs as a result of sabotage.
In accordance with a third aspect of the present invention, there is provided a method of evaluating a water sample for the presence of microcystin, comprising:
-obtaining at least a first data value of pH of the water sample from a pH sensor;
-obtaining at least a first data value of turbidity of the water sample from a turbidity sensor;
-obtaining at least a first data value of dissolved oxygen of the water sample from a dissolved oxygen sensor;
-obtaining at least a first data value of temperature of the water sample from a temperature sensor;
-obtaining at least a first data value of chlorophyll of the water sample from a chlorophyll sensor;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of cyanobacteria;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of microcystin;
-obtaining at least a first evaluation of whether the water sample is being subjected to sunlight;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of bloom other than cyanobacteria;
-obtaining at least a first evaluation of whether the water sample is being subjected to wind;
-obtaining at least a first evaluation of whether the water sample has a bacterial problem;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of E-coli;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of bacteria other than cyanobacteria; and
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of toxin other than microcystin or substantially no toxin presence; and -estimating a likelihood that the water sample contains microcystin or will contain microcystin, based on at least the first data values and the first evaluations.
Preferably, in the third aspect of the present invention, the estimation is based on the results of determining which of a plurality of data value ranges for the first parameter each of the first data values or first data quantities (each first data quantity being calculated based on a plurality of data values obtained from the corresponding sensor, e.g. an average of such values) falls within (e.g., for each parameter, whether the first data value or first data quantity is or is not greater than a reference value for such parameter, or within which of three or more ranges, such as "low", "normal" and "high" the first data value or first data quantity falls.
Optionally, in the third aspect of the present invention, the estimation is based on the results of analyzing the data values according to one of a number of processes (described in more detail below) which involve not only analyzing how the values relate to reference values or ranges, but also analyzing the tendencies of changes in the values.
Preferably, the method is computer-implemented.
In accordance with a fourth aspect of the present invention, there is provided a method of evaluating a water sample for the presence of gasoline, comprising:
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of benzene from a chemical sensor;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of MTBE from a chemical sensor;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of paraxylene from a chemical sensor;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of metaxylene from a chemical sensor;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of orthoxylene from a chemical sensor;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of toluene from a chemical sensor; and
-estimating a likelihood that the water sample contains gasoline, based on at least the first evaluations.
Preferably, the method is computer-implemented. In accordance with fifth and sixth aspects of the present invention, there are provided apparatuses which comprise: a plurality of sensors for detecting values of the parameters and/or conditions discussed above in connection with the third and fourth aspects of the present invention, respectively; a data evaluation component which receives sensor data from the plurality of sensors and which generates data information based on evaluation of the sensor data; and at least a first report generating component which receives data information from the data evaluation component and expert information, and which generates first reports based on the expert information and the data information.
Preferably, the apparatus further comprises a second report generating component which receives information pertaining to the water sample or a body of water from which the water sample was taken, and expert information, and which generates second reports based on the expert information, the information pertaining to the water sample or the body of water and data information received from the data evaluation component. The result is that the second reports may be shifted from the first reports as a result of the information regarding the specific water sample or the body of water. For example, the information pertaining to the water sample or the body of water can include information as to reference values for the water sample or the body of water which differ from "normal" reference values for water (e.g., if it is observed over time that a particular parameter is generally higher than normal, and that such higher values are not indicative of any changes in the combination of conditions which exist, the ranges of values which are characterized as "low", "normal" and "high" can be adjusted appropriately in the second report-generating component).
Preferably, the apparatus further comprises a decision-making component which makes decisions based on data information from the data evaluation component, the first reports and the second reports.
Preferably, the apparatus is capable of carrying out at least one of the methods described herein.
The methods and apparatuses according to the present invention can be used to evaluate data (1) to provide early warnings when there is a high likelihood of a contamination situation arising in the near future, (2) to advise that contamination is present, (3) to advise whether contamination is likely due to an intentional act, and/or (4) to provide other analyses of the system or the data.
In a specific preferred aspect of the present invention, the data evaluation component takes an initial set of data values (obtained from at least one sensor), and removes all data values which exceed a maximum possible value or which are below a minimum possible value (i.e., to remove incorrect values, e.g., values which can only have been obtained as a result of a sensor error or the like). The data evaluation component preferably determines whether a significant number of the data values in the initial set are outside of an "acceptable" range. If a significant number of the data values in the initial set are within the acceptable range, the data evaluation component preferably generates a "basic record", which identifies a basic range (preferably within the acceptable range and which preferably encompasses fewer values than the acceptable range) within which a significant number of the data values in the initial set fall. The basic record is thus a baseline for the specific system being analyzed, against which subsequent "current records" can be compared, to help to see whether the data reflects a tendency of trending away from the original condition of the system, and possible movement toward a changed circumstance (and possibly an emergency situation). The data evaluation component preferably receives subsequent sets of data values, and examines whether significant quantities of data values are in specific ranges defined outside of the basic range and/or outside of the acceptable range. By evaluating the quantity of data values in a variety of such ranges established by the data evaluation component based on the data received, the data evaluation component selects from among different algorithms for generating data information in specific formats (examples of which are described in detail below), each format being useful in evaluating trends in the data values.
The invention may be more fully understood with reference to the accompanying drawings and the following detailed description of the invention.
Brief Description of the Drawing Figures:
Fig. 1 is a schematic diagram depicting the structure of an embodiment of an inferencing engine for evaluating data according to an embodiment of the present invention.
Fig. 2 is a schematic flowchart depicting an algorithm for determining the segments included in a "final range" in accordance with an embodiment of the present invention. Fig. 3 is a schematic diagram depicting the architecture of a DataAgent component according to an embodiment of the present invention.
Fig. 4 is a schematic diagram depicting the architecture of an Arbiter Agent component of an inference engine according to an embodiment of the present invention.
Detailed Description of the Invention
As noted above, in accordance with a third aspect of the present invention, there is provided a method of evaluating a water sample for the presence of microcystin, comprising:
-obtaining at least a first data value of pH of the water sample from a pH sensor;
-obtaining at least a first data value of turbidity of the water sample from a turbidity sensor;
-obtaining at least a first data value of dissolved oxygen of the water sample from a dissolved oxygen sensor;
-obtaining at least a first data value of temperature of the water sample from a temperature sensor;
-obtaining at least a first data value of chlorophyll of the water sample from a chlorophyll sensor;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of cyanobacteria;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of microcystin;
-obtaining at least a first evaluation of whether the water sample is being subjected to sunlight;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of bloom other than cyanobacteria;
-obtaining at least a first evaluation of whether the water sample is being subjected to wind;
-obtaining at least a first evaluation of whether the water sample has a bacterial problem;
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of E-coli; -obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of bacteria other than cyanobacteria; and
-obtaining at least a first evaluation of whether the water sample contains at least a minimum amount of toxin other than microcystin or substantially no toxin presence; and
-estimating a likelihood that the water sample contains microcystin or will contain microcystin, based on at least the first data values and the first evaluations.
In accordance with a first group of preferred embodiments according to the third aspect of the invention, one or more data values for at least one of the parameters are evaluated to obtain a reading as to which of a plurality of ranges the value falls within, e.g., a "normal" range, a "high" range or a "low" range. Alternatively, where a plurality of values are collected, groups of such values (e.g., all values within a given time frame) can be used to generate a quantity (e.g., by taking a mean, the median, the mode, or by any other suitable calculation or method), and the quantity (or a plurality of quantities) can be evaluated to obtain a reading as to which of the plurality of ranges the quantity (or quantities) falls within. As noted above, a "reading" for a parameter can be derived in any desired manner, for example, by comparing to a reference value (or values) a single current value or an average of a plurality of recent values, or by any other kind of evaluation (e.g., calculations made when operating in a "tendency mode" as discussed below).
In accordance with aspects of the present invention in which a tendency mode is being employed, raw data incoming from one or more sensors is evaluated and converted to form statistical values. The first step in this process is to establish the framework of analysis by identifying the basic and acceptable ranges of statistical values. An "acceptable range" of statistical values for a water sample can be, e.g., a range of not less than a specific value, a range of not greater than a specific value, or a range of between (and including) minimum and maximum values. The "basic range" (or normal range) of statistical values is typically a range within the acceptable range. The acceptable and/or basic ranges may vary for different water samples.
Preferably, the data evaluation component, the first report generating component, the second report generating component (if present) and the decision-making component (if present) are included on a single computer-readable medium (e.g., a computer-readable medium contained in a single computer or network), but alternatively, the respective components can each be included on different computer-readable media, e.g., different computer-readable media on different computers, processors or devices, or can be included on one or more computer-readable media in any desired combinations.
With respect to a system operating in a tendency mode and which includes a first report generating component, a second report generating component and a decision-making component, the data evaluation component generates data information which includes analyses of the data in specific formats which are preferably sent to the first report generating component, the second report generating component and the decision-making component. The first report generating component generates first reports based on (1) expert information relating to the type of water sample being evaluated and (2) data information received from the data evaluation component. The second report generating component generates second reports based on (1) expert information relating to the type of water sample being evaluated, (2) data information received from the data evaluation component, and (3) information pertaining to the specific water sample (as opposed to the type of system) being evaluated. As a result, the second reports may be shifted from the first reports, due to the fact that the second reports factor in information pertaining to the specific water sample, as well as expert information relating to the type of water sample.
As noted above, in one aspect of the present invention which employs a tendency mode, for each of one or more parameters, the data evaluation component takes an initial set of data values, removes all data values which exceed a maximum possible value or which are below a minimum possible value, and preferably determines whether a significant number of the data values in the initial set are outside of an "acceptable" range. If a significant number of the data values in the initial set are within the acceptable range, the data evaluation component preferably generates a "basic record", which identifies a basic range (preferably within the acceptable range and which preferably encompasses fewer values than the acceptable range) within which a significant number of the data values in the initial set fall. The basic record is thus a baseline for the specific water sample being analyzed, against which subsequent "current records" can be compared, to help to see whether the data reflects a trending away from the original condition of the water sample, and possible movement toward a changed circumstance (and possibly an emergency situation). The data evaluation component preferably receives subsequent sets of data values, and examines whether significant quantities of data values are in specific ranges defined outside of the basic range and/or outside of the acceptable range. By evaluating the quantity of data values in a variety of such ranges established by the data evaluation based on the data received, the data evaluation component selects different algorithms for generating data information in specific formats (examples of which are described in detail below), each format being useful in evaluating tendencies in the data values.
The first report generating component (as well as the system-specific report generating component and/or the decision-making component, if present) preferably contains arrays and/or networks of logic. For example, in some cases, the second report generating component includes logic to the effect that where a water sample has a specific condition, (1) the probability that a particular parameter will be higher than a particular upper reference value is a particular value, (2) the probability that such parameter will be not higher than the upper reference value and not less than a particular lower reference value is a second particular value, and (3) the probability that such parameter will be less than the lower reference value is a third particular value.
Below is a discussion of a specific example of an embodiment (referred to as an inference engine) according to an aspect of the present invention operating in a tendency mode. When operating in a tendency mode, the device provides tendency mode information as well as real mode information; in the case of an embodiment which operates only in a real mode, the device provides only real mode information. The inference engine of this embodiment includes a data evaluation component, a first report generating component and a decision-making component. In the discussion of this embodiment which follows, the data evaluation component which receives sensor data from at least one sensor for each of a plurality of parameters and which generates data information based on evaluation of the sensor data in the present embodiment is the "DataAgent"; the first report generating component in the present embodiment is the "ReasonNET"; and the decision-making component is the "ArbiterAgent." In this embodiment, ReasonNET is a Bayesian network design which is based on expert information.
The inference engine of this example corresponding to this embodiment receives substantially real-time data from sensors, and expert information including basic information about normal values for monitoring statistics. Optionally, the inference engine may also receive manually entered data (this data component is optional, i.e., the system is able to make decisions when there is no manual data).
The structure of the inference engine according to this example corresponding to this embodiment is depicted in Fig. 1.
DataAgent receives information from the sensors, and/or from one or more data files, and places information in specific respective formats for receipt by ReasonNET.
In the real mode of this embodiment, DataAgent receives information from sensors, compares it with expert information, and generates a real mode record and a real mode output, hi the real mode, the status is characterized as "normal" if a statistical value is within the acceptable range; the status is characterized as "high" if the statistical value is higher than the maximum value in the acceptable range; and the status is declared "low" if the statistical value is lower than the minimum value in the acceptable range. hi the tendency mode of this embodiment, DataAgent collects information from the sensors during a period of time (every T seconds) and compares it to basic records. Basic records, described below in more detail, function as baseline information for comparing later- obtained data. Based on such comparisons, DataAgent creates current records, decreasing current records and/or increasing current records (described below in more detail). If significant changes occur and a potential problem is detected, then DataAgent creates a status record for ReasonNET, and generates a status/color code record for ArbiterAgent. hi this embodiment, the tendency mode can be turned on or off, but the real mode is always on so that DataAgent always sends real data. The DataAgent processes data every T seconds.
The following discussion details analysis of data for a single parameter-other parameters for the water sample may be handled in an analogous way. hi this example according to this embodiment, initially, a basic record is created with respect to the real-time data received from each of the sensors (i.e., a basic record will be created for each of those parameters. Each of these records includes data set forth in a specific format, discussed in more detail below, hi addition, a basic image may be created, which includes all of the basic records (e.g., the basic image includes all of the parameters being monitored). As discussed in more detail below, in specific circumstances, the basic image (or one or more basic records) for the water sample can be updated (i.e., replaced with a new basic image generated using current data).
In this example corresponding to this embodiment, a
MIN/MAX/Low/High/ Acceptable detection routine is performed for each parameter being monitored and/or evaluated. For each parameter being monitored or evaluated, a set of data values is received from the sensor for that parameter. Each data value is the value of the parameter detected by the sensor during a sub-interval (e.g., one second) within an initial time interval (e.g., five minutes). Each sub-interval within the initial time interval is a period of time such that the sub-intervals taken together sequentially comprise an entirety of the initial time interval (e.g., 300 sequential one second sub-intervals within an initial time interval of five minutes).
Then, each of the data values (among the set of data values for this parameter) is assigned to one category selected from among categories characterized as "MIN", "Low", "Acceptable", "High" and "MAX". Each data value (i.e., if any) which is less than a minimum possible value is characterized as "MIN". Each data value which is greater than a maximum possible value is characterized as "MAX". Each data value which is within an acceptable range of values is characterized as "Acceptable". Each data value which is greater than or equal to the minimum possible value and less than the lowest value in the acceptable range is characterized as "Low". Each data value which is less than or equal to the maximum possible value and greater than the highest value in the acceptable range is characterized as "High".
The effect of assigning data values less than a minimum possible value to "MIN" and assigning data values greater than a maximum possible value to "MAX" according to the present embodiment is to eliminate such readings because they are clearly erroneous. This exclusion is done to eliminate data which is clearly incorrect, e.g., due to sensor error.
In accordance with a preferred aspect according to the present invention, if the quantity or percentage of data values (from among the set of data values) which are assigned to "MIN" (the "MIN value") for the parameter exceeds a "replace sensor-min" value (e.g., 10% of the total quantity of signals), a signal is generated which indicates that the sensor which generated the readings for that parameter should be replaced. "Replace sensor-min" values may differ depending on the particular parameter. Similarly, in a preferred aspect, if the quantity or percentage of data values (from among the set of data values) which are assigned to "MAX" (the "MAX value") for the parameter exceeds a "replace sensor-max" value, a signal is generated which indicates that the sensor which generated the readings for that parameter should be replaced. "Replace sensor-max" values also may differ depending on the particular parameter.
The acceptable range of values described above is defined as a range of values between and including a lowest acceptable value and a highest acceptable value. The lowest acceptable value is a reference value which is considered by experts in the appropriate field to be the minimum normally acceptable value. The highest acceptable value is a reference value which is considered by experts to be the maximum normally acceptable value.
Next, a determination is made as to whether either of the categories "Low" and "High" has the most data values. If "Low" has more data values than each of "Acceptable" and "High", a color code indicator is characterized as "red", a status indicator is characterized as "decreasing", and another MBSf/MAX/Low/High/ Acceptable detection routine is then performed.
If "High" has at least as many data values as "Low", and more data values than "Acceptable", the color code indicator is characterized as "red", the status indicator is characterized as "increasing" and another MESf/MAX/Low/High/ Acceptable detection routine is then performed.
Otherwise (i.e., unless "Low" has more data values than each of "High" and "Acceptable", or "High" has more data values than "Acceptable" and at least as many data values as "Low"), a basic record creation routine is then performed. In the basic record creation routine, the range of values within the "Acceptable" category for the parameter is divided into a number (e.g., 30, 40 or 60) of range segments. Preferably, the range segments each cover ranges of substantially equal size. Then, for each of the range segments, a quantity of the data values which fall within the range segment is determined. Then a range segment having a maximum quantity of the data values is identified and characterized as Rmax. Rmax is assigned to a final range category. Then, a next range segment analysis is performed.
In a next range segment analysis, a next lower range segment is the range segment having values just below the lowest value within the final range, and a next higher range segment is the range segment having values just above the highest value in the final range (if all range segments have already been included in the final range, the next range segment analysis is concluded and, as described below, a final range comparison is performed next). If the next lower range segment has a greater quantity of data values than the quantity of data values in the next higher range segment (or if there are no remaining range segments having values higher than the final range), a determination is made as to whether the next lower range segment has a quantity of data values which is at least a minimum ratio (e.g., 0.7 or any other desired ratio) of the quantity of data values in Rmax; if so, the next lower range segment is added to the final range category and another next range segment analysis is performed next. If the next lower range segment does not have a greater quantity of data values than the quantity of data values in the next higher range segment (or if there are no remaining range segments having values lower than the final range), a determination is made as to whether the next higher range segment has a quantity of data values which is at least the minimum ratio of the quantity of data values in Rmax; if so, the next higher range segment is added to the final range category and another next range segment analysis is performed next.
If the next lower range segment and the next higher range segment each have a quantity of data values which is less than the minimum ratio of the quantity of data values in Rmax, or if there is no next lower range segment and the next higher range segment has a quantity of data values which is less than the minimum ratio of the quantity of data values in Rmax, or if there is no next higher range segment and the next lower range segment has a quantity of data values which is less than the minimum ratio of the quantity of data values in Rmax, or if all range segments have already been included in the final range, a final range comparison routine is then performed.
In the final range comparison routine, a determination is made as to which of the range segments have a quantity of data values which is at least the minimum ratio of the quantity of data values in Rmax. Then a determination is made as to whether every range segment which has a quantity of data values which is at least the minimum ratio of the quantity of data values in Rmax is included in the final range. If not, the number of range segments is decreased by one and another basic record creation routine is performed next.
An example of an embodiment of an algorithm for determining the segments included in the "final range" is depicted in Fig. 2.
If every range segment which has a quantity of data values which is at least the minimum ratio of the quantity of data values in Rmax is included in the final range, a determination is made as to the quantity of data values (from among the set of data values) falling within a Low range (the "Low value"), the quantity of data values falling within an X range (the "X value"), the quantity of data values falling within a Y range (the "Y value"), the quantity of data values falling within a Z range (the "Z value") and the quantity of data values falling within a High range (the "High value"). The Low range includes all values which are not less than the minimum possible value and which are less than the lowest value in the acceptable range. The X range includes all values which are not less than the lowest value in the acceptable range and which are less than the lowest value in the final range. The Y range includes all values which are within the final range. The Z range includes all values which are greater than the highest value in the final range and which are not greater than the highest value in the acceptable range. The High range includes all values which are not greater than the maximum possible value and which are greater than the highest value in the acceptable range.
Optionally, in addition, a determination may be made as to the quantity of data values assigned to the "MIN" category (the MIN value) and the quantity of data values assigned to the "MAX" category (the MAX value).
For each set of data values relating to a specific parameter, a basic record is created. Each basic record contains the following components:
-the parameter's name or identifier (e.g., a code or ID number);
-the "P-time", i.e., the period of time, in seconds, between each time that the parameter is to be detected (preferably, the P-time is input by the user);
-the "T-time", i.e., the period of time, in seconds, during which values are to be monitored to generate a "current record" (current records are described in detail below);
-the Low value;
-the X value;
-the Y value;
-the Z value; and
-the High value.
Optionally, the basic record may also include:
-the MIN value; and -the MAX value.
A similar basic record is created for each other parameter being detected. The basic records for the different parameters together make up a basic image.
After creating a basic record for a parameter, next, a current record creation routine is performed for that parameter. In the current record creation routine, a fresh set of data values for the parameter is received from the sensor for that parameter. As above, the following discussion focuses on the analysis of data for a single parameter-each of the other parameters can be handled in an analogous way. Each data value among the fresh set of data values is the value of the parameter detected by the sensor during a sub-interval (e.g., one second) within a current time interval (e.g., one minute). Each current time interval preferably follows immediately after the end of the previous time interval (i.e., immediately after a previous current time interval or, where there have been no previous current time intervals, immediately after the initial time interval). Each sub-interval within a current time interval is a period of time such that the sub-intervals taken together sequentially comprise an entirety of the current time interval (e.g., 60 sequential one second sub-intervals within a current time interval of one minute).
Then, a Low value, an X value, a Y value, a Z value and a High value are determined. The Low value is the quantity of data values within the fresh set of data values which fall within the Low range. The X value is the quantity of data values within the fresh set of data values which fall within the X range. The Y value is the quantity of data values within the fresh set of data values which fall within the Y range. The Z value is the quantity of data values within the fresh set of data values which fall within the Z range. The High value is the quantity of data values within the fresh set of data values which fall within the High range.
Optionally, in addition, a determination may be made as to the quantity of data values assigned to the "MIN" category (the MIN value) and the quantity of data values assigned to the "MAX" category (the MAX value).
If the Low value is greater than each of the X value, the Y value, the Z value and the High value, the color code indicator is characterized as "red", the status indicator is characterized as "decreasing" and a decreasing current record creation routine (described below) is then performed.
If the High value is greater than or equal to the Low value, and is greater than each of the X value, the Y value and the Z value, the color code indicator is characterized as "red", the status indicator is characterized as "increasing" and an increasing current record creation routine (described below) is then performed.
If the X value is greater than or equal to the Low value and greater than or equal to the High value, and is greater than each of the Y value and the Z value, the color code indicator is characterized as "yellow", the status indicator is characterized as "decreasing" and a decreasing current record creation routine is then performed.
If the Z value is greater than or equal to the Low value, greater than or equal to the X value, greater than or equal to the High value, and greater than the Y value, the color code indicator is characterized as "yellow", the status indicator is characterized as "increasing" and an increasing current record creation routine is then performed.
If the Y value is greater than or equal to the Low value, greater than or equal to the X value, greater than or equal to the Z value and greater than or equal to the High value, the color code indicator is characterized as "green", the status indicator is characterized as "normal" and another current record creation routine is performed next.
For each fresh set of data values relating to a specific parameter, a current record is created. Each current record contains the following components:
-the parameter's name or identifier;
-the Low value;
-the X value;
-the Y value;
-the Z value; and
-the High value.
Optionally, the current record may also include:
-the status indicator, i.e., "increasing", "decreasing" or "normal" (or corresponding symbols, e.g., "1" for "increasing", "2" for "decreasing" and "0" for "normal"); and
-the color code indicator, i.e., "red", "orange", "yellow" or "green" (or corresponding symbols, e.g., "0" for "green", "1" for "yellow", "2" for "orange" and "3" for "red").
Optionally, the current record may also include:
-the MIN value; and
-the MAX value. In performing a decreasing current record creation routine (referred to above), a new fresh set of data values for the parameter is received from the sensor for that parameter. As above, the following discussion focuses on the analysis of data for a single parameter-each of the other parameters can be handled in an analogous way. Each data value among the new fresh set of data values is the value of the parameter detected by the sensor during a sub- interval (e.g., one second) within a current time interval (e.g., one minute). Each current time interval preferably follows immediately after the end of the previous current time interval. Each sub-interval within a current time interval is a period of time such that the sub-intervals taken together sequentially comprise an entirety of the current time interval (e.g., 60 sequential one second sub-intervals within a current time interval of one minute).
Then, a new Low value, an Xl value, an X2 value, an X3 value, a new Y value, a new Z value and a new High value are determined. The new Low value is the quantity of data values within the new fresh set of data values which fall within the Low range. The Xl value is the quantity of data values within the new fresh set of data values which fall within a first portion of the X range. The X2 value is the quantity of data values within the new fresh set of data values which fall within a second portion of the X range, the second portion of the X range including values which are greater than values in the first portion of the X range. The X3 value is the quantity of data values within the new fresh set of data values which fall within a third portion of the X range, the third portion of the X range including values which are greater than values in the second portion of the X range, hi a preferred representative example, the third portion of the X range is the highest approximately 50% of the values within the X range, the first portion of the X range is the lowest approximately 30% of the values within the X range, and the second portion of the X range is the remaining approximately 20% of the values within the X range. The new Y value is the quantity of data values within the new fresh set of data values which fall within the Y range. The new Z value is the quantity of data values within the new fresh set of data values which fall within the Z range. The new High value is the quantity of data values within the new fresh set of data values which fall within the High range.
Optionally, in addition, a determination may be made as to the quantity of data values in the new fresh set of data values assigned to the "MIN" category (the MIN value) and the quantity of data values in the new fresh set of data values assigned to the "MAX" category (the MAX value).
Then, if the new High value is greater than each of the new Low value, the Xl value, the X2 value, the X3 value, the new Y value and the new Z value, the color code indicator is characterized as "red", the status indicator is characterized as "increasing" and an increasing current record creation routine is performed next.
If the new Low value is greater than or equal to the new High value, and is greater than each of the Xl value, the X2 value, the X3 value, the new Y value and the new Z value, the color code indicator is characterized as "red", the status indicator is characterized as "decreasing" and another decreasing current record creation routine is performed next.
If the new Z value is greater than or equal to the new High value and greater than or equal to the new Low value, and is greater than each of the Xl value, the X2 value, the X3 value and the new Y value, the color code indicator is characterized as "yellow", the status indicator is characterized as "increasing" and an increasing current record creation routine is performed next.
If the Xl value is greater than or equal to the new Low value, greater than or equal to the new High value and greater than or equal to the new Z value, and is greater than each of the X2 value, the X3 value and the new Y value, the color code indicator is characterized as "orange", the status indicator is characterized as "decreasing" and another decreasing current record creation routine is performed next.
If the X2 value is greater than or equal to the new Low value, greater than or equal to the new High value, greater than or equal to the new Z value and greater than or equal to the Xl value, and is greater than each of the X3 value and the new Y value, the color code indicator is characterized as "yellow", the status indicator is characterized as "decreasing" and another decreasing current record creation routine is performed next.
If the X3 value is greater than or equal to the new Low value, greater than or equal to the new High value, greater than or equal to the new Z value, greater than or equal to the Xl value, greater than or equal to the X2 value, and greater than the new Y value, the color code indicator is characterized as "yellow", the status indicator is characterized as "decreasing" and another decreasing current record creation routine is performed next.
If the new Y value is greater than or equal to the new Low value, greater than or equal to the Xl value, greater than or equal to the X2 value, greater than or equal to the X3 value, greater man or equal to the new Z value and greater than or equal to the new High value, the color code indicator is characterized as "green", the status indicator is characterized as "normal" and another current record creation routine is performed next.
For each new fresh set of data values relating to a specific parameter, a decreasing current record is created. Each decreasing current record contains the following components:
-the parameter's name (e.g., heart rate) or identifier (e.g., a code or ID number);
-the new Low value;
-the Xl value;
-the X2 value;
-the X3 value;
-the new Y value;
-the new Z value; and
-the new High value.
Optionally, the decreasing current record may also include:
-the status indicator, i.e., "increasing", "decreasing" or "normal" (or corresponding symbols, e.g., "1" for "increasing, "2" for "decreasing" and "0" for "normal"); and
-the color code indicator, i.e., "red", "orange", "yellow" or "green" (or corresponding symbols, e.g., "0" for "green", "1" for "yellow", "2" for "orange" and "3" for "red").
Optionally, the decreasing current record may also include:
-the new MIN value; and
-the new MAX value.
In performing an increasing current record creation routine (referred to above), a current fresh set of data values for the parameter is received from the sensor for that parameter. As above, the following discussion focuses on the analysis of data for a single parameter-each of the other parameters can be handled in an analogous way. Each data value among the current fresh set of data values is the value of the parameter detected by the sensor during a sub-interval (e.g., one second) within a current time interval (e.g., one minute). Each current time interval preferably follows immediately after the end of the previous current time interval. Each sub-interval within a current time interval is a period of time such that the sub- intervals taken together sequentially comprise an entirety of the current time interval (e.g., 60 sequential one second sub-intervals within a current time interval of one minute). Then, a current Low value, a current X value, a current Y value, a Zl value, a Z2 value, a Z3 value and a current High value are determined. The current Low value is the quantity of data values within the current fresh set of data values which fall within the Low range. The current X value is the quantity of data values within the current fresh set of data values which fall within the X range. The current Y value is the quantity of data values within the current fresh set of data values which fall within the Y range. The Zl value is the quantity of data values within the current fresh set of data values which fall within a first portion of the Z range. The Z2 value is the quantity of data values within the current fresh set of data values which fall within a second portion of the Z range, the second portion of the Z range including values which are greater than values in the first portion of the Z range. The Z3 value is the quantity of data values within the current fresh set of data values which fall within a third portion of the Z range, the third portion of the Z range including values which are greater than values in the second portion of the Z range. In a preferred representative example, the first portion of the Z range is the lowest approximately 50% of the values within the Z range, the third portion of the Z range is the highest approximately 30% of the values within the Z range, and the second portion of the Z range is the remaining approximately 20% of the values within the Z range. The current High value is the quantity of data values within the current fresh set of data values which fall within the High range.
Optionally, in addition, a determination may be made as to the quantity of data values assigned to the "MIN" category (the MEN value) and the quantity of data values assigned to the "MAX" category (the MAX value).
Then, if the current Low value is greater than each of the current X value, the current Y value, the Zl value, the Z2 value, the Z3 value and the current High value, the color code indicator is characterized as "red", the status indicator is characterized as "decreasing" and a decreasing current record creation routine is performed next.
If the current High value is greater than or equal to the current Low value, and is greater than each of the current X value, the current Y value, the Zl value, the Z2 value and the Z3 value, the color code indicator is characterized as "red", the status indicator is characterized as "increasing" and another increasing current record creation routine is performed next.
If the current X value is greater than or equal to the current Low value and greater than or equal to the current High value, and is greater than each of the current Y value, the Zl value, the Z2 value and the Z3 value, the color code indicator is characterized as "yellow", the status indicator is characterized as "decreasing" and a decreasing current record creation routine is performed next.
If the Z3 value is greater than or equal to the current Low value, greater than or equal to the current High value and greater than or equal to the current X value, and is greater than each of the current Y value, the Zl value and the Z2 value, the color code indicator is characterized as "orange", the status indicator is characterized as "increasing" and another increasing current record creation routine is performed next.
If the Z2 value is greater than or equal to the current Low value, greater than or equal to the current High value, greater than or equal to the current X value and greater than or equal to the Z3 value, and is greater than each of the current Y value and the Zl value, the color code indicator is characterized as "yellow", the status indicator is characterized as "increasing" and another increasing current record creation routine is performed next.
If the Zl value is greater than or equal to the current Low value, greater than or equal to the current High value, greater than or equal to the current X value, greater than or equal to the Z3 value, greater than or equal to the Z2 value, and greater than the current Y value, the color code indicator is characterized as "yellow", the status indicator is characterized as "increasing" and another increasing current record creation routine is performed next.
If the current Y value is greater than or equal to the current Low value, greater than or equal to the current X value, greater than or equal to the Zl value, greater than or equal to the Z2 value, greater than or equal to the Z3 value and greater than or equal to the current High value, the color code indicator is characterized as "green", the status indicator is characterized as "normal" and another current record creation routine is performed next.
For each current fresh set of data values relating to a specific parameter, an increasing current record is created. Each increasing current record contains the following components:
-the parameter's name (e.g., heart rate) or identifier (e.g., a code or ID number);
-the current Low value;
-the current X value;
-the current Y value;
-the Zl value; -the Z2 value;
-the Z3 value; and
-the current High value.
Optionally, the increasing current record may also include:
-the status indicator, i.e., "increasing", "decreasing" or "normal" (or corresponding symbols, e.g., "1" for "increasing, "2" for "decreasing" and "0" for "normal"); and
-the color code indicator, i.e., "red", "orange", "yellow" or "green" (or corresponding symbols, e.g., "0" for "green", "1" for "yellow", "2" for "orange" and "3" for "red").
Optionally, the increasing record may also include:
-the MIN value; and
-the MAX value.
In the above discussion of this embodiment, various choices have been made regarding how the embodiment proceeds in the event that two or more values are equal (e.g., in the event that the X value and the Z value are equal, according to the discussion of the embodiment set forth above, the Z value controls, i.e., the status indicator is characterized as "increasing" and an increasing current record creation routine is performed next). However, in accordance with the present invention, the hierarchy as to which value controls in situations where any two or more values are equal can be set up in any other way (e.g., in the event that the X value and the Z value are equal, the X value can control, i.e., such that the status indicator would be characterized as "decreasing" and a decreasing current record creation routine would be performed next). hi accordance with the present embodiment, it is not necessary that any or all types of current records (i.e., including "current records", "decreasing current records" and "increasing current records") be retained after real mode output and optionally also tendency mode output (discussed in more detail below) are sent to the ArbiterAgent and the ReasonNET. For example, upon initiating a next routine, the previous current record, decreasing current record or increasing current record can optionally be discarded.
The current records, increasing current records and decreasing current records for all the different parameters being monitored or evaluated together make up a current image.
Below is a discussion of a second specific example of an embodiment according to this aspect of the present invention, this second example being referred to below as the second embodiment.
The second embodiment is similar to the first embodiment described above, except that:
in the decreasing current record creation routine of the second embodiment:
-if the Xl value is greater than or equal to the new Low value, greater than or equal to the new High value and greater than or equal to the new Z value, and is greater than each of the X3 value, the X2 value and the new Y value, (1) the status indicator is characterized as "decreasing", (2) the third portion of the X range is increased to include all values which were within the second portion of the X range as well as all values which were within the third portion of the X range, (3) the first portion of the X range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the first portion of the X range, the second part becoming the second portion of the X range, and (4) another decreasing current record creation routine is performed next;
-if the X2 value is greater than or equal to the new Low value, greater than or equal to the new High value, and greater than or equal to the new Z value and the Xl value, and is greater than each of the X3 value and the new Y value, (1) the status indicator is characterized as "decreasing", (2) the third portion of the X range is increased to include all values which were within the second portion of the X range as well as all values which were within the third portion of the X range, (3) the first portion of the X range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the first portion of the X range, the second part becoming the second portion of the X range, and (4) another decreasing current record creation routine is performed next; if the X3 value is greater than or equal to the new Low value, greater than or equal to the new High value, greater than or equal to the X2 value, greater than or equal to the Xl value, greater than or equal to the new Z value, and greater than the new Y value, (1) the status indicator is characterized as "decreasing", (2) the first portion of the X range is increased to include all values which were within the second portion of the X range as well as all values which were within the first portion of the X range, (3) the third portion of the X range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the second portion of the X range, the second part becoming the third portion of the X range, and (4) another decreasing current record creation routine is performed next;
and, in the increasing current record creation routine of the second embodiment:
-if the Z3 value is greater than or equal to the current Low value, greater than or equal to the current High value and greater than or equal to the current X value, and is greater than each of the current Y value, the Zl value and the Z2 value, (1) the status indicator is characterized as "increasing", (2) the first portion of the Z range is increased to include all values which were within the second portion of the Z range as well as all values which were within the first portion of the Z range, (3) the third portion of the Z range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the second portion of the Z range, the second part becoming the third portion of the Z range, and (4) another increasing current record creation routine is performed next;
-if the Z2 value is greater than or equal to the current Low value, greater than or equal to the current High value, greater than or equal to the current X value and greater than or equal to the Z3 value, and is greater than each of the current Y value and the Zl value, (1) the status indicator is characterized as "increasing", (2) the first portion of the Z range is increased to include all values which were within the second portion of the Z range as well as all values which were within the first portion of the Z range, (3) the third portion of the Z range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the second portion of the Z range, the second part becoming the third portion of the Z range, and (4) another increasing current record creation routine is performed next; and
-if the Zl value is greater than or equal to the current Low value, greater than or equal to the current High value, greater than or equal to the Z2 value, greater than or equal to the Z3 value, greater than or equal to the current X value, and greater than the current Y value, (1) the status indicator is characterized as "increasing", (2) the third portion of the Z range is increased to include all values which were within the second portion of the Z range as well as all values which were within the third portion of the Z range, (3) the first portion of the Z range is divided into a first part and a second part, the first part having values lower than the second part, the first part becoming the first portion of the Z range, the second part becoming the second portion of the Z range, and (4) another increasing current record creation routine is performed next.
econd embodiment as described above:
in the decreasing current record creation routine, the color code indicator is preferably characterized in other situations, i.e., including: when the Xl value is greater than or equal to the new Low value, greater than or equal to the new High value and greater than or equal to the new Z value, and is greater than each of the X3 value, the X2 value and the new Y value,
when the X2 value is greater than or equal to the new Low value, greater than or equal to the new High value, and greater than or equal to the new Z value and the Xl value, and is greater than each of the X3 value and the new Y value, and
when the X3 value is greater than or equal to the new Low value, greater than or equal to the new High value, greater than or equal to the X2 value, greater than or equal to the Xl value, greater than or equal to the new Z value, and greater than the new Y value; and
based on the new fresh set of data values, and
in the increasing current record creation routine, the color code indicator is preferably characterized in other situations, i.e., including:
when the Z3 value is greater than or equal to the current Low value, greater than or equal to the current High value and greater than or equal to the current X value, and is greater than each of the current Y value, the Zl value and the Z2 value,
when the Z2 value is greater than or equal to the current Low value, greater than or equal to the current High value, greater than or equal to the current X value and greater than or equal to the Z3 value, and is greater than each of the current Y value and the Zl value, and when the Zl value is greater than or equal to the current Low value, greater than or equal to the current High value, greater than or equal to the Z2 value, greater than or equal to the Z3 value, greater than or equal to the current X value, and greater than the current Y value,
based on the current fresh set of data values.
For example, in one preferred aspect of the second embodiment:
-during a decreasing current record creation routine, the color code indicator is characterized based on the new fresh set of data values by further:
-determining a new X value, the new X value being a quantity of data values within the new fresh set of data values which fall within the X range; and
-then, after characterizing the status indicator in the decreasing current record creation routine being performed:
-if the status indicator is characterized as "decreasing" and the new X value is greater than the new Low value, the new Y value, the new Z value and the new High value, characterizing the color code indicator as "yellow", and
-if the status indicator is characterized as "increasing" and the new Z value is greater than the new Low value, the new X value, the new Y value and the new High value, characterizing the color code indicator as "yellow"; and
-during an increasing current record creation routine, the color code indicator is characterized based on the current fresh set of data values by further: -determining a component Z value, the component Z value being a quantity of data values within the component fresh set of data values which fall within the Z range; and
-then, after characterizing the status indicator in the increasing current record creation routine being performed:
-if the status indicator is characterized as "decreasing" and the component X value is greater than the component Low value, the component Y value, the component Z value and the component High value, characterizing the color code indicator as "yellow", and
-if the status indicator is characterized as "increasing" and the component Z value is greater than the component Low value, the component X value, the component Y value and the component High value, characterizing the color code indicator as "yellow".
ond preferred aspect of the second embodiment,
-during a decreasing current record creation routine, the color code indicator is characterized based on the new fresh set of data values by further:
-after determining a new Low value, an Xl value, an X2 value, an X3 value, a new Y value, a new Z value and a new High value,
-if the X3 value is greater than the new Low value, the Xl value, the X2 value, the new Y value, the new Z value and the new High value, characterizing the color code indicator as "yellow"; -if the X2 value is greater than the new Low value, the Xl value, the new Y value, the new Z value and the new High value, and is not less than the X3 value, characterizing the color code indicator as "yellow";
-if the Xl value is greater than the new Low value, the new Y value, the new Z value and the new High value, and is not less than the X2 value and the X3 value, characterizing the color code indicator as "orange"; and
-during an increasing current record creation routine, the color code indicator is characterized based on the current fresh set of data values by further:
-after determining a current Low value, a current X value, a current Y value, a Zl value, a Z2 value, a Z3 value and a current High value,
-if the Zl value is greater than the current Low value, the current X value, the current Y value, the Z2 value, the Z3 value and the current High value, characterizing the color code indicator as "yellow";
-if the Z2 value is greater than the current Low value, the current X value, the current Y value, the Z3 value and the current High value, and is not less than the Zl value, characterizing the color code indicator as "yellow";
-if the Z3 value is greater than the current Low value, the current X value, the current Y value and the current High value, and is not less than the Zl value and the Z2 value, characterizing the color code indicator as "orange".
The architecture of DataAgent according to the embodiments described above is depicted in Fig. 3 In accordance with a preferred aspect of the present invention, DataAgent provides the option of automatically updating the basic record for a particular parameter when the color code indicator for that parameter has been yellow for a particular number of consecutive times (e.g., 30 times), which number may vary depending on the particular parameter, and/or when the color code indicator for that parameter has been orange for a particular number of consecutive times (which number may vary depending on the particular parameter). In addition, the number of consecutive times which prompts the basic record to be updated can differ depending on whether the yellow or orange color code is caused by elevated values (i.e., where the status indicator is "increasing") or depressed values (i.e., where the status indicator is "decreasing"), hi order to update the basic record, the basic record creation subroutine is performed using fresh data from the sensor or sensors.
In accordance with a further preferred aspect of the present invention, DataAgent provides the option of automatically updating the basic record for a particular parameter when the values for that parameter have been within a range of a particular size (i.e., in which the highest value differs from the lowest value by not more than a particular amount), such that the basic range (and/or the acceptable range) can be modified so as to encompass such values. For example, even if the values have been consistently of quantities at which the color code is red, the basic range can be modified so as to encompass such values. Thus, where the acceptable range for a parameter is, e.g., from 60 to 100, and the water sample values have consistently been about 103, the acceptable range and the basic range for that parameter for the water sample can be set such that they encompass a value of 103.
Preferably, in addition, for each new fresh set of data values and for each current fresh set of data values (i.e., whenever a decreasing current record or an increasing current record is created), DataAgent also creates a temporary record.
For each new fresh set of data values, i.e., when DataAgent is performing a decreasing current record creation routine, the temporary record which is created is a decreasing temporary record. A decreasing temporary record includes the parameter's name or identifier (e.g., a code or DD number), an N value, the Xl value, the X2 value, the X3 value and a C value. The Xl value, the X2 value and the X3 value are the same as those described above in connection with the decreasing current record creation routine. In a decreasing temporary record, the N value is equal to the new Low value determined in the decreasing current record creation routine. In a decreasing temporary record, the C value is equal to the sum of the new Y value, the new Z value and the new High value determined in the decreasing current record creation routine.
For each current fresh set of data values, i.e., when DataAgent is performing an increasing current record creation routine, the temporary record which is created is an increasing temporary record. An increasing temporary record includes the parameter's name or identifier (e.g., a code or ID number), an N value, the Zl value, the Z2 value, the Z3 value and a C value. The Zl value, the Z2 value and the Z3 value are the same as those described above in connection with the increasing current record creation routine. In an increasing temporary record, the N value is equal to the sum of the new Low value, the new X value and the new Y value determined in the increasing current record creation routine, hi an increasing temporary record, the C value is equal to the new High value determined in the increasing current record creation routine.
Upon returning to a green color code, preferably, any and all temporary records are discarded. hi each of the embodiments described above, for each current record, each decreasing current record and each increasing current record, DataAgent also generates a real mode record. The real mode record for a particular parameter includes a reading ("high", "normal" or "low", and/or an identifier which signifies one of such readings, e.g., 0 for normal, 1 for high or increased and 2 for low or decreased), a color code, as well as the parameter's name or identifier (e.g., a code or ID number). If the color code indicator for a parameter is red and the status is "increasing", the parameter is given a "high" reading, and the color code is red. If the color code for the parameter is red and the status is "decreasing", the parameter is given a "low" reading, and the color code is red. Otherwise (i.e., if the color code indicator is green, yellow or orange), the parameter is given a "normal" reading, and the color code is green. The real mode record is sent to ArbiterAgent, preferably along with a mode value indicating that it is a real mode record.
In addition, DataAgent preferably also generates a real mode output which is preferably sent to ReasonNET, the real mode output preferably including the parameter's name or identifier and the reading ("high", "low" or "normal"-determined in the same way as described above with regard to the real mode record). In each of the embodiments described above, for each current record, each decreasing current record and each increasing current record, DataAgent preferably also generates a status/color code record. The status/color code record for a particular parameter preferably includes a status value ("increasing", "decreasing" or "normal"), as well as the color code indicator (green, yellow, orange or red) and the parameter's name or identifier.
The status/color code record is sent to ArbiterAgent (preferably along with a tendency mode value indicating that it is a tendency mode reading).
In addition, one or more status records are preferably generated, which are preferably sent to ReasonNET. Preferably, a first status record includes (1) the parameter's name or identifier, and (2) a reading of "normal" if the color code indicator is green or yellow, a reading of "high" if the color code indicator is orange or red and the status is "increasing", or a reading of "low" if the color code indicator is orange or red and the status is "decreasing". The first status record is preferably used by ReasonNET to generate "orange" reports. Preferably, a second status record includes (1) the parameter's name or identifier, and (2) a reading of "normal" if the color code indicator is green, a reading of "high" if the color code indicator is yellow, orange or red and the status is "increasing", or a reading of "low" if the color code indicator is yellow, orange or red and the status is "decreasing". The second status record is preferably used by ReasonNET to generate "yellow" reports.
When operating in an "orange" mode, the parameter can be considered to be:
-"high" if the color code indicator is orange or red and the status is "increasing";
-"low" if the color code indicator is orange or red and the status is "decreasing"; and
-"normal" otherwise (i.e., if the color code indicator is green or yellow).
Similarly, when operating in a "yellow" mode, the parameter can be considered to be: -"high" if the color code indicator is yellow, orange or red and the status is "increasing";
-"low" if the color code indicator is yellow, orange or red and the status is "decreasing"; and
-"normal" otherwise (i.e., if the color code indicator is green).
The color codes can be interpreted as follows:
Green - normal mode: values are real (the data is not from tendency mode) and they are in a normal range;
Yellow - values have changed, but the changes are minor and values are within acceptable ranges.
Orange - values have increased or decreased more severely. DataAgent detects a potentially severe problem, but values are still within an acceptable range.
Red - abnormal mode. The value is real so the data is not in tendency mode, and the value is outside of the acceptable range. hi accordance with a preferred aspect of the present invention, a tracking record can optionally be produced. A tracking record can include information as to the sequence of the ranges over time which had the maximum quantity of data values. For example, a tracking record might read "Y range, Y range, Y range, Y range, Z range, Z range, Z range, Z range, Zl range, Z2 range, Z2 range, Z2 range, Z2 range, Z2 range, Z2 range, Z2 range, Zl range, Zl range, Zl range, Z2 range, Z2 range, Z2 range, Z3 range, Z3 range, Z3 range, High range, High range, High range, Z3 range, Z3 range, Z2 range, Z2 range, Zl range, Zl range, Y range, Y range, Y range, Y range, Y range, Y range, Y range, Y range, Y range, Y range, etc." Alternatively or additionally, the tracking record (or records) can include any other information, e.g., the quantity of data values in the range which had the maximum quantity of data values, and/or the quantity of data values in any other or all of the ranges.
The ReasonNET component of the inference engine according to the embodiments described above is designed based on experts' knowledge of water bodies of the type being evaluated or monitored. For example, where the system is a lake in the Northeastern United States, expert data can include information based on existing knowledge and preferably the use of a Bayesian network frame. Input to ReasonNET can be in the form of expert data contained in a case file or a separate formatted case. ReasonNET receives and evaluates the expert data, as well as real mode outputs and status records generated by DataAgent to generate expert reports, which show probabilities of a number of possible conditions. For example, ReasonNET might be influenced by a combination of parameter readings which is highly indicative of a particular condition existing to generate an appropriately high probability as to whether that condition exists. ReasonNET sends the expert reports to ArbiterAgent.
In the case where ReasonNET is in the form of a Bayesian network, the Bayesian network is set up in any suitable format, a variety of which are well known to those of skill in the art. For example, in accordance with one format, each parameter or condition has associated with it a table of values, and the table can further include one or more columns which each indicate whether a particular condition exists, and a plurality of probability columns. Each row of each probability column indicates the probability that the parameter or condition to which the table applies will fall within a corresponding range (for example, the ranges can include "high", "normal", and "low") for that column when the condition or each of the conditions in that row are either present or not present as indicated by the responses in the respective columns. For example, a representative table is shown below for a parameter which is linked to condition X and to condition Y (i.e., in a Bayesian format, an arrow extends from condition X to the parameter and an arrow extends from condition Y to the parameter):
(Parameter Name)
Figure imgf000042_0001
The first row indicates that where condition X is present and condition Y is not present, the probability of the parameter being "high" is 5 %, the probability of the parameter being "normal" is 5 %, and the probability of the parameter being "low" is 90 %. As described above, Data Agent can provide information as to whether any particular parameter (e.g., heart rate) is within any particular range, e.g., "high", "normal" and "low".
Fig. 5 depicts a Bayesian network format in accordance with the first aspect of the present invention.
Fig. 6 depicts a Bayesian network format in accordance with the second aspect of the present invention.
The ArbiterAgent of the embodiments described above makes decisions based on real mode records and status/color code records from said DataAgent and expert reports (from ReasonNET).
Fig. 4 depicts architecture of the ArbiterAgent according to the embodiments described above. hi the real mode of the embodiments described above, ArbiterAgent makes a final decision regarding each possible condition based on reports from ReasonNET and the real mode records received from DataAgent. A separate method of decision-making may be included in ArbiterAgent for each type of condition. These methods are based on expert information, and are preferably adjusted as more experience is gained.
To avoid false alarms, a summary of probabilities for all readings is preferably considered before an alarm is requested. When abnormal values of the readings continue to increase/decrease, the severity of the problem may be increasing and an alarm may therefore be required. However, if the value of the readings is abnormal, but steady, an alarm may be required once and a report indicating the problem can be generated continuously - but no further alarm is required.
While the ReasonNET component of each of the embodiments described above are Bayesian networks (which are conventionally known learning networks), either or both of these components can instead be any other learning network, e.g., a virtual vector machine, a neural network, a discrimination function, a decision tree, an expectation-maximization on mixtures of Gaussians, a probability distribution function (PDF), estimation through moment computation, PDF estimation through histograms, etc. hi addition, while the basic records, current records, decreasing current records, increasing current records, status/color code records, status records, real mode records and real mode outputs described above include specific data in specific respective formats, the types of data contained in each record and/or image can vary and can be in any desired format.
In addition, the time interval over which data is collected (and/or sub-intervals reflecting the period of time between each piece of data for a sensor) for generating a basic record can be selected from among a wide range of time periods, and/or can differ from one another for different parameters.
Also, the duration of time over which data is collected (and/or sub-intervals reflecting the period of time between each piece of data for a sensor) for generating current records, decreasing current records or increasing current records can be selected from among a wide range of time periods and/or can differ from one another.
Further, data (e.g., status, color code and/or readings) can be grouped differently for sending to other components (e.g., DataAgent can send ReasonNET a status/color code record which is similar to the status/color code record sent to Arbiter Agent).
Also, the number of range segments can be selected from among a wide range of quantities; in addition, it is not necessary that each of the segments have an equal range from lowest value to highest value.
The "minimum ratio" used in the basic record creation routine (i.e., the "minimum ratio of the quantity of data values in Rmax") can be selected from within a wide range of quantities.
The percentages used in the decreasing current record creation routine (i.e., 30% for the first portion, 20% for the second portion and 50% for the third portion) and in the increasing current record creation routine (i.e., 50% for the first portion, 20% for the second portion and 30% for the third portion) can each vary from what is described in the above embodiments.
Also, the number of consecutive times for the color code to be yellow or the number of consecutive times for the color code to be orange for the option of automatically updating the basic record can be selected from among a wide range of values.
Any two or more functions can be conducted simultaneously, and/or any function can be conducted in a series of steps.

Claims

Claims
1. A method of evaluating a water sample for the presence or possible future presence of microcystin, comprising: obtaining at least a first data value of pH of a water sample from a pH sensor; obtaining at least a first data value of turbidity of said water sample from a turbidity sensor; obtaining at least a first data value of dissolved oxygen of said water sample from a dissolved oxygen sensor; obtaining at least a first data value of temperature of said water sample from a temperature sensor; obtaining at least a first data value of chlorophyll of said water sample from a chlorophyll sensor; obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of cyanobacteria; obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of microcystin; obtaining at least a first evaluation of whether said water sample is being subjected to sunlight; obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of bloom other than cyanobacteria; obtaining at least a first evaluation of whether said water sample is being subjected to wind; obtaining at least a first evaluation of whether said water sample has a bacterial problem; obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of E-coli; obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of bacteria other than cyanobacteria; and obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of toxin other than microcystin or substantially no toxin presence; and estimating a likelihood that said water sample contains microcystin or will contain microcystin, based on at least said first data values and said first evaluations.
2. A method as recited in claim 1, wherein said estimating is carried out using logic comprising a chart in which:
a condition of cyanobacteria presence and said condition of detected microcystin presence (by a biological sensor) are linked to said condition of microcystin presence;
pH, turbidity, dissolved oxygen, temperature and chlorophyll parameters are linked to said condition of cyanobacteria presence;
said condition of sunlight presence is linked to said parameter chlorophyll;
temperature, chlorophyll, turbidity and dissolved oxygen parameters are linked to said condition of presence of bloom other than cyanobacteria;
said condition of wind presence is linked to said condition of presence of bloom other than cyanobacteria and to said condition of cyanobacteria presence;
temperature, turbidity and dissolved oxygen parameters are linked to said condition of presence of a bacterial problem;
said condition of E-coli presence and said condition of presence of bacteria other than cyanobacteria are linked to said condition of presence of a bacterial problem;
said condition of detected E-coli (by an E-coli sensor) is linked to said condition of E- coli presence; and
said condition of presence of cyanobacteria is linked to said condition of presence of toxin other than microcystin or no toxin presence.
3. A method as recited in claim 2, wherein said chart containing said logic is a Bayesian network.
4. A method as recited in claim 2, wherein said estimating comprises determining, for at least a first parameter from among said parameters, which of a plurality of data value ranges for said first parameter said first data value for said first parameter falls within.
5. A method as recited in claim 2, wherein said estimating comprises determining, for at least a first parameter from among said parameters, which of a plurality of data value ranges for said first parameter a first data quantity falls within, said first data quantity being calculated based on a plurality of first data values obtained for said first parameter.
6. A method as recited in claim 5, wherein said first data quantity is an average of a plurality of data values obtained for said first parameter.
7. A method as recited in claim 2, wherein said estimating comprises: -performing a MIN/MAX/Low/High/ Acceptable detection routine, said
MIN/MAX/Low/High/ Acceptable detection routine comprising:
-receiving a set of data values for at least a first parameter from among said parameters;
-assigning each data value which is less than a minimum possible value to a first category;
-assigning each data value which is within an acceptable range of values to a second category;
-assigning each data value which is greater than a maximum possible value to a third category; -assigning each data value which is at least as large as said minimum possible value and less than a lowest value in said acceptable range to a fourth category; and
-assigning each data value which is not greater than said maximum possible value and which is greater than the highest value in said acceptable range to a fifth category;
-if a number of data values in said fourth category exceeds a number of data values in said second category and exceeds a number of data values in said fifth category, assigning a first level to a first indicator, assigning a first status to a second indicator and again performing said MIN/MAX/Low/High/ Acceptable detection routine;
-if said number of data values in said fifth category exceeds said number of data values in said second category and is at least as large as said number of data values in said fourth category, assigning said first level to said first indicator, assigning a second status to said second indicator and again performing said MIN/MAX/Low/High/ Acceptable detection routine;
-if said number of data values in said second category is at least as large as said number of data values in said fourth category and is at least as large as said number of data values in said fifth category, performing a basic record creation routine, said basic record creation routine comprising:
-dividing a range of values within said second category into a plural number of range segments;
-for each of said range segments, determining a quantity of said data values which fall within said range segment;
-characterizing a range segment having a maximum quantity of said data values as Rmax, and assigning said Rmax to a final range category;
-performing a next range segment analysis, said next range segment analysis comprising:
-if a next lower range segment has a greater quantity of data values than a quantity of data values in a next higher range segment, said next lower range segment including a highest range of values which is less than the lowest value in said final range category, said next higher range segment including a lowest range of values which is greater than the highest value in said final range category, and if said next lower range segment has a quantity of data values which is at least a minimum ratio of a quantity of data values in Rmax, adding said next lower range segment to said final range category and again performing said next range segment analysis;
-if said quantity of data values in said next higher range segment is at least as large as said quantity of data values in said next lower range segment and is at least said minimum ratio of said quantity of data values in Rmax, adding said next higher range segment to said final range category and again performing said next range segment analysis;
-if (a) said quantity of data values in said next lower range segment is greater than said quantity of data values in said next higher range segment, and said quantity of data values in said next lower range segment is less than said minimum ratio of said quantity of data values in Rmax, or (b) said quantity of data values in said next higher range segment is at least as large as said quantity of data values in said next lower range segment, and said quantity of data values in said next higher range segment is less than said minimum ratio of said quantity of data values in Rmax, performing a final range comparison routine, said final range comparison routine comprising:
-if at least one range segment has a quantity of data values which is at least said minimum ratio of said quantity of data values in Rmax and is not included in said final range, reducing said number of range segments by one and again performing said basic record creation routine;
-determining a quantity of said data values falling within a Low range, a quantity of said data values falling within an X range, a quantity of said data values falling within a Y range, a quantity of said data values falling within a Z range and a quantity of said data values falling within a High range,
-said Low range including all values which are not less than said minimum possible value and which are less than said lowest value in said acceptable range,
-said X range including all values which are at least as large as said lowest value in said acceptable range and less than a lowest value in said final range,
-said Y range including all values which are within said final range,
-said Z range including all values which are greater than a highest value in said final range and not larger than said highest value in said acceptable range; and
-said High range including all values which are not greater than said maximum possible value and which are greater than said highest value in said acceptable range; -performing a current record creation routine, said current record creation routine comprising:
-receiving a fresh set of data values for said first parameter;
-determining a Low value, said Low value being a quantity of data values within said fresh set of data values which fall within said Low range;
-determining an X value, said X value being a quantity of data values within said fresh set of data values which fall within said X range;
-determining a Y value, said Y value being a quantity of data values within said fresh set of data values which fall within said Y range;
-determining a Z value, said Z value being a quantity of data values within said fresh set of data values which fall within said Z range;
-determining a High value, said High value being a quantity of data values within said fresh set of data values which fall within said High range;
-if said Low value is greater than each of said X value, said Y value, said Z value and said High value, assigning said first level to said first indicator, assigning said first status to said second indicator and proceeding to a decreasing current record creation routine;
-if said High value is at least as large as said Low value, and greater than each of said X value, said Y value and said Z value, assigning said first level to said first indicator, assigning said second status to said second indicator and proceeding to an increasing current record creation routine;
-if said X value is at least as large as said Low value and at least as large as said High value, and greater than each of said Y value and said Z value, assigning a second level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine;
-if said Z value is at least as large as said Low value, at least as large as said High value, at least as large as said X value and greater than said Y value, assigning said second level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine; and
-if said Y value is at least as large as each of said Low value, said X value, said Z value and said High value, assigning a third level to said first indicator, assigning a third status to said second indicator and again performing said current record creation routine;
said decreasing current record creation routine comprising:
-receiving a new fresh set of data values for said first parameter;
-determining a new Low value, said new Low value being a quantity of data values within said new fresh set of data values which fall within said Low range;
-determining an Xl value, said Xl value being a quantity of data values within said new fresh set of data values which fall within a first portion of said X range;
-determining an X2 value, said X2 value being a quantity of data values within said new fresh set of data values which fall within a second portion of said X range, said second portion of said X range including values which are greater than values in said first portion of said X range;
-determining an X3 value, said X3 value being a quantity of data values within said new fresh set of data values which fall within a third portion of said X range, said third portion of said X range including values which are greater than values in said second portion of said X range;
-determining a new Y value, said new Y value being a quantity of data values within said new fresh set of data values which fall within said Y range;
-determining a new Z value, said new Z value being a quantity of data values within said new fresh set of data values which fall within said Z range;
-determining a new High value, said new High value being a quantity of data values within said new fresh set of data values which fall within said High range;
-if said new High value is greater than each of said new Low value, said Xl value, said X2 value, said X3 value, said new Y value and said new Z value, assigning said first level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine;
-if said new Low value is at least as large as said new High value, and greater than each of said Xl value, said X2 value, said X3 value, said new Y value and said new Z value, assigning said first level to said first indicator, assigning said first status to said second indicator and again performing said decreasing current record creation routine;
-if said new Z value is at least as large as said new High value, at least as large as said new Low value, and greater than each of said Xl value, said X2 value, said X3 value and said new Y value, assigning said second level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine;
-if said Xl value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, and greater than each of said X2 value, said X3 value and said new Y value, assigning a fourth level to said first indicator, assigning said first status to said second indicator and again performing said decreasing current record creation routine;
-if said X2 value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, at least as large as said Xl value, and greater than each of said X3 value and said new Y value, assigning said second level to said first indicator, assigning said first status to said second indicator and again performing said decreasing current record creation routine;
-if said X3 value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, at least as large as said Xl value, at least as large as said X2 value, and greater than said new Y value, assigning said second level to said first indicator, assigning said first status to said second indicator and again performing said decreasing current record creation routine; and
-if said new Y value is at least as large as each of said new Low value, said Xl value, said X2 value, said X3 value, said new Z value and said new High value, assigning said third level to said first indicator, assigning said third status to said second indicator and again performing said current record creation routine;
said increasing current record creation routine comprising: -receiving a current fresh set of data values for said first parameter;
-determining a current Low value, said current Low value being a quantity of data values within said current fresh set of data values which fall within said Low range;
-determining a current X value, said current X value being a quantity of data values within said current fresh set of data values which fall within said X range;
-determining a current Y value, said current Y value being a quantity of data values within said current fresh set of data values which fall within said Y range;
-determining a Zl value, said Zl value being a quantity of data values within said current fresh set of data values which fall within a first portion of said Z range;
-determining a Z2 value, said Z2 value being a quantity of data values within said current fresh set of data values which fall within a second portion of said Z range, said second portion of said Z range including values which are greater than values in said first portion of said Z range;
-determining a Z3 value, said Z3 value being a quantity of data values within said current fresh set of data values which fall within a third portion of said Z range, said third portion of said Z range including values which are greater than values in said second portion of said Z range;
-determining a current High value, said current High value being a quantity of data values within said current fresh set of data values which fall within said High range; -if said current Low value is greater than each of said current X value, said current Y value, said Zl value, said Z2 value, said Z3 value and said current High value, assigning said first level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine;
-if said current High value is at least as large as said current Low value, and greater than each of said current X value, said current Y value, said Zl value, said Z2 value and said Z3 value, assigning said first level to said first indicator, assigning said second status to said second indicator and again performing said increasing current record creation routine;
-if said current X value is at least as large as said current Low value, at least as large as said current High value, and greater than each of said current Y value, said Zl value, said Z2 value and said Z3 value, assigning said second level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine;
-if said Z3 value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, and greater than each of said current Y value, said Zl value and said Z2 value, assigning said fourth level to said first indicator, assigning said second status to said second indicator and again performing said increasing current record creation routine;
-if said Z2 value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, at least as large as said Z3 value, and greater than each of said current Y value and said Zl value, assigning said second level to said first indicator, assigning said second status to said second indicator and again performing said increasing current record creation routine; -if said Zl value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, at least as large as said Z3 value, at least as large as said Z2 value, and greater than said current Y value, assigning said second level to said first indicator, assigning said second status to said second indicator and again performing said increasing current record creation routine; and
-if said current Y value is at least as large as each of said current Low value, said current X value, said Zl value, said Z2 value, said Z3 value and said current High value, assigning said third level to said first indicator, assigning said third status to said second indicator and again performing said current record creation routine.
8. A method as recited in claim 2, wherein said estimating comprises: -performing a MIN/MAX/Low/High/ Acceptable detection routine, said MIN/MAX/Low/High/ Acceptable detection routine comprising:
-receiving a set of data values for at least a first parameter from among said parameters;
-assigning each data value which is less than a minimum possible value to a first category;
-assigning each data value which is within an acceptable range of values to a second category;
-assigning each data value which is greater than a maximum possible value to a third category;
-assigning each data value which is at least as large as said minimum possible value and less than a lowest value in said acceptable range to a fourth category; and
-assigning each data value which is not greater than said maximum possible value and which is greater than the highest value in said acceptable range to a fifth category;
-if a number of data values in said fourth category exceeds a number of data values in said second category and exceeds a number of data values in said fifth category, assigning a first level to a first indicator, assigning a first status to a second indicator and again performing said MD^/MAX/Low/High/ Acceptable detection routine;
-if said number of data values in said fifth category exceeds said number of data values in said second category and is at least as large as said number of data values in said fourth category, assigning said first level to said first indicator, assigning a second status to said second indicator and again performing said MIN/MAX/Low/High/ Acceptable detection routine;
-if said number of data values in said second category is at least as large as said number of data values in said fourth category and is at least as large as said number of data values in said fifth category, performing a basic record creation routine, said basic record creation routine comprising:
-dividing a range of values within said second category into a plural number of range segments;
-for each of said range segments, determining a quantity of said data values which fall within said range segment;
-characterizing a range segment having a maximum quantity of said data values as Rmax, and assigning said Rmax to a final range category; -performing a next range segment analysis, said next range segment analysis comprising:
-if a next lower range segment has a greater quantity of data values than a quantity of data values in a next higher range segment, said next lower range segment including a highest range of values which is less than the lowest value in said final range category, said next higher range segment including a lowest range of values which is greater than the highest value in said final range category, and if said next lower range segment has a quantity of data values which is at least a minimum ratio of a quantity of data values in Rmax, adding said next lower range segment to said final range category and again performing said next range segment analysis;
-if said quantity of data values in said next higher range segment is at least as large as said quantity of data values in said next lower range segment and is at least said minimum ratio of said quantity of data values in Rmax, adding said next higher range segment to said final range category and again performing said next range segment analysis;
-if (a) said quantity of data values in said next lower range segment is greater than said quantity of data values in said next higher range segment, and said quantity of data values in said next lower range segment is less than said minimum ratio of said quantity of data values in Rmax, or (b) said quantity of data values in said next higher range segment is at least as large as said quantity of data values in said next lower range segment, and said quantity of data values in said next higher range segment is less than said minimum ratio of said quantity of data values in Rmax, performing a final range comparison routine, said final range comparison routine comprising: -if at least one range segment has a quantity of data values which is at least said minimum ratio of said quantity of data values in Rmax and is not included in said final range, reducing said number of range segments by one and again performing said basic record creation routine;
-determining a quantity of said data values falling within a Low range, a quantity of said data values falling within an X range, a quantity of said data values falling within a Y range, a quantity of said data values falling within a Z range and a quantity of said data values falling within a High range,
-said Low range including all values which are not less than said minimum possible value and which are less than said lowest value in said acceptable range,
-said X range including all values which are at least as large as said lowest value in said acceptable range and less than a lowest value in said final range,
-said Y range including all values which are within said final range,
-said Z range including all values which are greater than a highest value in said final range and not larger than said highest value in said acceptable range; and
-said High range including all values which are not greater than said maximum possible value and which are greater than said highest value in said acceptable range;
-performing a current record creation routine, said current record creation routine comprising: -receiving a fresh set of data values for said first parameter;
-determining a Low value, said Low value being a quantity of data values within said fresh set of data values which fall within said Low range;
-determining an X value, said X value being a quantity of data values within said fresh set of data values which fall within said X range;
-determining a Y value, said Y value being a quantity of data values within said fresh set of data values which fall within said Y range;
-determining a Z value, said Z value being a quantity of data values within said fresh set of data values which fall within said Z range;
-determining a High value, said High value being a quantity of data values within said fresh set of data values which fall within said High range;
-if said Low value is greater than each of said X value, said Y value, said Z value and said High value, assigning said first level to said first indicator, assigning said first status to said second indicator and proceeding to a decreasing current record creation routine;
-if said High value is at least as large as said Low value, and greater than each of said X value, said Y value and said Z value, assigning said first level to said first indicator, assigning said second status to said second indicator and proceeding to an increasing current record creation routine;
-if said X value is at least as large as said Low value and at least as large as said High value, and greater than each of said Y value and said Z value, assigning a second level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine;
-if said Z value is at least as large as said Low value, at least as large as said High value, at least as large as said X value and greater than said Y value, assigning said second level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine; and
-if said Y value is at least as large as each of said Low value, said X value, said Z value and said High value, assigning a third level to said first indicator, assigning a third status to said second indicator and again performing said current record creation routine;
said decreasing current record creation routine comprising:
-receiving a new fresh set of data values for said first parameter;
-determining a new Low value, said new Low value being a quantity of data values within said new fresh set of data values which fall within said Low range;
-determining an Xl value, said Xl value being a quantity of data values within said new fresh set of data values which fall within a first portion of said X range;
-determining an X2 value, said X2 value being a quantity of data values within said new fresh set of data values which fall within a second portion of said X range, said second portion of said X range including values which are greater than values in said first portion of said X range;
-determining an X3 value, said X3 value being a quantity of data values within said new fresh set of data values which fall within a third portion of said X range, said third portion of said X range including values which are greater than values in said second portion of said X range;
-determining a new Y value, said new Y value being a quantity of data values within said new fresh set of data values which fall within said Y range;
-determining a new Z value, said new Z value being a quantity of data values within said new fresh set of data values which fall within said Z range;
-determining a new High value, said new High value being a quantity of data values within said new fresh set of data values which fall within said High range;
-if said new High value is greater than each of said new Low value, said Xl value, said X2 value, said X3 value, said new Y value and said new Z value, assigning said first level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine;
-if said new Low value is at least as large as said new High value, and greater than each of said Xl value, said X2 value, said X3 value, said new Y value and said new Z value, assigning said first level to said first indicator, assigning said first status to said second indicator and again performing said decreasing current record creation routine;
-if said new Z value is at least as large as said new High value, at least as large as said new Low value, and greater than each of said Xl value, said X2 value, said X3 value and said new Y value, assigning said second level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine; -if said Xl value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, and greater than each of said X2 value, said X3 value and said new Y value, assigning said first status to said second indicator, modifying said third portion of said X range to include all values which were within said second portion of said X range as well as all values which were within said third portion of said X range, dividing said first portion of said X range into a first Xl part and a second Xl part, said first Xl part having values lower than said second Xl part, said first Xl part becoming said first portion of said X range, said second Xl part becoming said second portion of said X range, and again performing said decreasing current record creation routine;
-if said X2 value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, at least as large as said Xl value, and greater than each of said X3 value and said new Y value, assigning said first status to said second indicator, modifying said third portion of said X range to include all values which were within said second portion of said X range as well as all values which were within said third portion of said X range, dividing said first portion of said X range into a first X2 part and a second X2 part, said first X2 part having values lower than said second X2 part, said first X2 part becoming said first portion of said X range, said second X2 part becoming said second portion of said X range, and again performing said decreasing current record creation routine;
-if said X3 value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, at least as large as said Xl value, at least as large as said X2 value, and greater than said new Y value, assigning said first status to said second indicator, modifying said first portion of said X range to include all values which were within said second portion of said X range as well as all values which were within said first portion of said X range, dividing said third portion of said X range into a first X3 part and a second X3 part, said first X3 part having values lower than said second X3 part, said first X3 part becoming said second portion of said X range, said second X3 part becoming said third portion of said X range, and again performing said decreasing current record creation routine; and
-if said new Y value is at least as large as each of said new Low value, said Xl value, said X2 value, said X3 value, said new Z value and said new High value, assigning said third level to said first indicator, assigning said third status to said second indicator and again performing said current record creation routine;
said increasing current record creation routine comprising:
-receiving a current fresh set of data values for said first parameter;
-determining a current Low value, said current Low value being a quantity of data values within said current fresh set of data values which fall within said Low range;
-determining a current X value, said current X value being a quantity of data values within said current fresh set of data values which fall within said X range;
-determining a current Y value, said current Y value being a quantity of data values within said current fresh set of data values which fall within said Y range;
-determining a Zl value, said Zl value being a quantity of data values within said current fresh set of data values which fall within a first portion of said Z range; -determining a Z2 value, said Z2 value being a quantity of data values within said current fresh set of data values which fall within a second portion of said Z range, said second portion of said Z range including values which are greater than values in said first portion of said Z range;
-determining a Z3 value, said Z3 value being a quantity of data values within said current fresh set of data values which fall within a third portion of said Z range, said third portion of said Z range including values which are greater than values in said second portion of said Z range;
-determining a current High value, said current High value being a quantity of data values within said current fresh set of data values which fall within said High range;
-if said current Low value is greater than each of said current X value, said current Y value, said Zl value, said Z2 value, said Z3 value and said current High value, assigning said first level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine;
-if said current High value is at least as large as said current Low value, and greater than each of said current X value, said current Y value, said Zl value, said Z2 value and said Z3 value, assigning said first level to said first indicator, assigning said second status to said second indicator and again performing said increasing current record creation routine;
-if said current X value is at least as large as said current Low value, at least as large as said current High value, and greater than each of said current Y value, said Zl value, said Z2 value and said Z3 value, assigning said second level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine; -if said Z3 value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, and greater than each of said current Y value, said Zl value and said Z2 value, assigning said second status to said second indicator, modifying said first portion of said Z range to include all values which were within said second portion of said Z range as well as all values which were within said first portion of said Z range, dividing said third portion of said Z range into a first Z3 part and a second Z3 part, said first Z3 part having values lower than said second Z3 part, said first Z3 part becoming said second portion of said Z range, said second Z3 part becoming said third portion of said Z range, and again performing said increasing current record creation routine;
-if said Z2 value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, at least as large as said Z3 value, and greater than each of said Zl value and said current Y value, assigning said second status to said second indicator, modifying said first portion of said Z range to include all values which were within said second portion of said Z range as well as all values which were within said first portion of said Z range, dividing said third portion of said Z range into a first Z2 part and a second Z2 part, said first Z2 part having values lower than said second Z2 part, said first Z2 part becoming said second portion of said Z range, said second Z2 part becoming said third portion of said Z range, and again performing said increasing current record creation routine;
-if said Zl value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, at least as large as said Z3 value, at least as large as said Z2 value, and greater than said current Y value, assigning said second status to said second indicator, modifying said third portion of said Z range to include all values which were within said second portion of said Z range as well as all values which were within said third portion of said Z range, dividing said first portion of said Z range into a first Zl part and a second Zl part, said first Zl part having values lower than said second Zl part, said first Zl part becoming said first portion of said Z range, said second Zl part becoming said second portion of said Z range, and again performing said increasing current record creation routine; and
-if said current Y value is at least as large as each of said current Low value, said current X value, said Zl value, said Z2 value, said Z3 value and said current High value, assigning said third level to said first indicator, assigning said third status to said second indicator and again performing said current record creation routine.
9. A method as recited in claim 2, wherein said estimating comprises:
-receiving a set of first data values for at least a first parameter from among said parameters, said first data values being generated over a first period of time between a beginning of said first period of time and an end of said first period of time;
-assigning each of said first data values to at least one of at least three initial ranges of values;
-identifying at least one first data set maximum range, each said first data set maximum range being one of said initial ranges which has a maximum number of said first data values;
-receiving a set of second data values for said first parameter, said second data values being generated over a second period of time, at least a portion of said second period of time being subsequent to said end of said first period of time;
-assigning each of said second data values to at least one of at least three later ranges of values; -identifying at least one second data set maximum range, each said second data set maximum range being one of said later ranges which has a maximum number of said second data values.
10. A method as recited in any one of claims 1-9, wherein said method is computer- implemented.
11. A method as recited in claim 2, wherein said estimating comprises calculations based on factors comprising: a probability that cyanobacteria is present if microcystin is present or a probability that cyanobacteria is present if microcystin is not present; a probability that microcystin will be detected if microcystin is present or a probability that microcystin will be detected if microcystin is not present; a probability that pH will be in a high pH range if cyanobacteria is present, a probability that pH will be in a normal pH range if cyanobacteria is present, a probability that pH will be in a low pH range if cyanobacteria is present, a probability that pH will be in a high pH range if cyanobacteria is not present, a probability that pH will be in a normal pH range if cyanobacteria is not present, or a probability that pH will be in a low pH range if cyanobacteria is not present; a probability that turbidity will be in a high turbidity range if cyanobacteria is present, a probability that turbidity will be in a normal turbidity range if cyanobacteria is present, a probability that turbidity will be in a low turbidity range if cyanobacteria is present, a probability that turbidity will be in a high turbidity range if cyanobacteria is not present, a probability that turbidity will be in a normal turbidity range if cyanobacteria is not present, or a probability that turbidity will be in a low turbidity range if cyanobacteria is not present; a probability that dissolved oxygen will be in a high dissolved oxygen range if cyanobacteria is present, a probability that dissolved oxygen will be in a normal dissolved oxygen range if cyanobacteria is present, a probability that dissolved oxygen will be in a low dissolved oxygen range if cyanobacteria is present, a probability that dissolved oxygen will be in a high dissolved oxygen range if cyanobacteria is not present, a probability that dissolved oxygen will be in a normal dissolved oxygen range if cyanobacteria is not present, or a probability that dissolved oxygen will be in a low dissolved oxygen range if cyanobacteria is not present; a probability that temperature will be in a high temperature range if cyanobacteria is present, a probability that temperature will be in a normal temperature range if cyanobacteria is present, a probability that temperature will be in a low temperature range if cyanobacteria is present, a probability that temperature will be in a high temperature range if cyanobacteria is not present, a probability that temperature will be in a normal temperature range if cyanobacteria is not present, or a probability that temperature will be in a low temperature range if cyanobacteria is not present; a probability that chlorophyll will be in a high chlorophyll range if cyanobacteria is present, a probability that chlorophyll will be in a normal chlorophyll range if cyanobacteria is present, a probability that chlorophyll will be in a low chlorophyll range if cyanobacteria is present, a probability that chlorophyll will be in a high chlorophyll range if cyanobacteria is not present, a probability that chlorophyll will be in a normal chlorophyll range if cyanobacteria is not present, or a probability that chlorophyll will be in a low chlorophyll range if cyanobacteria is not present; a probability that temperature will be in said high temperature range if a bloom other than cyanobacteria is present; a probability that temperature will be in said normal temperature range if a bloom other than cyanobacteria is present; a probability that temperature will be in said low temperature range if a bloom other than cyanobacteria is present, a probability that temperature will be in said high temperature range if a bloom other than cyanobacteria is not present; a probability that temperature will be in said normal temperature range if a bloom other than cyanobacteria is not present; or a probability that temperature will be in said low temperature range if a bloom other than cyanobacteria is not present; a probability that chlorophyll will be in said high chlorophyll range if a bloom other than cyanobacteria is present; a probability that chlorophyll will be in said normal chlorophyll range if a bloom other than cyanobacteria is present; a probability that chlorophyll will be in said low chlorophyll range if a bloom other than cyanobacteria is present, a probability that chlorophyll will be in said high chlorophyll range if abloom other than cyanobacteria is not present; a probability that chlorophyll will be in said normal chlorophyll range if a bloom other than cyanobacteria is not present; or a probability that chlorophyll will be in said low chlorophyll range if a bloom other than cyanobacteria is not present; a probability that turbidity will be in said high turbidity range if a bloom other than cyanobacteria is present; a probability that turbidity will be in said normal turbidity range if a bloom other than cyanobacteria is present; a probability that turbidity will be in said low turbidity range if a bloom other than cyanobacteria is present, a probability that turbidity will be in said high turbidity range if a bloom other than cyanobacteria is not present; a probability that turbidity will be in said normal turbidity range if a bloom other than cyanobacteria is not present; or a probability that turbidity will be in said low turbidity range if a bloom other than cyanobacteria is not present; a probability that dissolved oxygen will be in said high dissolved oxygen range if a bloom other than cyanobacteria is present; a probability that dissolved oxygen will be in said normal dissolved oxygen range if a bloom other than cyanobacteria is present; a probability that dissolved oxygen will be in said low dissolved oxygen range if a bloom other than cyanobacteria is present, a probability that dissolved oxygen will be in said high dissolved oxygen range if a bloom other than cyanobacteria is not present; a probability that dissolved oxygen will be in said normal dissolved oxygen range if a bloom other than cyanobacteria is not present; or a probability that dissolved oxygen will be in said low dissolved oxygen range if a bloom other than cyanobacteria is not present; a probability that temperature will be in said high temperature range if a bacterial problem is present; a probability that temperature will be in said normal temperature range if a bacterial problem is present; a probability that temperature will be in said low temperature range if a bacterial problem is present, a probability that temperature will be in said high temperature range if a bacterial problem is not present; a probability that temperature will be in said normal temperature range if a bacterial problem is not present; or a probability that temperature will be in said low temperature range if a bacterial problem is not present; a probability that turbidity will be in said high turbidity range if a bacterial problem is present; a probability that turbidity will be in said normal turbidity range if a bacterial problem is present; a probability that turbidity will be in said low turbidity range if a bacterial problem is present, a probability that turbidity will be in said high turbidity range if a bacterial problem is not present; a probability that turbidity will be in said normal turbidity range if a bacterial problem is not present; or a probability that turbidity will be in said low turbidity range if a bacterial problem is not present; a probability that dissolved oxygen will be in said high dissolved oxygen range if a bacterial problem is present; a probability that dissolved oxygen will be in said normal dissolved oxygen range if a bacterial problem is present; a probability that dissolved oxygen will be in said low dissolved oxygen range if a bacterial problem is present, a probability that dissolved oxygen will be in said high dissolved oxygen range if a bacterial problem is not present; a probability that dissolved oxygen will be in said normal dissolved oxygen range if a bacterial problem is not present; or a probability that dissolved oxygen will be in said low dissolved oxygen range if a bacterial problem is not present; a probability that temperature will be in said high temperature range if a bacterial problem is present; a probability that temperature will be in said normal temperature range if a bacterial problem is present; a probability that temperature will be in said low temperature range if a bacterial problem is present, a probability that temperature will be in said high temperature range if a bacterial problem is not present; a probability that temperature will be in said normal temperature range if a bacterial problem is not present; or a probability that temperature will be in said low temperature range if a bacterial problem is not present; a probability that E-coli is present if a bacterial problem is present or a probability that E-coli is present if a bacterial problem is not present; a probability that bacteria other than cyanobacteria is present if a bacterial problem is present or a probability that bacteria other than cyanobacteria is present if a bacterial problem is not present; a probability that E-coli will be detected by an E-coli sensor if E-coli is present or a probability that E-coli will be detected by an E-coli sensor if E-coli is not present.
12. A method as recited in claim 11, wherein said estimating comprises calculations based on factors further comprising: a probability that sunlight is present if chlorophyll is in said high chlorophyll range, a probability that sunlight is not present if chlorophyll is in said high chlorophyll range, a probability that sunlight is present if chlorophyll is in said normal chlorophyll range, a probability that sunlight is not present if chlorophyll is in said normal chlorophyll range, a probability that sunlight is present if chlorophyll is in said low chlorophyll range, or a probability that sunlight is not present if chlorophyll is in said low chlorophyll range; a probability that at least a threshold wind is present if a bloom other than cyanobacteria is present, or a probability that at least a threshold wind is present if a bloom other than cyanobacteria is not present, a probability that at least a threshold wind is present if cyanobacteria is present, or a probability that at least a threshold wind is present if cyanobacteria is not present, a probability that cyanobacteria is present if toxin other than microcystin is present, a probability that cyanobacteria is present if toxin other than microcystin is not present, a probability that cyanobacteria is present if no toxin is present or a probability that cyanobacteria is present if toxin is present.
13. A method of evaluating a water sample for the presence of gasoline, comprising: obtaining at least a first evaluation of whether a water sample contains at least a minimum amount of benzene from a chemical sensor; obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of MTBE from a chemical sensor; obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of paraxylene from a chemical sensor; obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of metaxylene from a chemical sensor; obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of orthoxylene from a chemical sensor; obtaining at least a first evaluation of whether said water sample contains at least a minimum amount of toluene from a chemical sensor; and estimating a likelihood that said water sample contains gasoline, based on at least said first evaluations.
14. A method as recited in claim 13, wherein said estimating is carried out using logic comprising a chart in which: a condition of detected benzene presence is linked to said condition of presence of benzene;
said condition of detected MTBE presence is linked to said condition of presence of MTBE;
said condition of detected paraxylene presence is linked to said condition of presence ofparaxylene;
said condition of detected metaxylene presence is linked to said condition of presence of metaxylene;
said condition of detected orthoxylene presence is linked to said condition of presence oforthoxylene;
said condition of detected toluene presence is linked to said condition of presence of toluene; and
said conditions of presence of benzene, presence of MTBE, presence ofparaxylene, presence of metaxylene, presence oforthoxylene and presence of toluene are linked to said condition of presence of gasoline.
15. A method as recited in claim 14, wherein said chart containing said logic is a Bayesian network.
16. An apparatus comprising: a pH sensor; a turbidity sensor; a dissolved oxygen sensor; a temperature sensor; a chlorophyll sensor; a cyanobacteria detector; a microcystin detector; a bloom other than cyanobacteria detector; a wind sensor; a bacterial problem detector; an E-coli detector; a bacteria detector; a toxin detector; a data evaluation component which receives sensor data from said sensors and which generates data information based on evaluation of said sensor data; at least a first report generating component which receives data information from said data evaluation component, detector information from said detectors and expert information, and which generates first reports based on said expert information, said data information and said detector information.
17. An apparatus as recited in claim 16, wherein said data evaluation component comprises means for determining which of a plurality of data value ranges for a first parameter among said parameters a first data value for said first parameter falls within.
18. An apparatus as recited in claim 16, wherein said data evaluation component comprises means for determining which of a plurality of data value ranges for a first parameter among said parameters a first data quantity falls within, said first data quantity being calculated based on a plurality of data values for said first parameter obtained from one of said sensors.
19. An apparatus as recited in claim 16, wherein said data evaluation component comprises:
-means for performing a MIN/MAX/Low/High/ Acceptable detection routine, said MIN/MAX/Low/High/ Acceptable detection routine comprising:
-receiving a set of data values for a first parameter selected from among said parameters;
-assigning each data value which is less than a minimum possible value to a first category;
-assigning each data value which is within an acceptable range of values to a second category;
-assigning each data value which is greater than a maximum possible value to a third category;
-assigning each data value which is at least as large as said minimum possible value and less than a lowest value in said acceptable range to a fourth category; and
-assigning each data value which is not greater than said maximum possible value and which is greater than the highest value in said acceptable range to a fifth category;
-means for assigning said first level to said first indicator, assigning said first status to said second indicator and again performing said MIN/MAX/Low/High/ Acceptable detection routine if a number of data values in said fourth category exceeds a number of data values in said second category and exceeds a number of data values in said fifth category;
-means for assigning said first level to said first indicator, assigning said second status to said second indicator and again performing said MIN/MAX/Low/High/ Acceptable detection routine if said number of data values in said fifth category exceeds said number of data values in said second category and is at least as large as said number of data values in said fourth category; -means for performing a basic record creation routine if said number of data values in said second category is at least as large as said number of data values in said fourth category and is at least as large as said number of data values in said fifth category, said basic record creation routine comprising:
-dividing a range of values within said second category into a plural number of range segments;
-for each of said range segments, determining a quantity of said data values which fall within said range segment;
-characterizing a range segment having a maximum quantity of said data values as Rmax, and assigning said Rmax to a final range category;
-performing a next range segment analysis, said next range segment analysis comprising:
-if a next lower range segment has a greater quantity of data values than a quantity of data values in a next higher range segment, said next lower range segment including a highest range of values which is less than the lowest value in said final range category, said next higher range segment including a lowest range of values which is greater than the highest value in said final range category, and if said next lower range segment has a quantity of data values which is at least a minimum ratio of a quantity of data values in Rmax, adding said next lower range segment to said final range category and again performing said next range segment analysis;
-if said quantity of data values in said next higher range segment is at least as large as said quantity of data values in said next lower range segment and is at least said minimum ratio of said quantity of data values in Rmax, adding said next higher range segment to said final range category and again performing said next range segment analysis;
-if (a) said quantity of data values in said next lower range segment is greater than said quantity of data values in said next higher range segment, and said quantity of data values in said next lower range segment is less than said minimum ratio of said quantity of data values in Rmax, or (b) said quantity of data values in said next higher range segment is at least as large as said quantity of data values in said next lower range segment, and said quantity of data values in said next higher range segment is less than said minimum ratio of said quantity of data values in Rmax, performing a final range comparison routine, said final range comparison routine comprising:
-if at least one range segment has a quantity of data values which is at least said minimum ratio of said quantity of data values in Rmax and is not included in said final range, reducing said number of range segments by one and again performing said basic record creation routine;
-determining a quantity of said data values falling within a Low range, a quantity of said data values falling within an X range, a quantity of said data values falling within a Y range, a quantity of said data values falling within a Z range and a quantity of said data values falling within a High range,
-said Low range including all values which are not less than said minimum possible value and which are less than said lowest value in said acceptable range,
-said X range including all values which are at least as large as said lowest value in said acceptable range and less than a lowest value in said final range,
-said Y range including all values which are within said final range,
-said Z range including all values which are greater than a highest value in said final range and not larger than said highest value in said acceptable range; and
-said High range including all values which are not greater than said maximum possible value and which are greater than said highest value in said acceptable range;
-means for performing a current record creation routine, said current record creation routine comprising:
-receiving a fresh set of data values for said first parameter;
-determining a Low value, said Low value being a quantity of data values within said fresh set of data values which fall within said Low range;
-determining an X value, said X value being a quantity of data values within said fresh set of data values which fall within said X range;
-determining a Y value, said Y value being a quantity of data values within said fresh set of data values which fall within said Y range;
-determining a Z value, said Z value being a quantity of data values within said fresh set of data values which fall within said Z range;
-determining a High value, said High value being a quantity of data values within said fresh set of data values which fall within said High range; -if said Low value is greater than each of said X value, said Y value, said Z value and said High value, assigning said first level to said first indicator, assigning said first status to said second indicator and proceeding to a decreasing current record creation routine;
-if said High value is at least as large as said Low value, and greater than each of said X value, said Y value and said Z value, assigning said first level to said first indicator, assigning said second status to said second indicator and proceeding to an increasing current record creation routine;
-if said X value is at least as large as said Low value and at least as large as said High value, and greater than each of said Y value and said Z value, assigning a second level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine;
-if said Z value is at least as large as said Low value, at least as large as said High value, at least as large as said X value and greater than said Y value, assigning said second level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine; and
-if said Y value is at least as large as each of said Low value, said X value, said Z value and said High value, assigning a third level to said first indicator, assigning a third status to said second indicator and again performing said current record creation routine;
means for performing said decreasing current record creation routine, said decreasing current record creation routine comprising:
-receiving a new fresh set of data values for said first parameter; -determining a new Low value, said new Low value being a quantity of data values within said new fresh set of data values which fall within said Low range;
-determining an Xl value, said Xl value being a quantity of data values within said new fresh set of data values which fall within a first portion of said X range;
-determining an X2 value, said X2 value being a quantity of data values within said new fresh set of data values which fall within a second portion of said X range, said second portion of said X range including values which are greater than values in said first portion of said X range;
-determining an X3 value, said X3 value being a quantity of data values within said new fresh set of data values which fall within a third portion of said X range, said third portion of said X range including values which are greater than values in said second portion of said X range;
-determining a new Y value, said new Y value being a quantity of data values within said new fresh set of data values which fall within said Y range;
-determining a new Z value, said new Z value being a quantity of data values within said new fresh set of data values which fall within said Z range;
-determining a new High value, said new High value being a quantity of data values within said new fresh set of data values which fall within said High range;
-if said new High value is greater than each of said new Low value, said Xl value, said X2 value, said X3 value, said new Y value and said new Z value, assigning said first level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine;
-if said new Low value is at least as large as said new High value, and greater than each of said Xl value, said X2 value, said X3 value, said new Y value and said new Z value, assigning said first level to said first indicator, assigning said first status to said second indicator and again performing said decreasing current record creation routine;
-if said new Z value is at least as large as said new High value, at least as large as said new Low value, and greater than each of said Xl value, said X2 value, said X3 value and said new Y value, assigning said second level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine;
-if said Xl value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, and greater than each of said X2 value, said X3 value and said new Y value, assigning a fourth level to said first indicator, assigning said first status to said second indicator and again performing said decreasing current record creation routine;
-if said X2 value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, at least as large as said Xl value, and greater than each of said X3 value and said new Y value, assigning said second level to said first indicator, assigning said first status to said second indicator and again performing said decreasing current record creation routine;
-if said X3 value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, at least as large as said Xl value, at least as large as said X2 value, and greater than said new Y value, assigning said second level to said first indicator, assigning said first status to said second indicator and again performing said decreasing current record creation routine; and
-if said new Y value is at least as large as each of said new Low value, said Xl value, said X2 value, said X3 value, said new Z value and said new High value, assigning said third level to said first indicator, assigning said third status to said second indicator and again performing said current record creation routine;
means for performing said increasing current record creation routine, said increasing current record creation routine comprising:
-receiving a current fresh set of data values for said first parameter;
-determining a current Low value, said current Low value being a quantity of data values within said current fresh set of data values which fall within said Low range;
-determining a current X value, said current X value being a quantity of data values within said current fresh set of data values which fall within said X range;
-determining a current Y value, said current Y value being a quantity of data values within said current fresh set of data values which fall within said Y range;
-determining a Zl value, said Zl value being a quantity of data values within said current fresh set of data values which fall within a first portion of said Z range; -determining a Z2 value, said Z2 value being a quantity of data values within said current fresh set of data values which fall within a second portion of said Z range, said second portion of said Z range including values which are greater than values in said first portion of said Z range;
-determining a Z3 value, said Z3 value being a quantity of data values within said current fresh set of data values which fall within a third portion of said Z range, said third portion of said Z range including values which are greater than values in said second portion of said Z range;
-determining a current High value, said current High value being a quantity of data values within said current fresh set of data values which fall within said High range;
-if said current Low value is greater than each of said current X value, said current Y value, said Zl value, said Z2 value, said Z3 value and said current High value, assigning said first level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine;
-if said current High value is at least as large as said current Low value, and greater than each of said current X value, said current Y value, said Zl value, said Z2 value and said Z3 value, assigning said first level to said first indicator, assigning said second status to said second indicator and again performing said increasing current record creation routine;
-if said current X value is at least as large as said current Low value, at least as large as said current High value, and greater than each of said current Y value, said Zl value, said Z2 value and said Z3 value, assigning said second level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine; -if said Z3 value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, and greater than each of said current Y value, said Zl value and said Z2 value, assigning said fourth level to said first indicator, assigning said second status to said second indicator and again performing said increasing current record creation routine;
-if said Z2 value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, at least as large as said Z3 value, and greater than each of said current Y value and said Zl value, assigning said second level to said first indicator, assigning said second status to said second indicator and again performing said increasing current record creation routine;
-if said Zl value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, at least as large as said Z3 value, at least as large as said Z2 value, and greater than said current Y value, assigning said second level to said first indicator, assigning said second status to said second indicator and again performing said increasing current record creation routine; and
-if said current Y value is at least as large as each of said current Low value, said current X value, said Zl value, said Z2 value, said Z3 value and said current High value, assigning said third level to said first indicator, assigning said third status to said second indicator and again performing said current record creation routine.
20. An apparatus as recited in claim 16, wherein said data evaluation component comprises:
-means for performing a MIN/MAX/Low/High/ Acceptable detection routine, said MIN/MAX/Low/High/ Acceptable detection routine comprising: -receiving a set of data values for a first parameter selected from among said parameters;
-assigning each data value which is less than a minimum possible value to a first category;
-assigning each data value which is within an acceptable range of values to a second category;
-assigning each data value which is greater than a maximum possible value to a third category;
-assigning each data value which is at least as large as said minimum possible value and less than a lowest value in said acceptable range to a fourth category; and
-assigning each data value which is not greater than said maximum possible value and which is greater than the highest value in said acceptable range to a fifth category;
-means for assigning said first level to said first indicator, assigning said first status to said second indicator and again performing said MIN/MAX/Low/High/ Acceptable detection routine if a number of data values in said fourth category exceeds a number of data values in said second category and exceeds a number of data values in said fifth category;
-means for assigning said first level to said first indicator, assigning said second status to said second indicator and again performing said MIN/MAX/Low/High/ Acceptable detection routine if said number of data values in said fifth category exceeds said number of data values in said second category and is at least as large as said number of data values in said fourth category; -means for performing a basic record creation routine if said number of data values in said second category is at least as large as said number of data values in said fourth category and is at least as large as said number of data values in said fifth category, said basic record creation routine comprising:
-dividing a range of values within said second category into a plural number of range segments;
-for each of said range segments, determining a quantity of said data values which fall within said range segment;
-characterizing a range segment having a maximum quantity of said data values as Rmax, and assigning said Rmax to a final range category;
-performing a next range segment analysis, said next range segment analysis comprising:
-if a next lower range segment has a greater quantity of data values than a quantity of data values in a next higher range segment, said next lower range segment including a highest range of values which is less than the lowest value in said final range category, said next higher range segment including a lowest range of values which is greater than the highest value in said final range category, and if said next lower range segment has a quantity of data values which is at least a minimum ratio of a quantity of data values in Rmax, adding said next lower range segment to said final range category and again performing said next range segment analysis;
-if said quantity of data values in said next higher range segment is at least as large as said quantity of data values in said next lower range segment and is at least said minimum ratio of said quantity of data values in Rmax, adding said next higher range segment to said final range category and again performing said next range segment analysis;
-if (a) said quantity of data values in said next lower range segment is greater than said quantity of data values in said next higher range segment, and said quantity of data values in said next lower range segment is less than said minimum ratio of said quantity of data values in Rmax, or (b) said quantity of data values in said next higher range segment is at least as large as said quantity of data values in said next lower range segment, and said quantity of data values in said next higher range segment is less than said minimum ratio of said quantity of data values in Rmax, performing a final range comparison routine, said final range comparison routine comprising:
-if at least one range segment has a quantity of data values which is at least said minimum ratio of said quantity of data values in Rmax and is not included in said final range, reducing said number of range segments by one and again performing said basic record creation routine;
-determining a quantity of said data values falling within a Low range, a quantity of said data values falling within an X range, a quantity of said data values falling within a Y range, a quantity of said data values falling within a Z range and a quantity of said data values falling within a High range,
-said Low range including all values which are not less than said minimum possible value and which are less than said lowest value in said acceptable range,
-said X range including all values which are at least as large as said lowest value in said acceptable range and less than a lowest value in said final range,
-said Y range including all values which are within said final range,
-said Z range including all values which are greater than a highest value in said final range and not larger than said highest value in said acceptable range; and
-said High range including all values which are not greater than said maximum possible value and which are greater than said highest value in said acceptable range;
-means for performing a current record creation routine, said current record creation routine comprising:
-receiving a fresh set of data values for said first parameter;
-determining a Low value, said Low value being a quantity of data values within said fresh set of data values which fall within said Low range;
-determining an X value, said X value being a quantity of data values within said fresh set of data values which fall within said X range;
-determining a Y value, said Y value being a quantity of data values within said fresh set of data values which fall within said Y range;
-determining a Z value, said Z value being a quantity of data values within said fresh set of data values which fall within said Z range;
-determining a High value, said High value being a quantity of data values within said fresh set of data values which fall within said High range; -if said Low value is greater than each of said X value, said Y value, said Z value and said High value, assigning said first level to said first indicator, assigning said first status to said second indicator and proceeding to a decreasing current record creation routine;
-if said High value is at least as large as said Low value, and greater than each of said X value, said Y value and said Z value, assigning said first level to said first indicator, assigning said second status to said second indicator and proceeding to an increasing current record creation routine;
-if said X value is at least as large as said Low value and at least as large as said High value, and greater than each of said Y value and said Z value, assigning a second level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine;
-if said Z value is at least as large as said Low value, at least as large as said High value, at least as large as said X value and greater than said Y value, assigning said second level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine; and
-if said Y value is at least as large as each of said Low value, said X value, said Z value and said High value, assigning a third level to said first indicator, assigning a third status to said second indicator and again performing said current record creation routine;
means for performing said decreasing current record creation routine, said decreasing current record creation routine comprising:
-receiving a new fresh set of data values for said first parameter; -determining a new Low value, said new Low value being a quantity of data values within said new fresh set of data values which fall within said Low range;
-determining an Xl value, said Xl value being a quantity of data values within said new fresh set of data values which fall within a first portion of said X range;
-determining an X2 value, said X2 value being a quantity of data values within said new fresh set of data values which fall within a second portion of said X range, said second portion of said X range including values which are greater than values in said first portion of said X range;
-determining an X3 value, said X3 value being a quantity of data values within said new fresh set of data values which fall within a third portion of said X range, said third portion of said X range including values which are greater than values in said second portion of said X range;
-determining a new Y value, said new Y value being a quantity of data values within said new fresh set of data values which fall within said Y range;
-determining a new Z value, said new Z value being a quantity of data values within said new fresh set of data values which fall within said Z range;
-determining a new High value, said new High value being a quantity of data values within said new fresh set of data values which fall within said High range;
-if said new High value is greater than each of said new Low value, said Xl value, said X2 value, said X3 value, said new Y value and said new Z value, assigning said first level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine;
-if said new Low value is at least as large as said new High value, and greater than each of said Xl value, said X2 value, said X3 value, said new Y value and said new Z value, assigning said first level to said first indicator, assigning said first status to said second indicator and again performing said decreasing current record creation routine;
-if said new Z value is at least as large as said new High value, at least as large as said new Low value, and greater than each of said Xl value, said X2 value, said X3 value and said new Y value, assigning said second level to said first indicator, assigning said second status to said second indicator and proceeding to said increasing current record creation routine;
-if said Xl value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, and greater than each of said X2 value, said X3 value and said new Y value, assigning said first status to said second indicator, modifying said third portion of said X range to include all values which were within said second portion of said X range as well as all values which were within said third portion of said X range, dividing said first portion of said X range into a first Xl part and a second Xl part, said first Xl part having values lower than said second Xl part, said first Xl part becoming said first portion of said X range, said second Xl part becoming said second portion of said X range, and again performing said decreasing current record creation routine;
-if said X2 value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, at least as large as said Xl value, and greater than each of said X3 value and said new Y value, assigning said first status to said second indicator, modifying said third portion of said X range to include all values which were within said second portion of said X range as well as all values which were within said third portion of said X range, dividing said first portion of said X range into a first X2 part and a second X2 part, said first X2 part having values lower than said second X2 part, said first X2 part becoming said first portion of said X range, said second X2 part becoming said second portion of said X range, and again performing said decreasing current record creation routine;
-if said X3 value is at least as large as said new Low value, at least as large as said new High value, at least as large as said new Z value, at least as large as said Xl value, at least as large as said X2 value, and greater than said new Y value, assigning said first status to said second indicator, modifying said first portion of said X range to include all values which were within said second portion of said X range as well as all values which were within said first portion of said X range, dividing said third portion of said X range into a first X3 part and a second X3 part, said first X3 part having values lower than said second X3 part, said first X3 part becoming said second portion of said X range, said second X3 part becoming said third portion of said X range, and again performing said decreasing current record creation routine; and
-if said new Y value is at least as large as each of said new Low value, said Xl value, said X2 value, said X3 value, said new Z value and said new High value, assigning said third level to said first indicator, assigning said third status to said second indicator and again performing said current record creation routine;
means for performing said increasing current record creation routine, said increasing current record creation routine comprising:
-receiving a current fresh set of data values for said first parameter; -determining a current Low value, said current Low value being a quantity of data values within said current fresh set of data values which fall within said Low range;
-determining a current X value, said current X value being a quantity of data values within said current fresh set of data values which fall within said X range;
-determining a current Y value, said current Y value being a quantity of data values within said current fresh set of data values which fall within said Y range;
-determining a Zl value, said Zl value being a quantity of data values within said current fresh set of data values which fall within a first portion of said Z range;
-determining a Z2 value, said Z2 value being a quantity of data values within said current fresh set of data values which fall within a second portion of said Z range, said second portion of said Z range including values which are greater than values in said first portion of said Z range;
-determining a Z3 value, said Z3 value being a quantity of data values within said current fresh set of data values which fall within a third portion of said Z range, said third portion of said Z range including values which are greater than values in said second portion of said Z range;
-determining a current High value, said current High value being a quantity of data values within said current fresh set of data values which fall within said High range;
-if said current Low value is greater than each of said current X value, said current Y value, said Zl value, said Z2 value, said Z3 value and said current High value, assigning said first level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine;
-if said current High value is at least as large as said current Low value, and greater than each of said current X value, said current Y value, said Zl value, said Z2 value and said Z3 value, assigning said first level to said first indicator, assigning said second status to said second indicator and again performing said increasing current record creation routine;
-if said current X value is at least as large as said current Low value, at least as large as said current High value, and greater than each of said current Y value, said Zl value, said Z2 value arid said Z3 value, assigning said second level to said first indicator, assigning said first status to said second indicator and proceeding to said decreasing current record creation routine;
-if said Z3 value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, and greater than each of said current Y value, said Zl value and said Z2 value, assigning said second status to said second indicator, modifying said first portion of said Z range to include all values which were within said second portion of said Z range as well as all values which were within said first portion of said Z range, dividing said third portion of said Z range into a first Z3 part and a second Z3 part, said first Z3 part having values lower than said second Z3 part, said first Z3 part becoming said second portion of said Z range, said second Z3 part becoming said third portion of said Z range, and again performing said increasing current record creation routine;
-if said Z2 value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, at least as large as said Z3 value, and greater than each of said Zl value and said current Y value, assigning said second status to said second indicator, modifying said first portion of said Z range to include all values which were within said second portion of said Z range as well as all values which were within said first portion of said Z range, dividing said third portion of said Z range into a first Z2 part and a second Z2 part, said first Z2 part having values lower than said second Z2 part, said first Z2 part becoming said second portion of said Z range, said second Z2 part becoming said third portion of said Z range, and again performing said increasing current record creation routine;
-if said Zl value is at least as large as said current Low value, at least as large as said current High value, at least as large as said current X value, at least as large as said Z3 value, at least as large as said Z2 value, and greater than said current Y value, assigning said second status to said second indicator, modifying said third portion of said Z range to include all values which were within said second portion of said Z range as well as all values which were within said third portion of said Z range, dividing said first portion of said Z range into a first Zl part and a second Zl part, said first Zl part having values lower than said second Zl part, said first Zl part becoming said first portion of said Z range, said second Zl part becoming said second portion of said Z range, and again performing said increasing current record creation routine; and
-if said current Y value is at least as large as each of said current Low value, said current X value, said Zl value, said Z2 value, said Z3 value and said current High value, assigning said third level to said first indicator, assigning said third status to said second indicator and again performing said current record creation routine.
21. An apparatus as recited in claim 16, wherein said data evaluation component comprises: -means for receiving a set of first data values for at least a first parameter among said parameters, said first data values being generated over a first period of time between a beginning of said first period of time and an end of said first period of time;
-means for assigning each of said first data values to at least one of at least three initial ranges of values;
-means for identifying at least one first data set maximum range, each said first data set maximum range being one of said initial ranges which has a maximum number of said first data values;
-means for receiving a set of second data values for said first parameter, said second data values being generated over a second period of time, at least a portion of said second period of time being subsequent to said end of said first period of time;
-means for assigning each of said second data values to at least one of at least three later ranges of values; and
-means for identifying at least one second data set maximum range, each said second data set maximum range being one of said later ranges which has a maximum number of said current data values.
22. An apparatus as recited in claim 16, further comprising a second report generating component which receives information pertaining to said water sample or a body of water from which said water sample was taken and expert information, and which generates second reports based on said expert information, said information pertaining to said water sample of said body of water and data information received from said data evaluation component.
23. An apparatus as recited in claim 16, further comprising a decision-making component which makes decisions based on at least data information from said data evaluation component and said first reports.
PCT/US2005/034771 2005-03-21 2005-09-26 Methods and apparatuses for evaluating water samples WO2006101527A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US66379305P 2005-03-21 2005-03-21
US60/663,793 2005-03-21

Publications (1)

Publication Number Publication Date
WO2006101527A1 true WO2006101527A1 (en) 2006-09-28

Family

ID=37024098

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2005/034771 WO2006101527A1 (en) 2005-03-21 2005-09-26 Methods and apparatuses for evaluating water samples

Country Status (1)

Country Link
WO (1) WO2006101527A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103113877A (en) * 2013-01-11 2013-05-22 长春理工大学 Fluorescent probe for detecting microcystic toxin-LR in water
CN106295135A (en) * 2016-07-29 2017-01-04 河海大学 Piecewise regression catastrophe point determines shallow lake water quality management goal approach

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3214964A (en) * 1962-06-01 1965-11-02 Honeywell Inc Fluid analyzing instrumentation system
US5821405A (en) * 1996-02-29 1998-10-13 Hydrolab Corporation Modular water quality apparatus and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3214964A (en) * 1962-06-01 1965-11-02 Honeywell Inc Fluid analyzing instrumentation system
US5821405A (en) * 1996-02-29 1998-10-13 Hydrolab Corporation Modular water quality apparatus and method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103113877A (en) * 2013-01-11 2013-05-22 长春理工大学 Fluorescent probe for detecting microcystic toxin-LR in water
CN106295135A (en) * 2016-07-29 2017-01-04 河海大学 Piecewise regression catastrophe point determines shallow lake water quality management goal approach

Similar Documents

Publication Publication Date Title
Sepulveda et al. The elephant in the lab (and field): Contamination in aquatic environmental DNA studies
EP1581880B1 (en) Classification of deviations in a process
Sillberg et al. Water quality classification by integration of attribute-realization and support vector machine for the Chao Phraya River
Boztoprak et al. Prediction of sludge volume index bulking using image analysis and neural network at a full-scale activated sludge plant
Hernandez et al. Assessment and prediction of water quality in shrimp culture using signal processing techniques
CN110390429A (en) A kind of quality of water environment forecasting system neural network based and method
KR101984248B1 (en) Apparatus For Making A Predictive Diagnosis Of Nuclear Power Plant By Machine Learning
CN112288192A (en) Environment-friendly monitoring and early warning method and system
Chainho et al. Use of multimetric indices to classify estuaries with different hydromorphological characteristics and different levels of human pressure
CN107422088A (en) A kind of sewage monitoring management method and device
CN111191855B (en) Water quality abnormal event identification and early warning method based on pipe network multi-element water quality time sequence data
Rossi et al. Prediction of recreational water safety using Escherichia coli as an indicator: case study of the Passaic and Pompton rivers, New Jersey
CN111275951A (en) Information processing method, device and equipment and computer storage medium
CN117890546A (en) Lake ecological risk early warning and intervention method and system
CN116861798B (en) Online real-time residual life prediction method for vacuum dry pump based on XGBoost algorithm
Sadler et al. Computational surveillance of microbial water quality with online flow cytometry
CN116990479A (en) Water quality monitoring method, system, equipment and medium based on Zigbee technology
JP2007085828A (en) Water quality monitoring method and monitor
CN116756688A (en) Public opinion risk discovery method based on multi-mode fusion algorithm
KR20140117959A (en) Apparatus and method for provide of causative factors for stage of outflow water of wastewater treatment plant
WO2006101527A1 (en) Methods and apparatuses for evaluating water samples
Ba et al. Water quality monitoring with online change-point detection methods
CN117115637A (en) Water quality monitoring and early warning method and system based on big data technology
US20060069535A1 (en) System and method for converting data, and system and method for providing warning signals
KR101967633B1 (en) Apparatus For Making A Predictive Diagnosis Of Nuclear Power Plant By Machine Learning

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: RU

122 Ep: pct application non-entry in european phase

Ref document number: 05813242

Country of ref document: EP

Kind code of ref document: A1