Skip to content
Snippets Groups Projects
Commit 16dac635 authored by Alexandre's avatar Alexandre
Browse files

Add README, Use mailbox getter

parent 7630a8f0
No related branches found
No related tags found
No related merge requests found
# LxPlot
A library for data clustering using multi-agent system
## Set up (With Gradle on an existing project)
* Download CluMATE source
* Rename the extracted folder "clumate"
* Create a new gradle project in the same directory as CluMATE
* In this new project, open build.gradle
* Add CluMATE to the dependencies
```
dependencies {
// Add the two following lines
// CluMATE
implementation project(':clumate')
...
}
```
* Open settings.gradle
* Add link to local CluMATE folder
include ':clumate'
project(':clumate').projectDir = new File(settingsDir, '../clumate')
* Click on the Gradle Refresh button
## Usage example
```java
var clumate = new CluMATE<CustomDataPoint>(new MASSettings(new CustomDataPointSimilarityScoreMethod(), 0.5f, EnumSet.noneOf(AMASOption), new CustomDataPointFuser()))
clumate.fit([new CustomDataPoint(1), new CustomDataPoint(2)])
var results = clumate.retrieveClusters()
```
\ No newline at end of file
......@@ -82,7 +82,7 @@ public class ClusterAgent<T extends DataPoint> extends Agent<ClusterAMAS<T>, Clu
protected void onPerceive() {
switch (state) {
case DORMANT -> {
var receivedRequestSimilarityMessage = this.mailbox.read(RequestSimilarityMessage.class);
var receivedRequestSimilarityMessage = this.getMailbox().read(RequestSimilarityMessage.class);
if (receivedRequestSimilarityMessage.isPresent()) {
receivedClusterForRequestSimilarity = receivedRequestSimilarityMessage.get().getCluster();
receivedRequestSimilarityRequester = (ClusterAgent) receivedRequestSimilarityMessage.get().getSender();
......@@ -93,7 +93,7 @@ public class ClusterAgent<T extends DataPoint> extends Agent<ClusterAMAS<T>, Clu
}
case WAITING_FOR_REPLY -> {
while (mailbox.hasMessageOfType(EvaluatedScoreMessage.class)) {
var evaluatedScoreMessage = this.mailbox.read(EvaluatedScoreMessage.class);
var evaluatedScoreMessage = this.getMailbox().read(EvaluatedScoreMessage.class);
if (evaluatedScoreMessage.isPresent()) {
similarityScoresReceived.put((ClusterAgent) evaluatedScoreMessage.get().getSender(), evaluatedScoreMessage.get().getSimilarityScore());
}
......@@ -172,7 +172,7 @@ public class ClusterAgent<T extends DataPoint> extends Agent<ClusterAMAS<T>, Clu
for (var agent : clusterAgentsRoughlySimilarOnReady) {
if (logger.isLoggable(Level.INFO))
logger.info(this + " sends RequestSimilarityMessage to " + agent);
agent.mailbox.receive(new RequestSimilarityMessage(this, cluster));
agent.getMailbox().receive(new RequestSimilarityMessage(this, cluster));
requestSimilarityMessageSentAgents.add(agent);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment