×

Non-linear genetic process for use with plural co-evolving populations

  • US 5,148,513 A
  • Filed: 09/18/1990
  • Issued: 09/15/1992
  • Est. Priority Date: 05/20/1988
  • Status: Expired due to Term
First Claim
Patent Images

1. In a parallel processing computer system having at least one processor, a memory, and a plurality of populations of programs of various sizes and structures and wherein more than one program can be executed simultaneously, a group of parallel processes for problem solving wherein more than one parallel process of said group of parallel processes can be performed simultaneously, each parallel process of said group of parallel processes comprising the steps of:

  • (i) designating one of said plurality of populations as the evolving population wherein the remaining populations of said plurality of populations are designated co-evolving environmental populations;

    (ii) iterating a series of steps, said series of steps including;

    a) assigning a fitness value to a program of said evolving population and associating said fitness value with a corresponding program, said fitness value indicative of the relative fitness of said corresponding program in relation to said co-evolving environmental populations;

    b) selecting at least one program from said evolving population using selection criteria, said selection criteria based on said fitness value associated with each said program, said selection criteria preferring each said program having a relatively high associated fitness value over each said program having a relatively low associated fitness value;

    c) choosing and performing an operation, wherein said chosen operation is one of the operations of crossover or reproduction;

    d) creating, if said operation is crossover, at least one new program by crossover using a group of programs from said evolving population, said group of programs comprising said selected program and at least one other program from said evolving 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 capable of differing in size and structure from said selected program and said other program;

    e) reproducing, if said chosen operation is reproduction, said selected program in said evolving population, such that said selected program remains unchanged; and

    f) adding said new program to said evolving population; and

    (iii) terminating when a solution is found.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×