Claims Analysis
Total Claims: 66
Claim 1
Independent Claim
280 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good fit, best fit or perfect fit to a sample of data, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of the fit of said corresponding program to said sample of data; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 2
Dependent Claim
280 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good fit, best fit or perfect fit to a sample of data, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of the fit of said corresponding program to said sample of data; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 3
Dependent Claim
294 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good fit, best fit or perfect fit to the integral of a curve associated with a sample of data, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of the fit of said corresponding program to the integral of said curve associated with said sample of data; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 4
Dependent Claim
294 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good fit, best fit or perfect fit to the integral of a curve associated with a sample of data, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of the fit of said corresponding program to the integral of said curve associated with said sample of data; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 5
Dependent Claim
294 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good fit, best fit or perfect fit to the derivative of a curve associated with a sample of data, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of the fit of said corresponding program to the derivative of said curve associated with said sample of data; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 6
Dependent Claim
294 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good fit, best fit or perfect fit to the derivative of a curve associated with a sample of data, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of the fit of said corresponding program to the derivative of said curve associated with said sample of data; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 7
Dependent Claim
286 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good solution, best solution or perfect solution to a differential equation and its associated initial condition, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of said corresponding program in satisfying said differential equation and its associated initial condition; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 8
Dependent Claim
286 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good solution, best solution or perfect solution to a differential equation and its associated initial condition, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of said corresponding program in satisfying said differential equation and its associated initial condition; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 9
Dependent Claim
276 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good solution, best solution or perfect solution to an integral equation, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of said corresponding program in satisfying said integral equation; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 10
Dependent Claim
276 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good solution, best solution or perfect solution to an integral equation, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of said corresponding program in satisfying said integral equation; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 11
Dependent Claim
288 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good fit, best fit or perfect fit to the inverse function for a sample of data, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of the fit of said corresponding program to the inverse function for said sample of data; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 12
Dependent Claim
288 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good fit, best fit or perfect fit to the inverse function for a sample of data, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of the fit of said corresponding program to the inverse function for said sample of data; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 13
Dependent Claim
276 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good solution, best solution or perfect solution to a mathematical equation, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of said corresponding program in satisfying said mathematical equation; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 14
Dependent Claim
276 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a composition of functions whose performance is a good solution, best solution or perfect solution to a mathematical equation, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of said corresponding program in satisfying said mathematical equation; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 15
Dependent Claim
284 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a correct function associated with a particular combination of arguments by reference to a sample of functional results associated with sample combinations of arguments, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the similarity between said result of said corresponding program and said sample functional results; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program can at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 16
Dependent Claim
284 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a correct function associated with a particular combination of arguments by reference to a sample of functional results associated with sample combinations of arguments, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the similarity between said result of said corresponding program and said sample functional results; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program can at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 17
Dependent Claim
274 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a best plan of action to achieve a desired result given an arbitary initial state, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of the performance of said corresponding program to said desired result; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 18
Dependent Claim
274 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for finding a best plan of action to achieve a desired result given an arbitary initial state, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the closeness of the performance of said corresponding program to said desired result; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 19
Dependent Claim
262 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for developing a strategy for playing a game, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the performance of said corresponding program in playing said game; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 20
Dependent Claim
262 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for developing a strategy for playing a game, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the performance of said corresponding program in playing said game; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 21
Dependent Claim
270 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for automatically generating a computer program capable of producing a desired output, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a results; assigning a value to each said result and associating each said value with a corresponding program which produced each said results, said value indicative of the closeness of the performance of said corresponding program to producing said desired output; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 22
Dependent Claim
270 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for automatically generating a computer program capable of producing a desired output, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a results; assigning a value to each said result and associating each said value with a corresponding program which produced each said results, said value indicative of the closeness of the performance of said corresponding program to producing said desired output; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 23
Dependent Claim
261 words
In a computer system having a population of programs of various sizes and structure wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for recognizing a pattern in input data, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the performance of said corresponding program in recognizing said pattern; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of program if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 24
Dependent Claim
261 words
In a computer system having a population of programs of various sizes and structure wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for recognizing a pattern in input data, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the performance of said corresponding program in recognizing said pattern; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of program if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 25
Dependent Claim
286 words
In a computer system having a population of programs of various sizes and structure wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for generating a decision tree for classifying an object by reference to a sampling of relationships between attributes associated with an object and classifications associated with an object, said process comprising iterations of a series of steps, each iteration comprising the steps: execting each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the similarity between said result of said corresponding program and said sampling of relationships; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 26
Dependent Claim
286 words
In a computer system having a population of programs of various sizes and structure wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for generating a decision tree for classifying an object by reference to a sampling of relationships between attributes associated with an object and classifications associated with an object, said process comprising iterations of a series of steps, each iteration comprising the steps: execting each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the similarity between said result of said corresponding program and said sampling of relationships; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 27
Dependent Claim
262 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for designing a neural network for performing tasks, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the performance of said corresponding program in performing said task; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 28
Dependent Claim
262 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments, an iterative process for designing a neural network for performing tasks, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the performance of said corresponding program in performing said task; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 29
Dependent Claim
272 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments or a randomly generated constant appropriate to the domain of a problem, an iterative process for problem solving, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 30
Dependent Claim
272 words
In a computer system having a population of programs of various sizes and structures wherein each program is a hierarchical arrangement of functions and arguments or a randomly generated constant appropriate to the domain of a problem, an iterative process for problem solving, said process comprising iterations of a series of steps, each iteration comprising the steps: executing each said program to produce a result; assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem; selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value; choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction; creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program; retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction; and adding said new program to said population.
Claim 31
Dependent Claim
101 words
The process in claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, or 15 wherein said step of choosing and performing an operation further comprising an operation of define building block such that if said chosen operation is said define building block operation, a step of define building block occurs before said adding step, wherein a portion of said selected program is replaced by an invocation of a building block function, said building block function being defined as the hierarchical arrangement of functions and arguments originally associated with said selected portion of said selected program.
Claim 32
Dependent Claim
81 words
The process in claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, or 15 wherein said step of choosing and performing an operation further comprising an operation of editing such that if said chosen operation is said editing operation, a step of editing occurs before said adding step, wherein said selected program is edited, such that predetermined editing rules are applied to said selected program to produce a modified hierarchical structure of said selected program.
Claim 33
Dependent Claim
61 words
The process in claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, or 15 wherein at least one said program in said population includes an assignment function, wherein a value is computed and a name is associated with said value, said value can be referenced by other said programs in said population using said name.
Claim 34
Dependent Claim
48 words
The process in claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, or 15 wherein at least one said program in said population includes an iteration function, wherein a portion of said program is performed repeatedly until a predicate condition is satisfied.
Claim 35
Dependent Claim
50 words
The process in claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, or 15 wherein at least one said program in said population includes an iteration function, wherein a portion of said program is performed repeatedly until a specified number of iterations is completed.
Claim 36
Dependent Claim
48 words
The process in claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, or 15 wherein at least one said program in said population includes a recursion function, wherein a portion of said program is performed recursively until a base condition is reached.
Claim 37
Dependent Claim
81 words
The process in claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, or 15 wherein an individual program in said population attaining a pre-established value of fitness with respect to solving a problem is designated as a solution to said problem, said process including the step of translating said program representing a solution to said problem into a different programming language while maintaining the logical consistency of said program representing a solution to said problem.
Claim 38
Dependent Claim
70 words
The process in claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, or 15 wherein an initial population of programs is created, said programs consisting of hierarchical arrangements of functions and arguments available for a particular problem, said hierarchical arrangements being constructed according to predetermined rules of construction which place a limit on which functions can occur at particular points in said hierarchical arrangement.
Claim 39
Dependent Claim
43 words
The process in claim 23 wherein said crossover operation is restrained such that selection of said portion of said other program is restrained according to predetermined rules which place a limit on which portions of said other program may be selected for crossover.
Claim 40
Dependent Claim
29 words
The process in claim 1 wherein said sample of data comprising at least one value of an independent variable associated with at least one value of a dependent variable.
Claim 41
Dependent Claim
28 words
The process in claim 1 wherein said sample of data comprising at least one value of an independent variable associated with values of more than one dependent variable.
Claim 42
Dependent Claim
30 words
The process in claim 1 wherein at least one said result produced by performing at least one said program lies outside of a region associated with said sample of data.
Claim 43
Dependent Claim
25 words
The process in claim 27 wherein said sample of data comprising at least one value of an independent variable wherein said independent variable is time.
Claim 44
Dependent Claim
26 words
The process in claim 9 wherein said best plan of action to achieve a desired result is used for the purpose of controlling a robotic device.
Claim 45
Dependent Claim
21 words
The process in claim 12 wherein said input data is an image and said pattern is an object within said image.
Claim 46
Dependent Claim
39 words
The process in claim 15 wherein at least one said randomly generated constant appropriate to the domain of said problems is inserted at random as an argument to at least one function in a created population of said programs.
Claim 47
Dependent Claim
69 words
The process in claim 15 wherein said step of assigning a value comprising: assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem, said value also indicative of the efficiency of said corresponding program in solving or partially solving a problem.
Claim 48
Dependent Claim
69 words
The process in claim 15 wherein said step of assigning a value comprising: assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem, said value also indicative of the parsimony of said corresponding program in solving or partially solving a problem.
Claim 49
Dependent Claim
74 words
The process in claim 15 wherein said step of assigning a value comprising: assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem, said value also indicative of the ability of said corresponding program to solve or partially solve a problem while complying with additional conditions.
Claim 50
Dependent Claim
80 words
The process in claim 15 wherein said step of assigning a value comprising: assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem, said value also indicative of the ability of said corresponding program to solve or partially solve a problem by reaching a subgoal which contributes to reaching a final goal.
Claim 51
Dependent Claim
347 words
A computer for solving problems comprising a processor and a memory means coupled to said processor for storing a population of programs of various sizes and shapes wherein each program is a hierarchical arrangement of functions and arguments or a randomly generated constant appropriate to the domain of a problem, said computer further comprising: means for executing each said program to produce a result, said means for executing coupled to said memory means; means for assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem, said means for assigning coupled to said memory means; means for selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value, said means for selecting coupled to said memory means; means for choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction, said means for choosing and performing coupled to said memory means; means for creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program, said means for creating coupled to said memory means; means for retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction, said means for retaining coupled to said memory means; means for adding said new program to said population, said means for adding coupled to said memory means.
Claim 52
Dependent Claim
347 words
A computer for solving problems comprising a processor and a memory means coupled to said processor for storing a population of programs of various sizes and shapes wherein each program is a hierarchical arrangement of functions and arguments or a randomly generated constant appropriate to the domain of a problem, said computer further comprising: means for executing each said program to produce a result, said means for executing coupled to said memory means; means for assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem, said means for assigning coupled to said memory means; means for selecting at least one selected program from said population using selection criteria, said selection criteria based on said value associated with each said program, said selection criteria preferring each said program having a relatively high associated value over each said program having a relatively low associated value, said means for selecting coupled to said memory means; means for choosing and performing an operation wherein each chosen operation is one of the operations of crossover or reproduction, said means for choosing and performing coupled to said memory means; means for creating at least one new program by crossover using a group of programs if said chosen operation is crossover, said group of programs comprising said selected program and at least one other program from said population, such that any new program created by crossover comprises at least a portion of said selected program and at least a portion of said other program, said new program can differ in size and shape from said selected program and said other program, said means for creating coupled to said memory means; means for retaining said selected program such that said selected program remains unchanged if said chosen operation is reproduction, said means for retaining coupled to said memory means; means for adding said new program to said population, said means for adding coupled to said memory means.
Claim 53
Dependent Claim
66 words
The computer in claim 36 including a means for defining a building block comprising means for replacing a portion of said selected program by an invocation of a building block function, said building block function defined as the hierarchical arrangement of functions and arguments originally associated with said selected portion of said selected, program, said means for defining a building block coupled to said memory means.
Claim 54
Dependent Claim
40 words
The computer in claim 36 including a means for editing comprising means for applying predetermined editing rules to said selected program to produce a modified hierarchical structure of said selected program, said means for editing coupled to said memory means.
Claim 55
Dependent Claim
46 words
The computer in claim 36 wherein at least one said program in said population includes an assignment function comprising means for computing a value and means for associating a name with said value, said value referenced by other said programs in said population using said name.
Claim 56
Dependent Claim
33 words
The computer in claim 36 wherein at least one said program in said population includes an iteration function, wherein a portion of said program is performed repeatedly until a predicate condition is satisfied.
Claim 57
Dependent Claim
36 words
The computer in claim 36 wherein at least one said program in said population includes an iteration function comprising means for repeatedly performing a portion of said program until a specified number of iterations is completed.
Claim 58
Dependent Claim
34 words
The computer in claim 36 wherein at least one said program in said population includes a recursion function comprising means for recursively performing a portion of said program until a base condition is reached.
Claim 59
Dependent Claim
65 words
The computer in claim 36 wherein an individual program in said population attaining a pre-established value of fitness with respect to solving a problem is designated as a solution to said problem, said computer including means for translating said program representing a solution to said problem into a different programming language while maintaining the logical consistency of said program representing a solution to said problem.
Claim 60
Dependent Claim
72 words
The computer in claim 36 including means for creating an initial population of programs coupled to said memory means, said programs consisting of hierarchical arrangements of functions and arguments available for a particular problem, said means for creating an initial population of programs comprising means for constructing said hierarchical arrangements according to predetermined rules of construction which place a limit on which functions can occur at particular points in said hierarchical arrangement.
Claim 61
Dependent Claim
52 words
The computer in claim 36 wherein said means for creating at least one new program by crossover includes restraining means such that selection of said portion of said other program is restrained according to predetermined rules which place a limit on which portions of said other program may be selected for crossover.
Claim 62
Dependent Claim
38 words
The computer in claim 36 wherein said population of programs includes at least one program including said randomly generated constant appropriate to the domain of said problem as an argument to at least one function of said program.
Claim 63
Dependent Claim
71 words
The computer in claim 36 wherein said means for assigning a value comprising: means for assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem, said value also indicative of the efficiency of said corresponding program in solving or partially solving a problem.
Claim 64
Dependent Claim
71 words
The computer in claim 36 wherein said means for assigning a value comprising: means for assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem, said value also indicative of the parsimony of said corresponding program in solving or partially solving a problem.
Claim 65
Dependent Claim
76 words
The computer in claim 36 wherein said means for assigning a value comprising: means for assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem, said value also indicative of the ability of said corresponding program to solve or partially solve a problem while complying with additional conditions.
Claim 66
Dependent Claim
82 words
The computer in claim 36 wherein said means for assigning a value comprising: means for assigning a value to each said result and associating each said value with a corresponding program which produced each said result, said value indicative of the fitness of said corresponding program in solving or partially solving a problem, said value also indicative of the ability of said corresponding program to solve or partially solve a problem by reaching a subgoal which contributes to reaching a final goal.