Line | |
---|
1 | using System;
|
---|
2 | using System.Collections.Generic;
|
---|
3 | using System.Linq;
|
---|
4 | using System.Text;
|
---|
5 |
|
---|
6 | namespace HeuristicLab.Problems.GrammaticalOptimization {
|
---|
7 | public class RoyalRoadProblem : IProblem {
|
---|
8 | // inspired by Mitchell, Forrest, Holland: "The Royal Road for Genetic Algorithms: Fitness Landscapes and GA Performance", 1992
|
---|
9 | private const string grammarString = @"
|
---|
10 | G(S):
|
---|
11 | S -> 1 | 0 | 1S | 0S
|
---|
12 | ";
|
---|
13 |
|
---|
14 | private readonly IGrammar grammar;
|
---|
15 | public RoyalRoadProblem() {
|
---|
16 | this.grammar = new Grammar(grammarString);
|
---|
17 | }
|
---|
18 |
|
---|
19 | public double BestKnownQuality(int maxLen) {
|
---|
20 | // for now only an upper bound is returned, ideally all fitness cases are predicted correctly
|
---|
21 | throw new NotImplementedException();
|
---|
22 | }
|
---|
23 |
|
---|
24 | public IGrammar Grammar {
|
---|
25 | get { return grammar; }
|
---|
26 | }
|
---|
27 |
|
---|
28 | public double Evaluate(string sentence) {
|
---|
29 | throw new NotImplementedException();
|
---|
30 | }
|
---|
31 | public string CanonicalRepresentation(string terminalPhrase) {
|
---|
32 | return terminalPhrase;
|
---|
33 | }
|
---|
34 |
|
---|
35 | }
|
---|
36 | }
|
---|
Note: See
TracBrowser
for help on using the repository browser.