Author: Bob Durrett
Date: 12:47:01 12/23/02
Go up one level in this thread
On December 23, 2002 at 15:25:06, Martin Giepmans wrote: >On December 23, 2002 at 14:57:02, Bob Durrett wrote: > >> >>Not being up-to-speed on reading programming journals in all languages, I am not >>sure that the following idea is original. But I will "take my chances" in the >>hope of not being Zapped too badly if it is not original. : ) >> >>I am interested in adaptive programs, especially as the theory applies to chess >>engines. >> >>The basic concept is to produce a program that will change itself "in a big >>way," as the environment or problems being solved change. This >>self-modification would take place several or many times in as short a time as >>an hour. >> >>Still trying to stay general: How to do this? >> >>One way, impractical for sure, would be to have a single overall program which >>was a package consisting of many specific programs. As the environment or other >>factors changed, the program would be stimulated to jump from the current >>specific program to the more appropriate one, with the necessary data >>transferred to the new specific program. This sort of jump could occur often >>and many times as the need dictated. >> >>Perhaps a more practical approach might be to have a single program with many >>parameters that could be set or reset quickly. In this scenario, the stimuli >>would result in calling of a "reconfigure" program. This program would then, >>very quickly, reset the parameters of the main program. In this way, the main >>program would, in effect, be a new program. >> >>A more generalized version of the latter approach would be for the "reconfigure" >>program to VERY QUICKLY make extensive modifications to the main program. >> >>Are these ideas any good? >> >>If they are, are they currently in use in existing chess engines? >> >>If not, does this sound like a possible improvement for the future? >> >>What is your "gut feel" in this matter? >> >>Bob D. > >I wonder if there is a "real" difference between > >(a) a program that changes itself (even in a big way) >(b) a normal program that has code like "if a then x else if b then y .." > >Theorem: for every program of type a there is program of type b that behaves >exactly the same. >(ie no differences in output, although there may be differences in the "black >box") > >True? > >Martin (1) There is no way that I could say definitively whether or not that is true. (2) There is more than one way to configure a program. It may be that (a) is easier to program and debug than (b), for example. There is something to be said for having different parts of a program do different things, even if the program is not as fast as a fully integrated seamless program. Programming and debugging (b) might be a nightmare!!! Bob D.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.