de.cesr.lara.components.decision.impl
Class LDeliberativeChoiceComp_MaxLineTotal

java.lang.Object
  extended by de.cesr.lara.components.decision.impl.LDeliberativeChoiceComp_MaxLineTotal
All Implemented Interfaces:
LaraDeliberativeChoiceComponent

public class LDeliberativeChoiceComp_MaxLineTotal
extends Object
implements LaraDeliberativeChoiceComponent

Selects the behavioural option with maximal line total. Tie Rule: In case there are more than one BOs with the highest score, the one with highest row number is returned.


Method Summary
static LDeliberativeChoiceComp_MaxLineTotal getInstance()
           
<BO extends LaraBehaviouralOption<?,? extends BO>>
Set<? extends BO>
getKSelectedBos(LaraDecisionConfiguration dConfiguration, Collection<LaraBoRow<BO>> boRows, int k)
          Return the k BOs with the highest sum of preference fulfillment.
<BO extends LaraBehaviouralOption<?,? extends BO>>
BO
getSelectedBo(LaraDecisionConfiguration dConfiguration, Collection<LaraBoRow<BO>> boRows)
          Return the BO with the highest sum of preference fulfillment.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getInstance

public static LDeliberativeChoiceComp_MaxLineTotal getInstance()
Returns:
LDeliberativeChoiceComp_MaxLineTotal (singleton)

getKSelectedBos

public <BO extends LaraBehaviouralOption<?,? extends BO>> Set<? extends BO> getKSelectedBos(LaraDecisionConfiguration dConfiguration,
                                                                                            Collection<LaraBoRow<BO>> boRows,
                                                                                            int k)
Return the k BOs with the highest sum of preference fulfillment. Tie Rule: In case there are more than one BOs with the highest score, the one with highest row number (i.e. BO's compareTo yields a higher value) is returned.

Specified by:
getKSelectedBos in interface LaraDeliberativeChoiceComponent
Parameters:
dConfiguration - the decision configuration of this decision process
boRows - collection of LaraBoRows
k - number of BOs to select
Returns:
k best behavioural options
See Also:
getKSelectedBos(de.cesr.lara.components.decision.LaraDecisionConfiguration, java.util.Collection, int)

getSelectedBo

public <BO extends LaraBehaviouralOption<?,? extends BO>> BO getSelectedBo(LaraDecisionConfiguration dConfiguration,
                                                                           Collection<LaraBoRow<BO>> boRows)
Return the BO with the highest sum of preference fulfillment. Tie Rule: In case there are more than one BOs with the highest score, the one with highest row number is returned.

Specified by:
getSelectedBo in interface LaraDeliberativeChoiceComponent
Parameters:
dConfiguration - the decision configuration of this decision process
boRows - collection of LaraBoRows
Returns:
selected behavioural option
See Also:
LaraDeliberativeChoiceComponent.getSelectedBo(de.cesr.lara.components.decision.LaraDecisionConfiguration, java.util.Collection)