stella.xml
Class NumberMerit
java.lang.Object
util.PropertyContainer
util.PropertyResources
util.PropertyBundles
stella.AbstractMerit
stella.xml.NumberMerit
- All Implemented Interfaces:
- Serializable, Cloneable, EndpointDefining, Meriting, Initializable, LocalizedSupplying, PropertySupplying, ResourceSupplying
public class NumberMerit
- extends AbstractMerit
- implements EndpointDefining
A class defining a decreasing merit as the number of successful observations
of the target increases. It models the merit with
g(t)=k·(π/2-arctan(N/width)·2/π),
where N is the number of successful observations, k is a scaling factor
and width is a stretching parameter. Though the merit never
get zero, one can define a KEY_TERMINAL property, which forces
the merit to be zero once this number of successful observations has been
surpassed, thus it is EndpointDefining.
- See Also:
- Serialized Form
|
Field Summary |
private static double |
DEFIMPACT
Default value for the priority impact. |
private static int |
DEFTERMINAL
Default value for the maximum number of observations. |
private static double |
DEFWIDTH
Default value of the merit width. |
static String |
KEY_IMPACT
The key linked to the impact of the merit. |
static String |
KEY_TERMINAL
The key linked to the maximum number of successful observations. |
static String |
KEY_WIDTH
The key linked to the width of the merit. |
| Methods inherited from class util.PropertyResources |
createFrom, createFrom, createFrom, getApplet, getAsResources, getLocalClassLoader, getPropertiesToKey, getPropertiesToKey, getResource, getResourceAsStream, getResourceFromKey, getResources, init, keyCreate, keyCreate, reload, setApplet |
| Methods inherited from class util.PropertyContainer |
augment, augment, augment, defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsEnums, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, isNew, parseObject, reload, removeProperty, rescanned, setObject, setProperties, setProperty, stringProperties, toString |
| Methods inherited from interface util.PropertySupplying |
defaultBoolean, defaultChar, defaultDouble, defaultFloat, defaultInt, defaultLong, defaultObject, defaultObject, defaultProperties, defaultProperty, getAsBoolean, getAsChar, getAsDouble, getAsFloat, getAsInt, getAsList, getAsLong, getAsMap, getAsObject, getAsObject, getProperties, getProperty, has, parseObject, removeProperty, setObject, setProperty, stringProperties |
KEY_IMPACT
public static final String KEY_IMPACT
- The key linked to the impact of the merit.
- See Also:
- Constant Field Values
KEY_WIDTH
public static final String KEY_WIDTH
- The key linked to the width of the merit.
- See Also:
- Constant Field Values
KEY_TERMINAL
public static final String KEY_TERMINAL
- The key linked to the maximum number of successful observations.
- See Also:
- Constant Field Values
DEFIMPACT
private static final double DEFIMPACT
- Default value for the priority impact.
- See Also:
- Constant Field Values
DEFWIDTH
private static final double DEFWIDTH
- Default value of the merit width.
- See Also:
- Constant Field Values
DEFTERMINAL
private static final int DEFTERMINAL
- Default value for the maximum number of observations.
- See Also:
- Constant Field Values
NumberMerit
public NumberMerit(Map prop)
- Constructs a number merit, defaulting the
KEY_IMPACT
and the KEY_WIDTH
parameters. Proper creation should be
done using the
AbstractMerit.createMerit(java.util.Map)
method. This create method also takes care of proper parameter
overloading.
getMerit
public double getMerit(ParameterClustering set,
TargetDefinition target,
Collection ignore,
long dummy)
- Calculates the actual time slot merit. If the number of successful
observations is below
#KEY_MAXOBSERVATIONS, the
KEY_IMPACT merit is returned. If the target definition is not
history aware, one is returned.
As this merit focusses inly on number of picks, the time span is
ignored.
- Specified by:
getMerit in interface Meriting
- Parameters:
set - Current observing conditions.target - The actual target.ignore - The list of targetes relevant to the actual target.dummy - The relevant time span in ms.
isCompleted
public boolean isCompleted(ParameterClustering set,
TargetDefinition target)
- Returns true, if the number of successful observations has reached the
requested value.
- Specified by:
isCompleted in interface EndpointDefining