The invention generally relates to determining the health status of an animal, and optionally for, the diagnosis and treatment of diseased animals. More particularly the invention relates to a system and method for determining a health status of animals such as livestock arriving at a feed location. The invention is yet further directed to a system and method of health screening for animals arriving at the feed location, such as a feed yard, to determine the likelihood the animals have or may develop bovine respiratory disease (BRD) so that the animals may be timely diagnosed and treated.
It is a continual and complex challenge to maintain livestock at an optimum state of health at a location, such as a feed yard, where animals are held in a relatively tight quarters. Livestock frequently suffer from respiratory disease, commonly referred to as bovine respiratory disease (BRD) at feed yards for many reasons. BRD is highly contagious, and a relatively healthy group of incoming animals to a feed yard can quickly become infected considering the close proximity of the animals during the feeding operations. Livestock are intentionally metabolically stressed in a feed yard environment to promote rapid weight gain. Most livestock management protocols and nutrition practices strive to maximize daily weight gain. However, the accelerated weight gain experience by livestock may degrade the ability of animals to mount natural compensatory responses to the environmental stresses placed upon the livestock. The metabolic challenges of weight gain, the exposure to infected animals, being placed within an unfamiliar environment and generally crowded conditions all contribute to stresses placed upon each animal's immune system.
There are a number of treatment approaches that have been undertaken to timely and effectively identify potentially sick and diseased animals who have been introduced to a feeding facility. One common treatment protocol is to treat all incoming animals to a feeding facility with an initial round of antibiotics as a preventative measure. While uniform administration of an antibiotic has the advantage of reducing occurrences of acute BRD for the incoming group of animals, there are of course disadvantages to include cost and the general undesirability of administrating antibiotics to healthy animals.
There are also a number of diagnostic protocols available to caregivers in determining the particular health status of an animal arriving at the feeding location. Respiratory and cardiovascular auscultation analysis is known for both livestock and humans. To make a diagnosis of an element based upon auscultated sounds, extensive empirical knowledge of various and diverse forms of auscultated sounds is necessary. In the past, auscultation analysis was in large part dependent upon the trained ear of the caregiver to discern abnormal auscultations since measured auscultation data may not have been available. More recently, with the development of electronic stethoscopes, auscultated sounds could be recorded in digital form. Software programs were developed to analyze the data to determine characteristics of the data which would indicate the severity of a disease condition such as BRD.
Despite the number of treatment protocols developed for treatment of BRD and other respiratory conditions of livestock in a feed yard environment, there are still significant shortcomings in treatment options that either sacrifice cost parameters by overtreatment, or under treat animals resulting in later economic losses by increased numbers of mortalities or acute disease occurrences.
Accordingly, there is still a need for an automated process or method that can result in a timely and economically viable diagnosis of BRD for large groups of animals located in environment such as feed yard facilities. There is also a need to provide the process or method that can be easily integrated within existing feed yard facilities without the need for significant capital expenditures on new equipment or significant data processing modifications. There is also a need to provide a process or method that can provide a caregiver with a nearly instantaneous indication as to whether a particular animal may require immediate treatment or whether the animal is healthy enough that it may be introduced into the livestock population within the feed facility without treatment.
These needs and others are met with the invention disclosed herein, as set forth in the following description and claims.
In accordance with the present invention, in one or more preferred embodiments, a system and method are provided for screening and treating respiratory diseased animals such as livestock.
In more general terms the invention, in various embodiments, provides an indication of a general health status of an animal; however, the invention does not require a diagnosis or treatment recommendation. Accordingly, it shall be understood that there is utilitarian value in determining a general health status of the animal to trigger other subsequent decisions regarding the animal. These other decisions may include diagnosis or treatment, but may also include decisions such as to whether to transport an animal to another location, to provide a different feeding protocol for the animal, to provide a different environment for the animal such as removal of the animal from a feed yard, and other decisions that involve the disposition of the animal.
According to another embodiment of the invention, it includes a data processing system that is directed to the method of screening and treating respiratory diseased animal.
According to one or more preferred embodiments, upon arrival of an animal to the feedlot or other location, measurements are taken of each incoming animal. These measurements are inputs into one or more algorithms which are used to provide a general health status of the animal, and to also optionally predict whether the animal is likely to become sick, to include whether the animal may already show symptoms or indications of being sick. The primary disease condition addressed by the present invention is BRD; however, principles of the invention are also applicable to other respiratory conditions of the animals being evaluated.
Upon arrival, measurements taken of an animal include the respiratory rate, heart rate, rectal temperature, and body weight. These measurements are recorded and stored in a data processing system of the invention. For each animal evaluated upon arrival, the measurements are used as inputs to one or more algorithms which in turn, provide an indication of the health status of the animal. The rectal temperature and body weight measurements can be considered direct inputs to the algorithms. The data transferred from corresponding field devices such as digital thermometers and weigh scales are provided in digital forms that do not require additional signal processing. However for the respiration and heart rate data, the data obtained is by auscultation, thus the data is in the form of raw sound data (such as a .WAV format) that must undergo some processing to digitize the data in a form that can be used in the algorithm. Signal processing may include, for example, harmonic extraction and Fourier transform analyses to obtain appropriate signal amplitudes representative of the actual respiratory and heart rates.
According to one preferred embodiment of a method of the invention, a determination is made as to a health status of the animal to trigger a subsequent recommendation or decision. According to a particular preferred embodiment, the decision is whether to treat an animal or not treat the animal based upon use of a gradient boosted tree algorithm in which execution of the algorithm generates a “treat” or “don't treat” decision. For example, a “treat” decision may trigger a predetermined treatment protocol for the particular evaluated animal, while a “don't treat” decision calls for releasing the animal to the feedlot population without any treatment.
One general characteristic of the algorithm is that the decision generated for treat/don't treat is weighted more heavily for treatment as opposed to no treatment. Another general characteristic of the algorithm is that the algorithm is more heavily influenced or “trained” based upon cases of morbidity that are identified within the first 60 days on arrival. This 60 day window provides a reliable indication as to both active BRD for animals on arrival as well as transmitted cases of BRD while the animal is retained within the feedlot. In other words, this window is effective to capture BRD diseased animals that were sick on arrival to the feedlot as well as animals that contract the disease from other animals that may have been sick upon arrival.
Gradient boosting is known as a machine learning technique for both classification and regression problems. The execution of a boosted tree algorithm provides a prediction model in the form of decision trees. The model defines the problem to be solved in which the decision trees provide the framework for an incremental analysis of the problem but ultimately allowing optimization of the analysis of predetermined parameters making up the decision trees, referred to as decision “stumps” or binary recursive partitions.
Stated in another way, the machine learning technique of the invention enables a programmed computer processor to “learn” or otherwise optimize a solution to a defined problem, without the processor having to be explicitly programmed to optimize the solution despite wide variances in input data as well as wide variances in data patterns or trends. Accordingly, the gradient boosting algorithm of the invention results in a computer processor automatically providing an optimal solution, such as the treat/don't treat decision.
According to one method of the invention, in one or more preferred embodiments, the gradient —boosted tree algorithm (hereinafter the “algorithm”) generates a decision to treat/not treat based on a majority decision of the results of the algorithm where a “treat” decision is weighted more heavily than the “do not treat” decision, as mentioned.
The recorded breathing sounds may be expressed as a selected summary of features (h1, . . . h10) wherein these 10 features have been shown to be an adequate parametrization of the sample sound data.
As discussed in further detail below, another feature of the invention is the use of a digital electronic stethoscope for auscultation in which the stethoscope has a plurality of audio sensors. A recorded sound event for use in the algorithm may be an average or pre-selected synthesis of raw sound signal data recorded by the audio sensors. Further, the recorded sounds have values extracted from the corresponding raw signal data recorded in which one or more bandpass filters are applied to capture breathing attributed to acute, chronic disease condition frequencies, and ambient noise frequencies. For example, 5 bandpass filters could be applied in which the filters are arranged for recorded sounds representative of the disease condition and ambient noise frequencies as follows: (1) an IIR Butterworth filter with FS=1000 Hz and FC=400 Hz applied to capture breathing attributed to chronic level of disease-severity (2) an IIR Butterworth filter with FS=1000 Hz and FC=80 Hz applied to capture breathing attributed to an acute level of disease severity; (3) An IIR Butterworth filter with FS=1000 Hz and FC=180 Hz is applied to capture quiet ambient noise levels in the recording useful for normalization; (4) an IIR Butterworth filter with FS=1000 Hz and FC=115 Hz is applied to capture medium ambient noise levels in the recording useful for normalization; and (5) an IIR Butterworth filter with FS=1000 Hz and FC=90 Hz Is applied to capture low ambient noise levels in the recording useful for normalization. It should be understood that these five bandpass filter conditions are provided as examples. Accordingly, different bandpass filter arrays can be applied in response to any desired disease condition or ambient noise frequencies that may be presented.
The recorded respiratory rate in may be expressed as (rr). The recorded heart rate in the algorithm may be expresses as (hr). The recorded body weight (bw) is used in the algorithm as a proxy for age. The rectal temperature may be expressed as (rt). Rectal temperature, which is an indication of current disease, is not required to be a direct algorithm input, but may be a direct algorithm input when data is available.
Some additional inputs to the algorithm include expressions of the recorded data to include the following: (a) a cardio-pulmonary ratio (cpr), calculated as
is a ratio that represents the magnitude of stress experienced by cattle on arrival. The greater the value of the ratio, the greater the stress experienced by the animal; (b) a cardiac breath gap (cbg), calculated as (hr−rr). (c) a cardiac index (ci), calculated as
that is a relationship between heart performance and cattle size; and (d) a cardiac max (cm), calculated as
is an estimation of how efficiently the animal is consuming oxygen on arrival
One advantage to providing multiple inputs to the algorithm of the present invention, as opposed the prior art that has fewer inputs and does provide input combinations of the invention as described herein, is that the prior art algorithms or logic are more prone to generating incorrect decisions or conclusions in which one input factor or variable may overly influence the outcome of the algorithm.
According to preferred embodiments of the invention, there are a number of architecture models that may be adopted. Four of these models may include the following: (1) a model including both bw and rt; (2) a model including bw and not rt; (3) a model including rt and not bw; and (4) a model including neither. Though inputs may be omitted based on which model is applied, the tree-generation process is the same for each selected architecture model.
The gradient boosted tree algorithm of the invention can be interpreted as a series of conditional statements involving a subset of the number of inputs. The gradient boosted tree algorithm may be represented by exemplary model architecture that comprises a plurality of decision stumps, or a binary recursive partitions.
For example, at node Ji, an instance is passed to the left if it satisfies the condition relating to input variable Xi, and right otherwise.
Continuous inputs fulfill mathematical operators (<, >, ≥, ≤) in relation to a threshold ti, whereas nominal inputs must simply be members of an explicit list of values (ϵ [a, b, . . . , z]). Repeated splits on the same input are allowed. According to one preferred embodiment of the algorithm, the inputs are all continuous and comprise the data captured that is common to all animals being evaluated, that is, the data captured for rectal temperature, body weight, respiration rate and heart rate. According to another embodiment of the algorithm, it may further incorporate nominal inputs, that is, additional information about other preselected or predefined categories of the animals. Once example of a nominal input is classifying cattle based on breed. Accordingly, a treatment decision could be generated based on breed-particular conditions that could vary between breeds.
A sequence of nested stumps collectively forms a tree, also known as a weak learner or classifier. Values for thresholds t are chosen by optimizing a “split function”, which chooses the best input variable and the best value for that input variable that result in the largest reduction in “cost”. There is also a penalty for misclassifying, which is represented empirically by a mathematical function “Cost” may be defined as the error or deviation in a predicted output from an actual output. A best input value is chosen based on the largest reduction in cost or smallest mean error calculated when optimizing a split function. For example, an optimal statistical measure of distribution may be chosen, such as a Gini Index, which is one of many that can be used to measure purity of groups of data created by a split function.
The gradient boosting tree algorithm of the invention may be optimized by executing sequentially created new classifiers and repeatedly applying these classifiers to re-weighted versions of training data. The training data may comprise a percentage of previously recorded data over a period of time.
After each boosting iteration, or creation of a new classifier, misclassified instances of the training data have their weights increased, and correctly classified instances have their weights decreased. Hence, each successive classifier focuses on instances that have been hard to classify in the previous steps. By executing the gradient boosting tree algorithm of the invention, this methodology minimizes the number of instances of “false positive” conclusions, for example, assigning a sick animal with the decision to not treat upon arrival to the feed facility.
According to the invention, each model generated m ϵ (1, 2, . . . , M) is added sequentially until no further improvements can be made, that is, no further reductions in cost can be achieved or no smaller errors are capable of being computed. New models are created that predict the residuals or error of prior models, and then added together to make a subsequent improved model. After M iterations, the predictions of each model/weak learner are combined into a final prediction based on a weighted majority vote In other words, each instance is passed to each tree/weak learner and classified as either a treat/don't treat decision. The final decision or majority vote of the overall classifier is the total weighted counts of the individual treat/don't treat learners.
According to one aspect of the invention, the algorithm of the invention can be expressed as a base mathematical function. The mathematical function can be defined as a gradient boosted tree algorithm as follows:
F0(x)=arg min γ Σi=1nL(yi, γ) in which the function classifies a decision to treat or not treat an animal, and where:
γ represents the specific combination of inputs that arrive at the decision, and
Σ L represents the misclassification error, or number of falsely estimated instances i in the training set when compared to the true label yi. The invention seeks to minimize the classification error.
The gradient-boosted algorithm improves on classifier F0 by constructing a new classifier h(x), that adds an estimator to provide a better model i.e. Fm+1(x)=Fm(x)+hm(x). A perfect h(x) would imply that Fm(x)+h(x)=y, the true label. Therefore gradient-boosting will fit h(x) to the residual y−Fm(x). For m ϵ (1, 2, . . . , M), compute a pseudo-residual (
for each instance i. The pseudo-residual rim is the numerical representation of the degree to which this instance was misclassified. Next, fit a classifier hm(x) to the pseudo-residuals i.e. train it using the training set (xi, rim) rather than (xi, yi). Capture the effects of the misclassified data via the multiplier γm, which is computed by solving the optimization problem:
γm =arg min γ Σi=1nL(yi, Fm−1(Xi)+γhm(xi)).
Next, Update the classifier as Fm(x)=Fm−1(x)+γmhm(x), which represents a gradient-boosted tree, as the misclassified instances have had their weights increased by γm. The final prediction or output FM(x), is computed as the majority vote of the individual predictions from each Fm(x).
Below is one schematic representation of an exemplary gradient boosted tree FM1 in which the tree comprises a plurality of decision stumps. In this example, the algorithm is executed and the “vote” or outcome of the executed algorithm results in a “don't treat” decision.
Below is another schematic representation of an exemplary gradient boosted tree FM2 in which the tree again comprises a plurality of decision stumps. In this example, the algorithm is executed and the “vote” or outcome of the executed algorithm results in a “ treat” decision.
In summary, a number of classifiers or individual trees are executed. The majority vote or decision to treat or not to treat an animal can be determined by the majority treat/don't treat conclusion/decision from each decision tree. However, in accordance with the present invention, a treat conclusion/decision from an executed decision tree is preferably weighted more heavily than a don't treat conclusion/decision, since it is desirable to prevent missing a potential instance of treating a sick animal. It is also contemplated within the invention that any executed decision tree with a treat conclusion/decision can result in an output to a user instructing treatment of the animal.
The iterative computations conducted in the boosting tree algorithm of the invention creates shallow decision trees (i.e. a small J), and sources the misclassification error of the previous trees to sequentially build a strong ensemble, or final majority vote, of weak learners/classifiers. This differs from a comparable approach known as “random forest”, which consists of creating many deep but de-correlated trees in parallel. The number of iterations/trees M is typically larger, though each is still based on a random subset of inputs/features p and grown to a maximum depth J, with a final prediction based on a majority vote.
The boosted tree algorithm of the invention is advantageous because it is easy to interpret, performs automatic input-variable selection, scales well to large data sets and is relatively robust to outliers.
By the foregoing, it should be understood that the algorithm of the invention is not a static mathematical equation that results in calculation of a decision to treat or not treat based on a single computation of an equation. On the contrary, the algorithm of the invention may also be considered or defined as a plurality of sequential logic computations in which “machine learning” characteristics of a boosted tree architecture optimizes a decision to treat or not treat a particular animal being evaluated.
One preferred way to obtain input for measurement data is by stethoscopic evaluation of an animal. Collection of heart and lung sounds is preferably obtained by a digital/electronic stethoscope. Optionally, it may be desirable to select a stethoscope that is capable of expressing sounds in the form of a visible spectrogram so that the user may confirm heart and lung sounds are being obtained. Data collected from the stethoscope is stored and then used within the algorithm of the invention by a computer processor that executes computer coded instructions corresponding to the algorithm as selectively programmed.
The specific placement of the stethoscope can be determined by a caregiver, it being known that one manner to obtain heart and lung sounds is to place the digital stethoscope a few inches above the right elbow of the animal thereby placing the stethoscope over the right apical lobe. Similarly, sounds can be gathered on the left side a few inches above the left elbow thereby placing the stethoscope over the left cardiac lobe.
According to one aspect of the invention, one preferred device for capturing auscultated sounds from an animal includes a digital stethoscope incorporating a chest piece that communicates wirelessly with a computer processor to receive and store the recoded data. The selected computer processor applies the algorithm to the recorded data, and a tangible output is produced that provides an indication of whether to treat or not to treat the animal. This output may be communicated to one or more mobile communication devices that are held by the caregiver thereby providing a caregiver a nearly instantaneous decision as to sorting of the animal at the arrival location and whether the animal requires treatment. Typically, as an animal enters a feeder, the animal is processed within a confined chute. Based upon experimentation, it is been found that once the stethoscope records animal data, the algorithm can be run on a selective computing device and an output to the caregiver can be provided in less than about 10 seconds. If treatment is required, the animal can be held within the chute to receive treatment that corresponds to the treatment decision, such as one or more inoculations.
In addition to the treat/don't treat decision, other indications can be generated for the caregiver which may include a message or report that summarizes the perceived health of the animal as judged by the algorithm applied to the recorded heart and lung sounds. One example may include a message produced on a user interface of a computing device that shows the raw recorded data along with a recommendation for treatment such as dosage for a particular medication. Other information can be displayed about the animal that was evaluated, such as historical treatment information which may be used to determine the proper current treatment if execution of the algorithm results in the treat decision.
According to another aspect of the invention, the digital stethoscope may be more particularly in the form of a wireless audio digital recording unit that incorporates the use of a multi-channel microphone. The multi-channel microphone may have a plurality of sensors in which the sensor readings can be averaged or normalized thereby providing a more accurate way to record data. The recording unit may include a curved shape paddle that is designed to conform to match the curvature of the chest area of the particular animal which the devices to be used. The recording unit can be secured to an extension arm held by the caregiver enabling the caregiver to be positioned in a safe distance from the animal within the chute.
Considering the foregoing, according to one particular aspect of the invention, it may be considered a method for screening and treating an animal utilizing recorded auscultations and other recorded data of the animal including body weight and rectal temperature.
According to another aspect of the invention, it may be considered an integrated system for determining a health status of an animal utilizing the recorded auscultations and other recorded data. The integrated system includes one or more data processing devices, a number of field devices that communicate with the data processing device(s) for gathering extensive data regarding the incoming animals and to provide predictive health observations to a caregiver. The field devices at least include a digital audio recording unit for recording auscultations. Other field devices may include weigh scales, temperature probes, RFID readers, and other diagnostic equipment. A desired communication protocol may be adopted for communication between the field devices and the data processing device(s) such as wireless communication protocol.
According to yet another aspect of the invention, it may be considered a data processing system for automatically generating a decision whether to treat an animal by use of an algorithm with inputs to the algorithm comprising the recorded auscultations and other recorded data, and subsequently providing a viewable output to a user that conveys the decision.
According to one particular preferred embodiment of the invention, it may be expressed as a system for determining a health status of an animal upon arrival at a location, comprising: a computer processor for receiving and storing biometric data; at least one recording device for capturing and recording biometric data from the animal, said device communicating with said computer processor, said device including at least an audio recorder that records the biometric data obtained by auscultated heart and lung sounds of the animal; computer coded instructions executed by said computer processor including at least one algorithm for determining the health status; a user interface associated with the computer processor for displaying information obtained by execution of said computer processor; and wherein said algorithm includes a gradient boosted tree algorithm comprising input variables obtained from the recorded biometric data and corresponding to the recorded heart and lung sounds.
Further according to this first particular preferred embodiment, a number of additional optional features may be included. These optional features may be provided alone or in combination with one another as follows:
F
0(x)=arg min γ Σi=1nL(yi, γ);
said cpr ratio representing a magnitude of stress experienced by the animal upon arrival at the location;
said ci index representing a relationship between heart performance and size of the animal; and
said cm representing an estimation of how efficiently the animal is consuming oxygen upon arrival at the location;
According to another particular preferred embodiment of the invention, it may be expressed as a method for determining a health status of an animal upon arrival at a location, comprising:
providing a computer processor for receiving and storing biometric data; providing at least one recording device; recording raw biometric data from the animal by use of at least an audio recorder that records heart and lung sounds; converting the raw biometric data recorded to manipulated heart and lung sound data; providing computer coded instructions executed by the computer processor including at least one algorithm for determining a health status of the animal; executing the algorithm with input variables corresponding to the manipulated heart and lung sound data; generating a user interface associated with the computer processor for displaying to a user a health status of the animal; and wherein said algorithm includes a gradient boosted tree algorithm comprising input variables corresponding to the manipulated heart and lung sound data of the animal.
Further according to this second particular preferred embodiment, a number of additional optional features may be included. These optional features may be provided alone or in combination with one another as follows:
F
0(x)=arg min γ Σi=1nL(yi, γ);
said cpr ratio representing a magnitude of stress experienced by the animal upon arrival at the location;
said ci index representing a relationship between heart performance and size of the animal; and
said cm representing an estimation of how efficiently the animal is consuming oxygen upon arrival at the location;
According to yet another particular preferred embodiment of the invention, it may be expressed as a non-transitory computer-readable medium containing computer executable instructions, wherein, when executed by a computer processor, the instructions cause the computer processor to execute a method to determine a health status of an animal the computer-readable instructions comprising: instructions to receive and store data corresponding to recorded heart and lung sounds; instructions to convert the recorded heart and lung sounds to manipulated heart and lung sound data; instructions to execute an algorithm to determine the health status of the animal, wherein the algorithm comprises input variables corresponding to the manipulated heart and lung sound data; instructions to generate a user interface associated with the computer processor for displaying to a user the health status of the animal, wherein said health status includes technical recommendations for further evaluating whether the health status requires further analysis; and wherein said algorithm includes a gradient boosted tree algorithm comprising input variables corresponding to the manipulated heart and lung sound data of the animal.
Further according to this third particular preferred embodiment, a number of additional optional features may be included. These optional features may be provided alone or in combination with one another as follows:
F
0(x)=arg min γ Σi=1nL(yi, γ);
said cpr ratio representing a magnitude of stress experienced by the animal upon arrival at the location;
said ci index representing a relationship between heart performance and size of the animal; and
as said cm representing an estimation of how efficiently the animal is consuming oxygen upon arrival at the location;
It should be understood that while embodiments of the invention are particularly suited for animals such as cattle arriving at a feedlot, the feedlot environment for cattle is just one particular environment in which the invention can be applied. Other examples in which the invention applies includes, but is not limited to, determining a health status of, and optionally diagnosis and treatment, for swine, sheep, horses, bison, and other domesticated animals. Further, while the arrival location is described as a feedlot or feed yard, the invention is not limited to any particular arrival location.
Other features and attributes of the invention will become apparent from the following detailed description taken in conjunction with the exemplary figures.
Once the user completes entry of new information about the animal record to be created, or if information about the animal is has been automatically uploaded (such as by RFID tag data), this figure also shows a function for the user to begin reading biometric data for the animal, shown at block 14. A digital recording unit such as an electronic stethoscope can be used to record auscultation data. Accordingly, as detailed further below, the digital recording unit communicating with a data processor of the associated computer processing system of the invention enables the upload of the auscultation data.
Further information shown in the sample user interface of
Although
Referring also to
System 100 further includes a communications network 110. The network 110 may be any type of network familiar to those skilled in the art that can support data communications using any of a variety of commercially-available protocols, including without limitation TCP/IP, SNA, IPX, AppleTalk®, and the like. Merely by way of example, the communications network 110 maybe a local area network (“LAN”), such as an Ethernet network, a Token-Ring network and/or the like; a wide-area network; a virtual network, including without limitation a virtual private network (“VPN”); the Internet; an intranet; an extranet; a public switched telephone network (“PSTN”); an infra-red network; a wireless network (e.g., a network operating under any of the IEEE 802.11 suite of protocols, the Bluetooth™ protocol known in the art, and/or any other wireless protocol); and/or any combination of these and/or other networks.
The system may also include one or more server computers 120. One type of server may include a web server used to process requests for web pages or other electronic documents from user computers 102, 104, and network 106. The web server can be running an operating system including any of those discussed above, as well as any commercially-available server operating systems. The web server can also run a variety of server applications, including HTTP servers, FTP servers, CGI servers, database servers, Java servers, and the like. In some instances, the web server may publish operations available as one or more web services.
The system 100 may also include one or more file and/or application servers, which can, in addition to an operating system, include one or more applications accessible by a client running on one or more of the user computers 102, 104, and network 106. The file/application server(s) may be one or more general purpose computers capable of executing programs or scripts in response to the user computers 102, 104, and network 106. As one example, the server may execute one or more web applications. The web application may be implemented as one or more scripts or programs written in any programming language, such as Java®, C, C#™ or C++, and/or any scripting language, such as Perl, Python, or TCL, as well as combinations of any programming/scripting languages. The application server(s) may also include database servers, including without limitation those commercially available from Oracle®, Microsoft, Sybase®, IBM® and the like, which can process requests from database clients running on a user computer.
In one functional aspect, an application server may create web pages dynamically for displaying the functionality associated with the system to include the user interface of
The system 100 may also include a database 130. The database 130 may reside in a variety of locations. By way of example, database 130 may reside on a storage medium local to (and/or resident in) one or more of the computers 102, 104, and network 106. Alternatively, it may be remote from any or all of the computers 102, 104, and network 106, and in communication (e.g., via the network 110) with one or more of these. In a particular set of embodiments, the database 130 may reside in a storage-area network (“SAN”). Similarly, any necessary files for performing the functions attributed to the computers 102, 104, and network 106 may be stored locally on the respective computer and/or remotely, as appropriate. The database 130 may be a relational database, such as Oracle® database, that is adapted to store, update, and retrieve data in response to SQL-formatted commands.
The system may further include one or more mobile devices 140 such as “smart phones”. These mobile devices 140 communicate with the network 110 as by a web interface. The network 110 may also represent a cloud provider who facilitates communication with communication endpoints or computers of the customer network 106. The mobile devices 140 may communicate with any other of the computers in the system through the network 110, such as the feed yard computer system 102 as also shown in
In accordance with any of the computers 102, 104, and 106, these may be generally described as general-purpose computers with elements that cooperate to achieve multiple functions normally associated with general purpose computers. For example, the hardware elements 102, 104, and 106 may further include one or more input devices (e.g., a mouse, a keyboard, etc.); and one or more output devices (e.g., a display device, a printer, etc.). The computers may also include one or more storage devices. By way of example, storage device(s) may be disk drives, optical storage devices, solid-state storage device such as a random access memory (“RAM”) and/or a read-only memory (“ROM”), which can be programmable, flash-updateable and/or the like.
Each of the computers and server described herein may include a computer-readable storage media reader; a communications peripheral (e.g., a modem, a network card (wireless or wired), an infra-red communication device, etc.); working memory, which may include RAM and ROM devices as described above. The server may also include a processing acceleration unit, which can include a DSP, a special-purpose processor and/or the like.
The computer-readable storage media reader can further be connected to a computer-readable storage medium, together (and, optionally, in combination with storage device(s)) comprehensively representing remote, local, fixed, and/or removable storage devices plus storage media for temporarily and/or more permanently containing computer-readable information. The computers and serve permit data to be exchanged with the network 110 and/or any other computer, server, or mobile device.
The computers and server also comprise various software elements and an operating system and/or other programmable code such as program code implementing a web service connector or components of a web service connector. It should be appreciated that alternate embodiments of a computer may have numerous variations from that described above. For example, customized hardware might also be used and/or particular elements might be implemented in hardware, software (including portable software, such as applets), or both. Further, connection to other computing devices such as network input/output devices may be employed.
It should also be appreciated that the method described herein may be performed by hardware components or may be embodied in sequences of machine-executable instructions, which may be used to cause a machine, such as a general-purpose or special-purpose processor or logic circuits programmed with the instructions to perform the methods. These machine-executable instructions may be stored on one or more machine readable mediums, such as CD-ROMs or other type of optical disks, ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cards, flash memory, or other types of machine-readable mediums suitable for storing electronic instructions. Alternatively, the methods may be performed by a combination of hardware and software.
The term “software” as used herein shall be broadly interpreted to include all information processed by a computer processor, a microcontroller, or processed by related computer executed programs communicating with the software. Software therefore includes computer programs, libraries, and related non-executable data, such as online documentation or digital media. Executable code makes up definable parts of the software and is embodied in machine language instructions readable by a corresponding data processor such as a central processing unit of the computer. The software may be written in any known programming language in which a selected programming language is translated to machine language by a compile, interpreter or assembler element of the associated computer.
Considering the foregoing exemplary computer and communications network and elements described therein, In connection with one embodiment of the invention, it may be considered a software program or software platform with computer coded instructions that enable execution of the functionality associated with the user interface of
In connection with another embodiment of the invention, it may be considered a combined software and hardware system including (a) a software program or software platform with computer coded instructions that enable execution of the functionality associated with the user interfaces of
In connection with yet another embodiment of the invention, it may be considered a sub-combination including one or more user interfaces generated by the software and the field devices that provide inputs to a data processor of a computer that runs the software for purposes of generating the treatment decision by use of the algorithm.
While the invention is described herein with respect to multiple preferred embodiments, it should be understood that the invention is not strictly limited to these embodiments and therefore, the invention in totality should be considered commensurate with the scope of the claims appended hereto.
This application is a national stage application under 35 U.S.C. 371 of PCT Application No. PCT/US20/44769 having an international filing date of Aug. 3, 2020, which designated the United States, which PCT application claimed the benefit of U.S. application Ser. No. 62/883,937, filed Aug. 7, 2019, entitled SYSTEM AND METHOD FOR DETERMINING STATUS OF HEALTH OF ANIMALS ARRIVING AT A FEED LOCATION. Both of which are incorporated by reference in their entirety.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US20/44769 | 8/3/2020 | WO |
Number | Date | Country | |
---|---|---|---|
62883937 | Aug 2019 | US |