source: boa/src/main/java/geniusweb/boa/acceptancestrategy/AcceptanceStrategy.java

Last change on this file was 52, checked in by ruud, 14 months ago

Fixed small issues in domaineditor.

File size: 1.8 KB
Line 
1package geniusweb.boa.acceptancestrategy;
2
3import geniusweb.actions.Action;
4import geniusweb.boa.BoaParty;
5import geniusweb.boa.BoaState;
6import geniusweb.boa.biddingstrategy.BiddingStrategy;
7
8/**
9 * Determines in which states a bid is acceptable. Typically used as one of the
10 * components of a {@link BoaParty}. The protocol to be supported is SAOP.
11 * <p>
12 * <em>MUST</em> have an empty constructor.
13 *
14 * <h2>More info</h2> Baarslag T., Hindriks K.V., Hendrikx M., Dirkzwager A.,
15 * Jonker C.M. Decoupling Negotiating Agents to Explore the Space of Negotiation
16 * Strategies. Proceedings of The Fifth International Workshop on Agent-based
17 * Complex Automated Negotiations (ACAN 2012), 2012.
18 * ​https://homepages.cwi.nl/~baarslag/pub/Decoupling_Negotiating_Agents_to_Explore_the_Space_of_Negotiation_Strategies_ACAN_2012.pdf
19 */
20public interface AcceptanceStrategy {
21
22 /**
23 * given a candidate action, update the action considering its fitness and
24 * adjust if Accept would be a better choice. This normally is used to "fix"
25 * the Offers coming from the {@link BiddingStrategy}.
26 *
27 * <p>
28 * <b>Note</b> for implementors: Previous offers that were done can be
29 * extracted from the negoState. configuration parameters can be extracted
30 * from {@link BoaState#getSettings()}. Generally we recommend to write
31 * implementations such that they can also be hard-configured, for easier
32 * use of the components in hard-coded settings.
33 *
34 * @param proposedAction an action that is proposed (usually by the
35 * {@link BiddingStrategy} as the next action.
36 * @param boaState the current {@link BoaState}.
37 *
38 *
39 * @return a filtered version of the action. For example, the
40 * AcceptanceStrategy may deem an Accept better than a given Offer.
41 */
42 Action filter(Action proposedAction, BoaState boaState);
43}
Note: See TracBrowser for help on using the repository browser.