source: javadoc/genius/core/boaframework/BOA.html@ 1

Last change on this file since 1 was 1, checked in by Wouter Pasman, 7 years ago

Initial import : Genius 9.0.0

File size: 17.8 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<!-- NewPage -->
3<html lang="en">
4<head>
5<!-- Generated by javadoc (1.8.0_112) on Thu Jun 21 12:05:56 CEST 2018 -->
6<title>BOA (Genius Core Documentation)</title>
7<meta name="date" content="2018-06-21">
8<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
9<script type="text/javascript" src="../../../script.js"></script>
10</head>
11<body>
12<script type="text/javascript"><!--
13 try {
14 if (location.href.indexOf('is-external=true') == -1) {
15 parent.document.title="BOA (Genius Core Documentation)";
16 }
17 }
18 catch(err) {
19 }
20//-->
21var methods = {"i0":10,"i1":6,"i2":10,"i3":10,"i4":10,"i5":6,"i6":6};
22var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
23var altColor = "altColor";
24var rowColor = "rowColor";
25var tableTab = "tableTab";
26var activeTableTab = "activeTableTab";
27</script>
28<noscript>
29<div>JavaScript is disabled on your browser.</div>
30</noscript>
31<!-- ========= START OF TOP NAVBAR ======= -->
32<div class="topNav"><a name="navbar.top">
33<!-- -->
34</a>
35<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
36<a name="navbar.top.firstrow">
37<!-- -->
38</a>
39<ul class="navList" title="Navigation">
40<li><a href="../../../overview-summary.html">Overview</a></li>
41<li><a href="package-summary.html">Package</a></li>
42<li class="navBarCell1Rev">Class</li>
43<li><a href="class-use/BOA.html">Use</a></li>
44<li><a href="package-tree.html">Tree</a></li>
45<li><a href="../../../deprecated-list.html">Deprecated</a></li>
46<li><a href="../../../index-all.html">Index</a></li>
47<li><a href="../../../help-doc.html">Help</a></li>
48</ul>
49</div>
50<div class="subNav">
51<ul class="navList">
52<li><a href="../../../genius/core/boaframework/Actions.html" title="enum in genius.core.boaframework"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
53<li><a href="../../../genius/core/boaframework/BOAagent.html" title="class in genius.core.boaframework"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
54</ul>
55<ul class="navList">
56<li><a href="../../../index.html?genius/core/boaframework/BOA.html" target="_top">Frames</a></li>
57<li><a href="BOA.html" target="_top">No&nbsp;Frames</a></li>
58</ul>
59<ul class="navList" id="allclasses_navbar_top">
60<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
61</ul>
62<div>
63<script type="text/javascript"><!--
64 allClassesLink = document.getElementById("allclasses_navbar_top");
65 if(window==top) {
66 allClassesLink.style.display = "block";
67 }
68 else {
69 allClassesLink.style.display = "none";
70 }
71 //-->
72</script>
73</div>
74<div>
75<ul class="subNavList">
76<li>Summary:&nbsp;</li>
77<li>Nested&nbsp;|&nbsp;</li>
78<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
79<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
80<li><a href="#method.summary">Method</a></li>
81</ul>
82<ul class="subNavList">
83<li>Detail:&nbsp;</li>
84<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
85<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
86<li><a href="#method.detail">Method</a></li>
87</ul>
88</div>
89<a name="skip.navbar.top">
90<!-- -->
91</a></div>
92<!-- ========= END OF TOP NAVBAR ========= -->
93<!-- ======== START OF CLASS DATA ======== -->
94<div class="header">
95<div class="subTitle">genius.core.boaframework</div>
96<h2 title="Class BOA" class="title">Class BOA</h2>
97</div>
98<div class="contentContainer">
99<ul class="inheritance">
100<li>java.lang.Object</li>
101<li>
102<ul class="inheritance">
103<li>genius.core.boaframework.BOA</li>
104</ul>
105</li>
106</ul>
107<div class="description">
108<ul class="blockList">
109<li class="blockList">
110<dl>
111<dt>Direct Known Subclasses:</dt>
112<dd><a href="../../../genius/core/boaframework/AcceptanceStrategy.html" title="class in genius.core.boaframework">AcceptanceStrategy</a>, <a href="../../../genius/core/boaframework/OfferingStrategy.html" title="class in genius.core.boaframework">OfferingStrategy</a>, <a href="../../../genius/core/boaframework/OMStrategy.html" title="class in genius.core.boaframework">OMStrategy</a>, <a href="../../../genius/core/boaframework/OpponentModel.html" title="class in genius.core.boaframework">OpponentModel</a></dd>
113</dl>
114<hr>
115<br>
116<pre>public abstract class <span class="typeNameLabel">BOA</span>
117extends java.lang.Object</pre>
118<div class="block">Abstract superclass for BOA components. This should have been called
119 BOAcomponent but that class is already in use. Usually instances are created
120 using <a href="../../../genius/core/repository/boa/BoaRepItem.html#getInstance--"><code>BoaRepItem.getInstance()</code></a> and then caling
121 {<code>#init(NegotiationSession)</code>}</div>
122<dl>
123<dt><span class="simpleTagLabel">Author:</span></dt>
124<dd>W.Pasman 25mar14 #867</dd>
125</dl>
126</li>
127</ul>
128</div>
129<div class="summary">
130<ul class="blockList">
131<li class="blockList">
132<!-- =========== FIELD SUMMARY =========== -->
133<ul class="blockList">
134<li class="blockList"><a name="field.summary">
135<!-- -->
136</a>
137<h3>Field Summary</h3>
138<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
139<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
140<tr>
141<th class="colFirst" scope="col">Modifier and Type</th>
142<th class="colLast" scope="col">Field and Description</th>
143</tr>
144<tr class="altColor">
145<td class="colFirst"><code>protected <a href="../../../genius/core/boaframework/NegotiationSession.html" title="class in genius.core.boaframework">NegotiationSession</a></code></td>
146<td class="colLast"><code><span class="memberNameLink"><a href="../../../genius/core/boaframework/BOA.html#negotiationSession">negotiationSession</a></span></code>
147<div class="block">Reference to the object which holds all information about the negotiation</div>
148</td>
149</tr>
150</table>
151</li>
152</ul>
153<!-- ======== CONSTRUCTOR SUMMARY ======== -->
154<ul class="blockList">
155<li class="blockList"><a name="constructor.summary">
156<!-- -->
157</a>
158<h3>Constructor Summary</h3>
159<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
160<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
161<tr>
162<th class="colOne" scope="col">Constructor and Description</th>
163</tr>
164<tr class="altColor">
165<td class="colOne"><code><span class="memberNameLink"><a href="../../../genius/core/boaframework/BOA.html#BOA--">BOA</a></span>()</code>&nbsp;</td>
166</tr>
167</table>
168</li>
169</ul>
170<!-- ========== METHOD SUMMARY =========== -->
171<ul class="blockList">
172<li class="blockList"><a name="method.summary">
173<!-- -->
174</a>
175<h3>Method Summary</h3>
176<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
177<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
178<tr>
179<th class="colFirst" scope="col">Modifier and Type</th>
180<th class="colLast" scope="col">Method and Description</th>
181</tr>
182<tr id="i0" class="altColor">
183<td class="colFirst"><code>void</code></td>
184<td class="colLast"><code><span class="memberNameLink"><a href="../../../genius/core/boaframework/BOA.html#endSession-genius.core.NegotiationResult-">endSession</a></span>(<a href="../../../genius/core/NegotiationResult.html" title="class in genius.core">NegotiationResult</a>&nbsp;result)</code>
185<div class="block">Method called at the end of the negotiation.</div>
186</td>
187</tr>
188<tr id="i1" class="rowColor">
189<td class="colFirst"><code>abstract java.lang.String</code></td>
190<td class="colLast"><code><span class="memberNameLink"><a href="../../../genius/core/boaframework/BOA.html#getName--">getName</a></span>()</code>&nbsp;</td>
191</tr>
192<tr id="i2" class="altColor">
193<td class="colFirst"><code>java.util.Map&lt;java.lang.String,java.lang.Double&gt;</code></td>
194<td class="colLast"><code><span class="memberNameLink"><a href="../../../genius/core/boaframework/BOA.html#getParameters--">getParameters</a></span>()</code>&nbsp;</td>
195</tr>
196<tr id="i3" class="rowColor">
197<td class="colFirst"><code>java.util.Set&lt;<a href="../../../genius/core/boaframework/BOAparameter.html" title="class in genius.core.boaframework">BOAparameter</a>&gt;</code></td>
198<td class="colLast"><code><span class="memberNameLink"><a href="../../../genius/core/boaframework/BOA.html#getParameterSpec--">getParameterSpec</a></span>()</code>&nbsp;</td>
199</tr>
200<tr id="i4" class="altColor">
201<td class="colFirst"><code>protected void</code></td>
202<td class="colLast"><code><span class="memberNameLink"><a href="../../../genius/core/boaframework/BOA.html#init-genius.core.boaframework.NegotiationSession-java.util.Map-">init</a></span>(<a href="../../../genius/core/boaframework/NegotiationSession.html" title="class in genius.core.boaframework">NegotiationSession</a>&nbsp;negotiationSession,
203 java.util.Map&lt;java.lang.String,java.lang.Double&gt;&nbsp;parameters)</code>
204<div class="block">Initializes the model.</div>
205</td>
206</tr>
207<tr id="i5" class="rowColor">
208<td class="colFirst"><code>abstract java.io.Serializable</code></td>
209<td class="colLast"><code><span class="memberNameLink"><a href="../../../genius/core/boaframework/BOA.html#loadData--">loadData</a></span>()</code>
210<div class="block">Method used to load the saved object, possibly created in a previous
211 negotiation session.</div>
212</td>
213</tr>
214<tr id="i6" class="altColor">
215<td class="colFirst"><code>abstract void</code></td>
216<td class="colLast"><code><span class="memberNameLink"><a href="../../../genius/core/boaframework/BOA.html#storeData-java.io.Serializable-">storeData</a></span>(java.io.Serializable&nbsp;object)</code>
217<div class="block">Method used to store data that should be accessible in the next
218 negotiation session on the same scenario.</div>
219</td>
220</tr>
221</table>
222<ul class="blockList">
223<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
224<!-- -->
225</a>
226<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
227<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
228</ul>
229</li>
230</ul>
231</li>
232</ul>
233</div>
234<div class="details">
235<ul class="blockList">
236<li class="blockList">
237<!-- ============ FIELD DETAIL =========== -->
238<ul class="blockList">
239<li class="blockList"><a name="field.detail">
240<!-- -->
241</a>
242<h3>Field Detail</h3>
243<a name="negotiationSession">
244<!-- -->
245</a>
246<ul class="blockListLast">
247<li class="blockList">
248<h4>negotiationSession</h4>
249<pre>protected&nbsp;<a href="../../../genius/core/boaframework/NegotiationSession.html" title="class in genius.core.boaframework">NegotiationSession</a> negotiationSession</pre>
250<div class="block">Reference to the object which holds all information about the negotiation</div>
251</li>
252</ul>
253</li>
254</ul>
255<!-- ========= CONSTRUCTOR DETAIL ======== -->
256<ul class="blockList">
257<li class="blockList"><a name="constructor.detail">
258<!-- -->
259</a>
260<h3>Constructor Detail</h3>
261<a name="BOA--">
262<!-- -->
263</a>
264<ul class="blockListLast">
265<li class="blockList">
266<h4>BOA</h4>
267<pre>public&nbsp;BOA()</pre>
268</li>
269</ul>
270</li>
271</ul>
272<!-- ============ METHOD DETAIL ========== -->
273<ul class="blockList">
274<li class="blockList"><a name="method.detail">
275<!-- -->
276</a>
277<h3>Method Detail</h3>
278<a name="init-genius.core.boaframework.NegotiationSession-java.util.Map-">
279<!-- -->
280</a>
281<ul class="blockList">
282<li class="blockList">
283<h4>init</h4>
284<pre>protected&nbsp;void&nbsp;init(<a href="../../../genius/core/boaframework/NegotiationSession.html" title="class in genius.core.boaframework">NegotiationSession</a>&nbsp;negotiationSession,
285 java.util.Map&lt;java.lang.String,java.lang.Double&gt;&nbsp;parameters)</pre>
286<div class="block">Initializes the model. The method must be called once, and only once,
287 immediately after creating an opponent model.</div>
288<dl>
289<dt><span class="paramLabel">Parameters:</span></dt>
290<dd><code>negotiationSession</code> - reference to the state of the negotiation</dd>
291<dd><code>parameters</code> - the init parameters used to configure this component</dd>
292</dl>
293</li>
294</ul>
295<a name="getParameters--">
296<!-- -->
297</a>
298<ul class="blockList">
299<li class="blockList">
300<h4>getParameters</h4>
301<pre>public&nbsp;java.util.Map&lt;java.lang.String,java.lang.Double&gt;&nbsp;getParameters()</pre>
302<dl>
303<dt><span class="returnLabel">Returns:</span></dt>
304<dd>* The actual parameters that are used by this instance, as set by
305 call to <a href="../../../genius/core/boaframework/BOA.html#init-genius.core.boaframework.NegotiationSession-java.util.Map-"><code>init(NegotiationSession, Map)</code></a>.</dd>
306</dl>
307</li>
308</ul>
309<a name="getParameterSpec--">
310<!-- -->
311</a>
312<ul class="blockList">
313<li class="blockList">
314<h4>getParameterSpec</h4>
315<pre>public&nbsp;java.util.Set&lt;<a href="../../../genius/core/boaframework/BOAparameter.html" title="class in genius.core.boaframework">BOAparameter</a>&gt;&nbsp;getParameterSpec()</pre>
316<dl>
317<dt><span class="returnLabel">Returns:</span></dt>
318<dd>the parameter specifications of this BOA component. Default
319 implementation returns empty set. If a BOA component has
320 parameters, it should override this. This can be different from
321 the actual parameters used at runtime, which is passed through
322 <code>#init(NegotiationSession)</code> calls to the components.</dd>
323</dl>
324</li>
325</ul>
326<a name="endSession-genius.core.NegotiationResult-">
327<!-- -->
328</a>
329<ul class="blockList">
330<li class="blockList">
331<h4>endSession</h4>
332<pre>public&nbsp;void&nbsp;endSession(<a href="../../../genius/core/NegotiationResult.html" title="class in genius.core">NegotiationResult</a>&nbsp;result)</pre>
333<div class="block">Method called at the end of the negotiation. Ideal location to call the
334 storeData method to receiveMessage the data to be saved.</div>
335<dl>
336<dt><span class="paramLabel">Parameters:</span></dt>
337<dd><code>result</code> - of the negotiation.</dd>
338</dl>
339</li>
340</ul>
341<a name="storeData-java.io.Serializable-">
342<!-- -->
343</a>
344<ul class="blockList">
345<li class="blockList">
346<h4>storeData</h4>
347<pre>public abstract&nbsp;void&nbsp;storeData(java.io.Serializable&nbsp;object)</pre>
348<div class="block">Method used to store data that should be accessible in the next
349 negotiation session on the same scenario. This method can be called
350 during the negotiation, but it makes more sense to call it in the
351 endSession method.</div>
352<dl>
353<dt><span class="paramLabel">Parameters:</span></dt>
354<dd><code>object</code> - to be saved by this component.</dd>
355</dl>
356</li>
357</ul>
358<a name="loadData--">
359<!-- -->
360</a>
361<ul class="blockList">
362<li class="blockList">
363<h4>loadData</h4>
364<pre>public abstract&nbsp;java.io.Serializable&nbsp;loadData()</pre>
365<div class="block">Method used to load the saved object, possibly created in a previous
366 negotiation session. The method returns null when such an object does not
367 exist yet.</div>
368<dl>
369<dt><span class="returnLabel">Returns:</span></dt>
370<dd>saved object or null when not available.</dd>
371</dl>
372</li>
373</ul>
374<a name="getName--">
375<!-- -->
376</a>
377<ul class="blockListLast">
378<li class="blockList">
379<h4>getName</h4>
380<pre>public abstract&nbsp;java.lang.String&nbsp;getName()</pre>
381<dl>
382<dt><span class="returnLabel">Returns:</span></dt>
383<dd>a short name for this component.</dd>
384</dl>
385</li>
386</ul>
387</li>
388</ul>
389</li>
390</ul>
391</div>
392</div>
393<!-- ========= END OF CLASS DATA ========= -->
394<!-- ======= START OF BOTTOM NAVBAR ====== -->
395<div class="bottomNav"><a name="navbar.bottom">
396<!-- -->
397</a>
398<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
399<a name="navbar.bottom.firstrow">
400<!-- -->
401</a>
402<ul class="navList" title="Navigation">
403<li><a href="../../../overview-summary.html">Overview</a></li>
404<li><a href="package-summary.html">Package</a></li>
405<li class="navBarCell1Rev">Class</li>
406<li><a href="class-use/BOA.html">Use</a></li>
407<li><a href="package-tree.html">Tree</a></li>
408<li><a href="../../../deprecated-list.html">Deprecated</a></li>
409<li><a href="../../../index-all.html">Index</a></li>
410<li><a href="../../../help-doc.html">Help</a></li>
411</ul>
412</div>
413<div class="subNav">
414<ul class="navList">
415<li><a href="../../../genius/core/boaframework/Actions.html" title="enum in genius.core.boaframework"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
416<li><a href="../../../genius/core/boaframework/BOAagent.html" title="class in genius.core.boaframework"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
417</ul>
418<ul class="navList">
419<li><a href="../../../index.html?genius/core/boaframework/BOA.html" target="_top">Frames</a></li>
420<li><a href="BOA.html" target="_top">No&nbsp;Frames</a></li>
421</ul>
422<ul class="navList" id="allclasses_navbar_bottom">
423<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
424</ul>
425<div>
426<script type="text/javascript"><!--
427 allClassesLink = document.getElementById("allclasses_navbar_bottom");
428 if(window==top) {
429 allClassesLink.style.display = "block";
430 }
431 else {
432 allClassesLink.style.display = "none";
433 }
434 //-->
435</script>
436</div>
437<div>
438<ul class="subNavList">
439<li>Summary:&nbsp;</li>
440<li>Nested&nbsp;|&nbsp;</li>
441<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
442<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
443<li><a href="#method.summary">Method</a></li>
444</ul>
445<ul class="subNavList">
446<li>Detail:&nbsp;</li>
447<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
448<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
449<li><a href="#method.detail">Method</a></li>
450</ul>
451</div>
452<a name="skip.navbar.bottom">
453<!-- -->
454</a></div>
455<!-- ======== END OF BOTTOM NAVBAR ======= -->
456</body>
457</html>
Note: See TracBrowser for help on using the repository browser.