Metaprogramming Domain Specific Metaprograms

When a metaprogram automatically creates rules, some created rules are useless because they can never apply. Some metarules, that we call impossibility metarules, are used to remove useless rules. Some of these metarules are general and apply to any generated program. Some are domain specific metarules. In this paper, we show how dynamic metaprogramming can be used to create domain specific impossibility metarules. Applying metaprogramming to impossibility metaprogramming avoids writing specific metaprogram for each domain metaprogramming is applied to. Our meta-metaprograms have been used to write metaprograms that write search rules for different games and planning domains. They write programs that write selective and efficient search programs.

[1]  Tristan Cazenave Système d'apprentissage par auto-observation : Application au jeu de go , 1996 .

[2]  David B. Leake,et al.  Goal-driven learning , 1995 .

[3]  P ? ? ? ? ? ? ? % ? ? ? ? , 1991 .

[4]  B. Ingersoll-Dayton,et al.  Searching for solutions: mental health consultation in nursing homes , 1993 .

[5]  Eric Horvitz,et al.  Challenge problems for artificial intelligence , 1996, AAAI 1996.

[6]  John B. Shoven,et al.  I , Edinburgh Medical and Surgical Journal.

[7]  Jacques Pitrat Games: The Next Challenge , 1998, J. Int. Comput. Games Assoc..

[8]  M. Anand “1984” , 1962 .

[9]  Tom Michael Mitchell,et al.  Explanation-based generalization: A unifying view , 1986 .

[10]  L. V. Allis,et al.  Searching for solutions in games and artificial intelligence , 1994 .

[11]  Steven Minton,et al.  Is There Any Need for Domain-Dependent Control Information?: A Reply , 1996, AAAI/IAAI, Vol. 1.

[12]  Alberto Pettorossi,et al.  A Comparative Revisitation of Some Program Transformation Techniques , 1996, Dagstuhl Seminar on Partial Evaluation.

[13]  John C. Shepherdson,et al.  Unfold/fold transformations of logic programs , 1992, Mathematical Structures in Computer Science.

[14]  H. J. van den Herik,et al.  Which games will survive , 1990 .

[15]  Toru Ishida,et al.  Optimizing Rules in Production System Programs , 1988, AAAI.

[16]  LogicJonas BarklundBox Metaprogramming in Logic , 1994 .

[17]  Agata Wrzos-Kamifiska Partial Evaluation in Constraint Logic Programming , 1996 .

[18]  Jacques Pitrat,et al.  Realization of a Program Learning to find Combinations at Chess , 1976 .

[19]  Atsushi Yoshikawa,et al.  The 3rd Fost-Cup World-Open Computer-Go Championship , 1997, J. Int. Comput. Games Assoc..

[20]  John P. Gallagher,et al.  Tutorial on specialisation of logic programs , 1993, PEPM '93.

[21]  Oren Etzioni,et al.  A Structural Theory of Explanation-Based Learning , 1993, Artif. Intell..

[22]  Alan Bundy,et al.  Explanation-Based Generalisation = Partial Evaluation , 1988, Artif. Intell..

[23]  John W. Lloyd,et al.  The Go¨del programming language , 1994 .

[24]  J. C. Simon,et al.  Computer Oriented Learning Processes , 1976 .

[25]  G. Jantzen 1988 , 1988, The Winning Cars of the Indianapolis 500.

[26]  Geraint A. Wiggins The Gödel programming language by Patricia Hill and John W. Lloyd, The MIT Press, 1994, pp 337, £40 50/$60.75, ISBN 0-262-08229-2 , 1995, Knowl. Eng. Rev..

[27]  B. Pell A STRATEGIC METAGAME PLAYER FOR GENERAL CHESS‐LIKE GAMES , 1994, Comput. Intell..

[28]  Tristan Cazenave,et al.  Metaprogramming Forced Moves , 1998, ECAI.

[29]  R. Holbrooke,et al.  The Next Challenge , 1986 .