Class CoalitionBuilder
java.lang.Object
com.tnsai.coordination.groups.coalition.CoalitionBuilder
Builder for creating Coalition instances.
Usage Example
Coalition coalition = Coalition.builder()
.goal("Complete market analysis")
.formation(CoalitionFormation.CAPABILITY_BASED)
.rewardDistribution(RewardDistribution.SHAPLEY)
.minMembers(2)
.maxMembers(5)
.coalitionValue(100.0)
.add(agent1, agent2, agent3)
.autoNegotiate(true)
.build();
-
Method Summary
Modifier and TypeMethodDescriptionadd(com.tnsai.agents.Agent agent) Adds a potential member.add(com.tnsai.agents.Agent... agents) Adds multiple potential members.Adds multiple potential members.autoNegotiate(boolean autoNegotiate) Sets whether to auto-negotiate after build.autoStart(boolean autoStart) Sets whether to auto-start after build.build()Builds the Coalition.coalitionValue(double value) Sets the initial coalition value.description(String description) Sets the coalition description.formation(CoalitionFormation formation) Sets the formation strategy.Sets the coalition goal (required).Sets the coalition ID.maxMembers(int max) Sets maximum allowed members.minMembers(int min) Sets minimum required members.Sets the coalition name.policy(com.tnsai.agents.groups.GroupPolicy policy) Sets the group policy.rewardDistribution(RewardDistribution distribution) Sets the reward distribution strategy.
-
Method Details
-
id
Sets the coalition ID.- Parameters:
id- coalition ID- Returns:
- this builder
-
name
Sets the coalition name.- Parameters:
name- coalition name- Returns:
- this builder
-
description
Sets the coalition description.- Parameters:
description- description- Returns:
- this builder
-
goal
Sets the coalition goal (required).- Parameters:
goal- goal description- Returns:
- this builder
-
formation
Sets the formation strategy.- Parameters:
formation- formation strategy- Returns:
- this builder
-
rewardDistribution
Sets the reward distribution strategy.- Parameters:
distribution- distribution strategy- Returns:
- this builder
-
coalitionValue
Sets the initial coalition value.- Parameters:
value- coalition value- Returns:
- this builder
-
minMembers
Sets minimum required members.- Parameters:
min- minimum members- Returns:
- this builder
-
maxMembers
Sets maximum allowed members.- Parameters:
max- maximum members- Returns:
- this builder
-
policy
Sets the group policy.- Parameters:
policy- policy- Returns:
- this builder
-
add
Adds a potential member.- Parameters:
agent- agent to add- Returns:
- this builder
-
add
Adds multiple potential members.- Parameters:
agents- agents to add- Returns:
- this builder
-
addAll
Adds multiple potential members.- Parameters:
agents- agents to add- Returns:
- this builder
-
autoNegotiate
Sets whether to auto-negotiate after build.- Parameters:
autoNegotiate- auto-negotiate flag- Returns:
- this builder
-
autoStart
Sets whether to auto-start after build.- Parameters:
autoStart- auto-start flag- Returns:
- this builder
-
build
Builds the Coalition.- Returns:
- new Coalition instance
- Throws:
IllegalStateException- if goal not set
-