edu.indiana.iucbrf.examples.quadrant
Class QuadrantSystem

java.lang.Object
  extended by edu.indiana.iucbrf.cbrsystem.CBRSystem
      extended by edu.indiana.iucbrf.examples.quadrant.QuadrantSystem
All Implemented Interfaces:
java.io.Serializable

public class QuadrantSystem
extends CBRSystem

This system is intended to be one of the simplest possible uses of the framework. In this domain, problems contain two features, x and y, both doubles in [-1, 1]. The square on the x-y plane corresponding to this problem space is divided into four equal quadrants by the coordinate axes. These quadrants are numbered 1, 2, 3, and 4, counterclockwise from upper right, as in basic algebra.

A case consists of a problem description and solution, where the problem is a pair (x,y), and the solution is its quadrant (1, 2, 3, or 4). When a new problem is presented to the system, the five nearest cases are retrieved, and adapted by taking a weighted (by distance) majority vote of the quadrants. The "winning" quadrant is said to be the quadrant of the unknown problem.

See comments in code for additional details.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class edu.indiana.iucbrf.cbrsystem.CBRSystem
adaptation, baseFilename, CB, currentContext, debugMode, DEFAULT_BASE_FILENAME, domain, episodeSummaryPanel, guiMode, maintenance, performanceMonitor, retrieval, title
 
Constructor Summary
QuadrantSystem()
          Creates a new instance of QuadrantSystem
 
Method Summary
 ProblemGenerator constructProblemGenerator()
          A problem generator requires specification of arguments to send to feature constructors.
 
Methods inherited from class edu.indiana.iucbrf.cbrsystem.CBRSystem
close, finalize, getAdaptation, getBaseFilename, getCB, getContext, getDebugMode, getDomain, getGUIMode, getMaintenance, getPerformanceMonitor, getRetrieval, getTitle, loadCBFromFile, loadPerformanceMonitorFromFile, saveCBToFile, savePerformanceMonitorToFile, saveSystemToFile, setAdaptation, setBaseFilename, setCB, setContext, setDebugMode, setDomain, setGUIMode, setMaintenance, setPerformanceMonitor, setRetrieval, setTitle, solve, solve
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

QuadrantSystem

public QuadrantSystem()
Creates a new instance of QuadrantSystem

Method Detail

constructProblemGenerator

public ProblemGenerator constructProblemGenerator()
A problem generator requires specification of arguments to send to feature constructors. Here, random distributions are used.