Claims
- 1. An apparatus for determining the coefficients of a function representative of an input signal based on a predetermined plurality of sequential samples, wherein said apparatus comprises a coefficient generator which updates at least one of the coefficients on the receipt of each sample, and wherein said coefficient generator corrects the coefficients so that the coefficients represent a correct sample sequence.
- 2. An apparatus according to claim 1, wherein each coefficient is comprised of at least one term that is at least partially based upon a combination of a sample and a mathematical function, wherein said coefficient generator determines a respective term of each coefficient by combining each sample upon receipt with the mathematical function associated with the sample and the coefficient, and wherein, for each coefficient, said coefficient generator updates the coefficient by adding the respective term to a previous value of the coefficient.
- 3. An apparatus according to claim 2, wherein said coefficient generator updates each of the coefficients with each of the plurality of samples as each sample is received, wherein as each coefficient is updated with the last of the plurality of samples, and wherein each coefficient is corrected so that the coefficient contributions are based on the appropriate angle for each sample, said coefficient generator outputs the coefficient.
- 4. An apparatus according to claim 2, wherein said coefficient generator simultaneously updates each of the coefficients based on each of the plurality of samples as each sample is received, and wherein when the coefficients are updated and corrected, said coefficient generator outputs the coefficients.
- 5. An apparatus according to claim 2, wherein said coefficient generator further comprises a memory device, and wherein said coefficient generator further stores each of the samples as they are received in said memory device.
- 6. An apparatus according to claim 5, wherein after said coefficient generator has received and processed the predetermined plurality of samples, said coefficient generator outputs the coefficients, and wherein when a new sample of the input signal is received after the predetermined plurality of samples has already been received, said coefficient generator subtracts the term based upon a first sample of the predetermined plurality of samples that was previously stored in said memory device from the term based upon the new sample, and wherein said coefficient generator updates the coefficients by the difference between the terms based upon the new sample and the first sample of the predetermined plurality of samples.
- 7. An apparatus according to claim 5, wherein after said coefficient generator has received and processed the predetermined plurality of samples, said coefficient generator outputs the coefficients, and wherein when a new sample of the input signal is received after the predetermined plurality of samples have already been received, said coefficient generator subtracts the term based upon a first sample of the predetermined plurality of samples that was previously stored in said memory device from each of the coefficients, and wherein said coefficient generator adds the term based upon the new sample to each of the coefficients.
- 8. An apparatus according to claim 2, wherein the mathematical function of the input signal is the previous value of a Fourier transform coefficient, and wherein the output is the new coefficient according to the equation
- 9. An apparatus according to claim 2, wherein there is at least one preselected coefficient of interest, and wherein said coefficient generator receives each of the samples one at a time and updates the preselected coefficient of the function based on each sample as the sample is received, such that the preselected coefficient may be evaluated independent of the other coefficients.
- 10. An apparatus according to claim 9, wherein said coefficient generator outputs the preselected coefficient each time the coefficient is updated.
- 11. An apparatus according to claim 2, wherein the function of the input signal is a Fourier transform, and wherein the mathematical function associated with each coefficient and signal is a trigonometric function, and wherein said coefficient generator updates the corrected based on a rotating reference system, and wherein the correct coefficients are related to the updated coefficients according to the equations
- 12. A method for continuously determining the coefficients of a function representative of an input signal based on a predetermined plurality of samples of the input signal, the method comprising the steps of:
A. obtaining a complete set of coefficients, C, for a set of samples; B. receiving a new sample; C. calculating coefficient contribution for the new sample; D. obtaining coefficient contribution for the oldest sample; E. calculating updated coefficients as C−oldest sample contribution+new sample contribution; F. calculating corrected coefficients from the updated coefficients by replacing the angles in the trigonometric functions with the angle that corresponds to the appropriate sample number; and G. repeating steps B through G.
- 13. A method according to claim 12 further comprising the step of storing each of the samples as they are received in a memory device.
- 14. A method according to claim 13, wherein after said receiving step has received and said updating step has processed the predetermined the new sample, and said calculating step has corrected the coefficients, outputting the coefficients.
- 15. A method according to claim 12, wherein the function of the input signal is a Fourier transform, and wherein the mathematical function associated with each coefficient and signal is a trigonometric function.
- 16. A method according to claim 12, further comprising the step of outputting the preselected coefficient each time the coefficient is updated.
- 17. An apparatus for determining the coefficients of a function for a given input signal based on a sample of the input signal, wherein each coefficient is comprised of at least one term that is at least partially based upon a combination of the sample and a mathematical function, wherein said apparatus comprises:
a first memory device for storing a value representing the mathematical function associated with the sample and each coefficient; and a coefficient generator in digital communication with said memory device, wherein said coefficient generator receives the sample of the input signal and for each coefficient accesses said first memory device and multiplies the sample by the value representing the mathematical function associated with the sample and coefficient to thereby define a term, and thereafter updates the coefficient by adding the term to the previous value of the coefficient, wherein said coefficient generator corrects the coefficients.
- 18. A computer program product for determining the coefficients of a function representative of an input signal based on a plurality of samples of the input signal, wherein the computer program product comprises:
a computer readable storage medium having computer readable program code means embodied in said medium, said computer-readable program code means comprising:
first computer instruction means for receiving samples of the signal; and second computer instruction means for updating and correcting at least one of the coefficients, wherein correcting the coefficients comprises computer instruction means for updating at least one of the coefficients on the receipt of each sample and correcting the coefficients so that the coefficients represent a correct sample sequence.
- 19. A computer program product according to claim 18, wherein said first computer instruction means receives each of the samples one at a time, and wherein said second computer instruction means updates the coefficients of the function based on each sample as the sample is received without awaiting receipt of the next sample to thereby decrease the latency of the time required to determine accurate coefficients of the function.
- 20. A computer program product according to claim 19, wherein each coefficient is comprised of at least one term that is at least partially based upon a combination of a sample and a mathematical function, said computer-readable program code means further comprising third computer instruction means for determining a respective term of each coefficient by combining each sample upon receipt with the mathematical function associated with the sample and the coefficient, and wherein, for each coefficient, said second computer instruction means updates the coefficient by adding the respective term to a previous value of the coefficient.
- 21. A computer program product according to claim 20, wherein each sample only contributes to one term of each coefficient, and wherein said second computer instruction means updates each of the coefficients based on each sample upon receipt without requiring the sample to thereafter be stored.
- 22. A computer program product according to claim 20, wherein said second computer instruction means updates each of the coefficients with each of the plurality of samples as each sample is received, and wherein as each coefficient is updated with the next sample, second computer instruction means outputs the coefficient.
- 23. A computer program product according to claim 20, wherein said computer-readable program code means further comprises fourth computer instruction means for storing each of the samples as they are received in a memory device.
- 24. A computer program product according to claim 23, wherein after said first computer instruction means has received and said second computer instruction means has processed the predetermined plurality of samples, said second computer instruction means outputs the coefficients, and wherein when a new sample of the input signal is received after the predetermined plurality of samples has already been received, said computer-readable program code means further comprises fifth computer instruction means for subtracting the term based upon a first sample of the predetermined plurality of samples from the term based upon the new sample, and wherein said second computer instruction means updates the coefficients by the difference between the terms based upon the new sample and the first sample of the predetermined plurality of samples.
- 25. An apparatus for determining coefficients of a function representative of an input signal based on samples of the input signal, wherein said apparatus comprises a coefficient generator which provides the coefficients after each sample, the coefficient generator comprising:
a receiver for receiving a new sample; and a learning model processor, the learning model processor being trained with predetermined coefficients and predetermined samples to map new coefficients to the new sample, the receiver being connected with the learning model processor wherein the receiver is capable of providing the new sample to the learning model processor.
- 26. The apparatus of claim 25 wherein the learning model processor comprises a neural network processor.
- 27. The apparatus of claim 25 wherein the learning model processor comprises at least one of a neural network integrated circuit chip and a fuzzy logic processor chip.
- 28. The apparatus of claim 25 wherein the learning model processor comprises a fuzzy logic processor.
- 29. Computer program products for determining coefficients of a function representative of an input signal based on samples of the input signal, wherein said computer program products comprise a coefficient generator which provides the coefficients after each sample, the coefficient generator comprising an executable learning model code, the learning model code being trained with predetermined coefficients and predetermined samples to map new coefficients to a new sample.
- 30. The computer program products of claim 29 wherein the learning model code comprises a neural network code.
- 31. The computer program products of claim 29 wherein the learning model code comprises a fuzzy logic code.
- 32. A method of determining coefficients of a function representative of an input signal based on samples of the input signal, wherein a complete set of coefficients is generated for each sample, the method comprising the steps of:
providing predetermined sets of samples and predetermined sets of coefficients; training a learning model with the predetermined sets of samples and predetermined sets of coefficients to map coefficients for samples; providing a new sample to the learning model; and permitting the learning model to derive coefficients for the new sample.
- 33. The method of claim 32 wherein the coefficients comprise Fourier transform coefficients.
- 34. A method of designing systems for deriving coefficients of a function representative of an input signal based on samples of the input signal, wherein the system includes at least one of hardware and software, the method comprising the steps of:
providing predetermined sets of samples and predetermined sets of coefficients; creating a training set having the predetermined sets of samples as inputs and the predetermined sets of coefficients as outputs; using a genetic algorithm to determine the mapping between the inputs and the outputs by:
a) generating a population of chromosomes encoding the mapping; b) generating candidate mapping solutions in the form of at least one of hardware descriptions and software descriptions, c) associating the chromosomes with members of the descriptions; d) evaluating the goodness of the results when the inputs are presented to each candidate mapping solution; e) selecting the best chromosomes and combining the best chromosomes to obtain new chromosomes for testing as new candidate solutions; and f) repeating steps a) to f) until a solution mapping is found which has low error below imposed requirements.
- 36. Method of determining new values of a subset of Fourier coefficients from previous values of a subset of coefficients and values of a subset of recently received samples, the method comprising the steps of:
providing a learning model processor; and training the learning model processor with inputs of predetermined subsets of Fourier coefficients and outputs of subsequent predetermined subsets of Fourier coefficients wherein the learning model is capable of generating subsets of Fourier coefficients mapped to inputs of subsets of Fourier coefficients.
- 37. A computer implemented method of designing apparatus for deriving coefficients of a function representative of an input signal based on samples of the input signal, the method comprising the steps of:
a) creating a generation of a randomly selected chromosomes; b) matching each chromosome to a circuit model; c) assigning input values to each circuit model wherein the input values are determined by a predetermined sample and at least one of
a predetermined set of coefficients and a predetermined set of coefficient updates; d) providing specifications of a target response; e) deriving circuit model responses and comparing the model responses against specifications of the target response; f) ranking each circuit model according to how close the circuit response is to the target response; g) generating a new population of circuit models comprising the circuit models having the highest ranking in the previous generation; h) swapping of parts of the chromosomes randomly and flipping bits of chromosome randomly; i) repeating the process for several generations, to achieve better circuit models; and j) stopping after at least one of
a predetermined number of generations and when the closeness between the circuit model response and target response become sufficiently close.
- 38. The method of claim 37 wherein the coefficients are for a Fourier series.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present application claims priority from U.S. Provisional Patent Application Ser. No. 60/185,346, entitled: METHODS AND APPARATUS FOR PROCESSING AND ANALYZING INFORMATION, filed on Feb. 26, 2000 and Ser. No. 60/201,609, entitled: METHODS AND APPARATUS DERIVED FROM LEARNING MODELS FOR PROCESSING AND ANALYZING INFORMATION filed May 3, 2000, the contents of both of these applications are incorporated herein by reference.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60185346 |
Feb 2000 |
US |
|
60201609 |
May 2000 |
US |