|
From: <jom...@us...> - 2016-05-12 13:42:19
|
Revision: 1913
http://sourceforge.net/p/jason/svn/1913
Author: jomifred
Date: 2016-05-12 13:42:16 +0000 (Thu, 12 May 2016)
Log Message:
-----------
add jason script (to run .mas2j files)
remove jacamo as a infra for .mas2j (.jcm should be used for jacamo appls)
Modified Paths:
--------------
trunk/bin/mas2j.sh
trunk/release-notes.txt
trunk/src/jason/infra/jade/JadeAgArch.java
trunk/src/jason/mas2j/MAS2JProject.java
trunk/src/jason/util/Config.java
trunk/src/test/MAS2JParserTest.java
Added Paths:
-----------
trunk/bin/jason
trunk/src/jason/runtime/RunJasonProject.java
Removed Paths:
-------------
trunk/lib/c4jason.jar
trunk/lib/cartago.jar
trunk/lib/jacamo.jar
trunk/lib/moise.jar
trunk/lib/npl.jar
Added: trunk/bin/jason
===================================================================
--- trunk/bin/jason (rev 0)
+++ trunk/bin/jason 2016-05-12 13:42:16 UTC (rev 1913)
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+if [ -z JASON_HOME ] ; then
+ CURDIR=`pwd`
+ JASON_HOME=`dirname $0`
+ cd "$JASON_HOME/.."
+ JASON_HOME=`pwd`
+ cd $CURDIR
+fi
+
+echo Jason home is $JASON_HOME
+
+if [ -z $JDK_HOME ] ; then
+ if [ -n $JAVA_HOME ] ; then
+ JDK_HOME=$JAVA_HOME
+ fi
+fi
+
+if [ -z $JDK_HOME ] ; then
+ if [ $OS == Darwin ] ; then
+ JDK_HOME=/usr
+ fi
+fi
+
+# check JDK_HOME
+if [ ! -f $JDK_HOME/bin/javac ] ; then
+ echo JDK_HOME is not properly set!
+fi
+
+export PATH="$JDK_HOME/bin":$PATH
+
+JASON_JAR=`find $JASON_HOME/lib -name jason-2*.jar`
+JACAMO_JAR=`find $JASON_HOME/lib -name jacamo*.jar`
+
+java -cp $JASON_JAR:$JACAMO_JAR jason.runtime.RunJasonProject $1
Property changes on: trunk/bin/jason
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Modified: trunk/bin/mas2j.sh
===================================================================
--- trunk/bin/mas2j.sh 2016-05-09 10:19:38 UTC (rev 1912)
+++ trunk/bin/mas2j.sh 2016-05-12 13:42:16 UTC (rev 1913)
@@ -1,7 +1,7 @@
#!/bin/sh
#
-# this script creates the Ant script (build.xml)
-# to run a Jason project
+# this script creates the Ant script (build.xml)
+# to run a Jason project
#
if [ ! -f $1 ]
@@ -10,16 +10,20 @@
exit
fi
+if [ -z JASON_HOME ] ; then
+ CURDIR=`pwd`
+ JASON_HOME=`dirname $0`
+ cd "$JASON_HOME/.."
+ JASON_HOME=`pwd`
+ cd $CURDIR
+fi
-CURDIR=`pwd`
+JASON_JAR=`find $JASON_HOME/lib -name jason-2*.jar`
+JACAMO_JAR=`find $JASON_HOME/lib -name jacamo*.jar`
-JASONDIR=`dirname $0`/..
-cd $JASONDIR
-JASONDIR=`pwd`
+java -cp $JASON_JAR:$JACAMO_JAR jason.mas2j.parser.mas2j $1 $2
-cd $CURDIR
+# bin/classes:$JASON_HOME/lib/jason.jar:$JASON_HOME/lib/jade.jar:$JASON_HOME/lib/c4jason.jar:$JASON_HOME/lib/cartago.jar:$JASON_HOME/lib/jacamo.jar:$CLASSPATH:. \
+# jason.mas2j.parser.mas2j $1 $2
-java -classpath bin/classes:$JASONDIR/lib/jason.jar:$JASONDIR/lib/jade.jar:$JASONDIR/lib/c4jason.jar:$JASONDIR/lib/cartago.jar:$JASONDIR/lib/jacamo.jar:$CLASSPATH:. \
- jason.mas2j.parser.mas2j $1 $2
-
#chmod u+x *.sh
Deleted: trunk/lib/c4jason.jar
===================================================================
(Binary files differ)
Deleted: trunk/lib/cartago.jar
===================================================================
(Binary files differ)
Deleted: trunk/lib/jacamo.jar
===================================================================
(Binary files differ)
Deleted: trunk/lib/moise.jar
===================================================================
(Binary files differ)
Deleted: trunk/lib/npl.jar
===================================================================
(Binary files differ)
Modified: trunk/release-notes.txt
===================================================================
--- trunk/release-notes.txt 2016-05-09 10:19:38 UTC (rev 1912)
+++ trunk/release-notes.txt 2016-05-12 13:42:16 UTC (rev 1913)
@@ -32,7 +32,9 @@
Changes in the API:
- AgArch act method has just one parameter
- Java 1.7 is used
+- JaCaMo is not an available infrastructure anymore, it has its own support to run MAS (the .jcm files)
+
New Tutorial on BDI (see doc/index.html)
---------------------------
Modified: trunk/src/jason/infra/jade/JadeAgArch.java
===================================================================
--- trunk/src/jason/infra/jade/JadeAgArch.java 2016-05-09 10:19:38 UTC (rev 1912)
+++ trunk/src/jason/infra/jade/JadeAgArch.java 2016-05-12 13:42:16 UTC (rev 1913)
@@ -1,5 +1,13 @@
package jason.infra.jade;
+import java.io.File;
+import java.io.FileReader;
+import java.io.IOException;
+import java.io.Serializable;
+import java.util.logging.Level;
+
+import org.w3c.dom.Document;
+
import jade.core.AID;
import jade.core.behaviours.Behaviour;
import jade.core.behaviours.CyclicBehaviour;
@@ -18,17 +26,7 @@
import jason.mas2j.MAS2JProject;
import jason.mas2j.parser.ParseException;
-import java.io.File;
-import java.io.FileReader;
-import java.io.IOException;
-import java.io.Serializable;
-import java.util.logging.Level;
-import org.w3c.dom.Document;
-
-import c4jason.CartagoEnvironment;
-
-
/**
* Implementation of the Jade Architecture to run Jason agents
*
@@ -168,7 +166,7 @@
public static boolean isCartagoJadeCase(MAS2JProject project) {
return
project.getEnvClass() != null &&
- project.getEnvClass().getClassName().equals(CartagoEnvironment.class.getName()) &&
+ project.getEnvClass().getClassName().equals("c4jason.CartagoEnvironment") &&
project.isJade();
}
@@ -176,9 +174,10 @@
public static synchronized void startCartagoNode(String[] args) {
if (!cartagoStarted) {
System.out.print("Starting cartago node....");
- CartagoEnvironment env = new CartagoEnvironment();
- env.init(args);
- System.out.println("ok.");
+ //CartagoEnvironment env = new CartagoEnvironment();
+ //env.init(args);
+ //System.out.println("ok.");
+ System.out.println("**** not implemented!!!! ****");
}
cartagoStarted = true;
}
Modified: trunk/src/jason/mas2j/MAS2JProject.java
===================================================================
--- trunk/src/jason/mas2j/MAS2JProject.java 2016-05-09 10:19:38 UTC (rev 1912)
+++ trunk/src/jason/mas2j/MAS2JProject.java 2016-05-12 13:42:16 UTC (rev 1913)
@@ -305,7 +305,7 @@
String facClass = Config.get().getInfrastructureFactoryClass(infrastructure.getClassName());
infraFac = (InfrastructureFactory)Class.forName(facClass).newInstance();
} catch (Exception e) {
- throw new JasonException("The project's infrastructure ('"+infrastructure.getClassName()+"') is unknown! \n"+e);
+ throw new JasonException("The project's infrastructure ('"+infrastructure.getClassName()+"') is not well configured! \n"+e);
}
}
return infraFac;
Added: trunk/src/jason/runtime/RunJasonProject.java
===================================================================
--- trunk/src/jason/runtime/RunJasonProject.java (rev 0)
+++ trunk/src/jason/runtime/RunJasonProject.java 2016-05-12 13:42:16 UTC (rev 1913)
@@ -0,0 +1,68 @@
+package jason.runtime;
+
+import java.io.File;
+
+import jason.infra.MASLauncherInfraTier;
+import jason.mas2j.MAS2JProject;
+import jason.mas2j.parser.mas2j;
+import jason.util.Config;
+
+/**
+ * Run a Jason mas2j project
+ *
+ * parameters:
+ * /Jason mas2j Project File/
+ *
+ * @author jomi
+ *
+ */
+public class RunJasonProject {
+
+ static MASLauncherInfraTier launcher;
+
+ // Run the parser
+ public static void main (String args[]) {
+
+ String name;
+ mas2j parser;
+ MAS2JProject project = new MAS2JProject();
+
+ if (args.length == 0) {
+ System.out.println("usage must be:");
+ System.out.println(" java "+RunJasonProject.class.getName()+" <MAS2j Project File>");
+ return;
+ } else {
+ name = args[0];
+ System.err.println("reading from file " + name + " ..." );
+ try {
+ parser = new mas2j(new java.io.FileInputStream(name));
+ } catch(java.io.FileNotFoundException e){
+ System.err.println("file \"" + name + "\" not found.");
+ return;
+ }
+ }
+
+ // parsing
+ try {
+ File file = new File(name);
+ //File directory = file.getAbsoluteFile().getParentFile();
+ project = parser.mas();
+ Config.get().fix();
+ project.setProjectFile(file);
+ System.out.println("file "+name+" parsed successfully!\n");
+
+ launcher = project.getInfrastructureFactory().createMASLauncher();
+ launcher.setProject(project);
+ launcher.writeScripts(false, false);
+
+ new Thread(launcher, "MAS-Launcher").start();
+ } catch(Exception e){
+ System.err.println("parsing errors found... \n" + e);
+ }
+ }
+
+ public MASLauncherInfraTier getLauncher() {
+ return launcher;
+ }
+
+}
Modified: trunk/src/jason/util/Config.java
===================================================================
--- trunk/src/jason/util/Config.java 2016-05-09 10:19:38 UTC (rev 1912)
+++ trunk/src/jason/util/Config.java 2016-05-12 13:42:16 UTC (rev 1913)
@@ -59,7 +59,7 @@
/** path to jade.jar */
public static final String JADE_JAR = "jadeJar";
public static final String MOISE_JAR = "moiseJar";
- public static final String JACAMO_JAR = "jacamoJar";
+ //public static final String JACAMO_JAR = "jacamoJar";
/** runtime jade arguments (the same used in jade.Boot) */
public static final String JADE_ARGS = "jadeArgs";
@@ -82,7 +82,7 @@
public static final String SHOW_ANNOTS = "showAnnots";
- public static final String jacamoHomeProp = "JaCaMoHome";
+ //public static final String jacamoHomeProp = "JaCaMoHome";
public static final String SHORT_UNNAMED_VARS = "shortUnnamedVars";
public static final String START_WEB_MI = "startWebMindInspector";
@@ -273,7 +273,7 @@
tryToFixJarFileConf(JASON_JAR, "jason", 700000);
tryToFixJarFileConf(JADE_JAR, "jade", 2000000);
tryToFixJarFileConf(MOISE_JAR, "moise", 300000);
- tryToFixJarFileConf(JACAMO_JAR, "jacamo", 5000);
+ //tryToFixJarFileConf(JACAMO_JAR, "jacamo", 5000);
tryToFixJarFileConf(JASON_JAR, "jason", 700000); // in case jacamo is found
// fix java home
@@ -391,7 +391,7 @@
// Default infrastructures
put("infrastructure.Centralised", CentralisedFactory.class.getName());
put("infrastructure.Jade", JadeFactory.class.getName());
- put("infrastructure.JaCaMo", "jacamo.infra.JaCaMoInfrastructureFactory");
+ //put("infrastructure.JaCaMo", "jacamo.infra.JaCaMoInfrastructureFactory");
}
@@ -437,7 +437,7 @@
} catch (Exception e) {
System.err.println("Error getting user infrastructures.");
}
- return new String[] {"Centralised","Jade","JaCaMo"};
+ return new String[] {"Centralised","Jade" }; //,"JaCaMo"};
}
public String getInfrastructureFactoryClass(String infraId) {
@@ -521,6 +521,7 @@
}
} catch (Exception e) {}
+ /*
try {
// try jacamo jar
File jacamojardir= new File(getProperty(JACAMO_JAR)).getAbsoluteFile().getCanonicalFile().getParentFile();
@@ -531,7 +532,8 @@
return;
}
} catch (Exception e) {}
-
+ */
+
// try current dir
jarFile = findJarInDirectory(new File("."), jarFilePrefix);
if (checkJar(jarFile, minSize)) {
Modified: trunk/src/test/MAS2JParserTest.java
===================================================================
--- trunk/src/test/MAS2JParserTest.java 2016-05-09 10:19:38 UTC (rev 1912)
+++ trunk/src/test/MAS2JParserTest.java 2016-05-12 13:42:16 UTC (rev 1913)
@@ -8,6 +8,7 @@
import jason.mas2j.MAS2JProject;
import jason.mas2j.parser.ParseException;
import jason.mas2j.parser.mas2j;
+import jason.util.Config;
import java.io.StringReader;
import java.util.Map;
@@ -22,7 +23,7 @@
protected void setUp() throws Exception {
super.setUp();
StringBuffer source = new StringBuffer("MAS auctionCent { \n");
- source.append("infrastructure: Centralised \n");
+ source.append("infrastructure: JaCaMo \n");
source.append("environment: myEnv at \"x.edu\" \n");
source.append("executionControl: myController ");
source.append("agents: ag1 [events=discard,intBels=newFocus,osfile=\"a/x.xml\"]; ag2 /home/agTest.asl agentClass mypkg.MyAgent #2; ag3 at \"x.edu\"; auctionner agentArchClass AuctionnerGUI;");
@@ -61,7 +62,12 @@
assertEquals(project.getDirectiveClasses().size(),2);
assertEquals(project.getDirectiveClasses().get("md2").toString(), "mypkg.LogDirective");
+ assertEquals("JaCaMo", project.getInfrastructure().getClassName());
+ String facClass = Config.get().getInfrastructureFactoryClass(project.getInfrastructure().getClassName());
+ assertEquals("jacamo.infra.JaCaMoInfrastructureFactory", facClass);
+
+ //System.out.println(project.getInfrastructureFactory());
} catch (Exception e) {
System.err.println("Error:"+e);
e.printStackTrace();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jom...@us...> - 2016-05-13 13:26:31
|
Revision: 1914
http://sourceforge.net/p/jason/svn/1914
Author: jomifred
Date: 2016-05-13 13:26:28 +0000 (Fri, 13 May 2016)
Log Message:
-----------
add doc about namespaces
Modified Paths:
--------------
trunk/src/jason/util/Config.java
Added Paths:
-----------
trunk/doc/modules-namespaces.pdf
Added: trunk/doc/modules-namespaces.pdf
===================================================================
(Binary files differ)
Index: trunk/doc/modules-namespaces.pdf
===================================================================
--- trunk/doc/modules-namespaces.pdf 2016-05-12 13:42:16 UTC (rev 1913)
+++ trunk/doc/modules-namespaces.pdf 2016-05-13 13:26:28 UTC (rev 1914)
Property changes on: trunk/doc/modules-namespaces.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Modified: trunk/src/jason/util/Config.java
===================================================================
--- trunk/src/jason/util/Config.java 2016-05-12 13:42:16 UTC (rev 1913)
+++ trunk/src/jason/util/Config.java 2016-05-13 13:26:28 UTC (rev 1914)
@@ -468,12 +468,12 @@
} catch (Exception ex1) {
try {
Properties p = new Properties();
- System.out.println("try 2 "+ex1);
- ex1.printStackTrace();
+ //System.out.println("try 2 "+ex1);
+ //ex1.printStackTrace();
p.load(new FileReader("bin"+getDistPropFile()));
return p.getProperty("version") + "." + p.getProperty("release");
} catch (Exception ex2) {
- System.out.println("*"+ex2);
+ //System.out.println("*"+ex2);
return "?";
}
}
@@ -489,7 +489,7 @@
}
}
- void tryToFixJarFileConf(String jarEntry, String jarFilePrefix, int minSize) {
+ public void tryToFixJarFileConf(String jarEntry, String jarFilePrefix, int minSize) {
String jarFile = getProperty(jarEntry);
if (jarFile == null || !checkJar(jarFile, minSize)) {
System.out.println("Wrong configuration for " + jarFilePrefix + ", current is " + jarFile);
@@ -502,6 +502,18 @@
return;
}
+ // try current dir
+ jarFile = findJarInDirectory(new File("."), jarFilePrefix);
+ if (checkJar(jarFile, minSize)) {
+ try {
+ put(jarEntry, new File(jarFile).getCanonicalFile().getAbsolutePath());
+ System.out.println("found at " + jarFile);
+ return;
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
// try to get from classpath
jarFile = getJarFromClassPath(jarFilePrefix);
if (checkJar(jarFile, minSize)) {
@@ -534,18 +546,6 @@
} catch (Exception e) {}
*/
- // try current dir
- jarFile = findJarInDirectory(new File("."), jarFilePrefix);
- if (checkJar(jarFile, minSize)) {
- try {
- put(jarEntry, new File(jarFile).getCanonicalFile().getAbsolutePath());
- System.out.println("found at " + jarFile);
- return;
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
// try current dir + lib
jarFile = findJarInDirectory(new File(".." + File.separator + "lib"), jarFilePrefix);
if (checkJar(jarFile, minSize)) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jom...@us...> - 2016-05-17 11:06:48
|
Revision: 1915
http://sourceforge.net/p/jason/svn/1915
Author: jomifred
Date: 2016-05-17 11:06:45 +0000 (Tue, 17 May 2016)
Log Message:
-----------
improve config
Modified Paths:
--------------
trunk/build.xml
trunk/release-notes.txt
trunk/src/jason/asSemantics/TransitionSystem.java
trunk/src/jason/infra/centralised/CentralisedAgArch.java
trunk/src/jason/infra/centralised/CentralisedAgArchAsynchronous.java
trunk/src/jason/infra/centralised/RunCentralisedMAS.java
trunk/src/jason/infra/components/ActComponent.java
trunk/src/jason/infra/components/AgentComponent.java
trunk/src/jason/infra/components/CircumstanceListenerComponents.java
trunk/src/jason/infra/components/DeliberateComponent.java
trunk/src/jason/infra/components/SenseComponent.java
trunk/src/jason/util/Config.java
Modified: trunk/build.xml
===================================================================
--- trunk/build.xml 2016-05-13 13:26:28 UTC (rev 1914)
+++ trunk/build.xml 2016-05-17 11:06:45 UTC (rev 1915)
@@ -4,7 +4,7 @@
<property environment="env" />
- <property name="version" value="2" />
+ <property name="version" value="2" />
<property name="release" value="0.beta" />
<property name="jasonJar" value="${basedir}/lib/jason-${version}.${release}.jar" />
@@ -12,7 +12,7 @@
<property name="jasonSJar" value="${basedir}/lib/s-jason.jar" />
<property name="replJar" value="${basedir}/lib/jason-repl.jar" />
<property name="coreJar" value="${basedir}/lib/jason-core.jar" />
-
+
<property name="build.dir" value="${basedir}/bin/classes" />
<property name="dist.properties" value="${basedir}/bin/dist.properties" />
Modified: trunk/release-notes.txt
===================================================================
--- trunk/release-notes.txt 2016-05-13 13:26:28 UTC (rev 1914)
+++ trunk/release-notes.txt 2016-05-17 11:06:45 UTC (rev 1915)
@@ -6,7 +6,7 @@
New features:
-- modules and namespaces, see doc/modules.pdf
+- modules and namespaces, see doc/modules-namespaces.pdf
- concurrent plans and advanced concurrent agent architectures, see doc/concurrency.pdf
Modified: trunk/src/jason/asSemantics/TransitionSystem.java
===================================================================
--- trunk/src/jason/asSemantics/TransitionSystem.java 2016-05-13 13:26:28 UTC (rev 1914)
+++ trunk/src/jason/asSemantics/TransitionSystem.java 2016-05-17 11:06:45 UTC (rev 1915)
@@ -1388,7 +1388,7 @@
}
public boolean canSleepAct() {
- //&& !C.hasPendingAction()
+ //&& !C.hasPendingAction()
return !C.hasIntention() && !C.hasFeedbackAction() && C.getSelectedIntention() == null && getUserAgArch().canSleep();
}
Modified: trunk/src/jason/infra/centralised/CentralisedAgArch.java
===================================================================
--- trunk/src/jason/infra/centralised/CentralisedAgArch.java 2016-05-13 13:26:28 UTC (rev 1914)
+++ trunk/src/jason/infra/centralised/CentralisedAgArch.java 2016-05-17 11:06:45 UTC (rev 1915)
@@ -200,7 +200,7 @@
//int sumDel = 0; int nbDel = 0;
protected void deliberate() {
- TransitionSystem ts = getTS();
+ TransitionSystem ts = getTS();
int i = 0;
while (running && i++ < cyclesDeliberate && !ts.canSleepDeliberate()) {
ts.deliberate();
@@ -211,8 +211,8 @@
//int sumAct = 0; int nbAct = 0;
protected void act() {
- TransitionSystem ts = getTS();
-
+ TransitionSystem ts = getTS();
+
int i = 0;
int ca = cyclesAct;
if (cyclesAct == 9999)
@@ -226,9 +226,9 @@
}
protected void reasoningCycle() {
- sense();
- deliberate();
- act();
+ sense();
+ deliberate();
+ act();
}
public void run() {
Modified: trunk/src/jason/infra/centralised/CentralisedAgArchAsynchronous.java
===================================================================
--- trunk/src/jason/infra/centralised/CentralisedAgArchAsynchronous.java 2016-05-13 13:26:28 UTC (rev 1914)
+++ trunk/src/jason/infra/centralised/CentralisedAgArchAsynchronous.java 2016-05-17 11:06:45 UTC (rev 1915)
@@ -10,11 +10,11 @@
import jason.infra.components.SenseComponent;
public class CentralisedAgArchAsynchronous extends CentralisedAgArch implements Runnable {
- private SenseComponent senseComponent;
+ private SenseComponent senseComponent;
private DeliberateComponent deliberateComponent;
private ActComponent actComponent;
- private ExecutorService executorSense;
+ private ExecutorService executorSense;
private ExecutorService executorDeliberate;
private ExecutorService executorAct;
@@ -23,80 +23,80 @@
public Object objAct = new Object();
public CentralisedAgArchAsynchronous() {
- super();
-
- senseComponent = new SenseComponent(this);
- deliberateComponent = new DeliberateComponent(this);
- actComponent = new ActComponent(this);
+ super();
+
+ senseComponent = new SenseComponent(this);
+ deliberateComponent = new DeliberateComponent(this);
+ actComponent = new ActComponent(this);
}
- public void wakeUpSense() {
- senseComponent.wakeUp();
- }
+ public void wakeUpSense() {
+ senseComponent.wakeUp();
+ }
- public void wakeUpDeliberate() {
- deliberateComponent.wakeUp();
- }
-
- public void wakeUpAct() {
- actComponent.wakeUp();
- }
-
- public SenseComponent getSenseComponent() {
- return senseComponent;
- }
+ public void wakeUpDeliberate() {
+ deliberateComponent.wakeUp();
+ }
- public DeliberateComponent getDeliberateComponent() {
- return deliberateComponent;
- }
-
- public ActComponent getActComponent() {
- return actComponent;
- }
-
+ public void wakeUpAct() {
+ actComponent.wakeUp();
+ }
+
+ public SenseComponent getSenseComponent() {
+ return senseComponent;
+ }
+
+ public DeliberateComponent getDeliberateComponent() {
+ return deliberateComponent;
+ }
+
+ public ActComponent getActComponent() {
+ return actComponent;
+ }
+
public ExecutorService getExecutorSense() {
- return executorSense;
- }
+ return executorSense;
+ }
- public ExecutorService getExecutorDeliberate() {
- return executorDeliberate;
- }
+ public ExecutorService getExecutorDeliberate() {
+ return executorDeliberate;
+ }
- public ExecutorService getExecutorAct() {
- return executorAct;
- }
+ public ExecutorService getExecutorAct() {
+ return executorAct;
+ }
- public void setExecutorAct(ExecutorService executorAct) {
- this.executorAct = executorAct;
- }
+ public void setExecutorAct(ExecutorService executorAct) {
+ this.executorAct = executorAct;
+ }
- public void setExecutorSense(ExecutorService executorSense) {
- this.executorSense = executorSense;
- }
+ public void setExecutorSense(ExecutorService executorSense) {
+ this.executorSense = executorSense;
+ }
- public void setExecutorDeliberate(ExecutorService executorDeliberate) {
- this.executorDeliberate = executorDeliberate;
- }
+ public void setExecutorDeliberate(ExecutorService executorDeliberate) {
+ this.executorDeliberate = executorDeliberate;
+ }
- public void setSenseComponent(SenseComponent senseComponent) {
- this.senseComponent = senseComponent;
- }
-
- public void addListenerToC(CircumstanceListener listener) {
- getTS().getC().addEventListener(listener);
- }
-
- public void receiveMsg(Message m) {
- synchronized (objSense) {
- super.receiveMsg(m);
- }
+ public void setSenseComponent(SenseComponent senseComponent) {
+ this.senseComponent = senseComponent;
}
+ public void addListenerToC(CircumstanceListener listener) {
+ getTS().getC().addEventListener(listener);
+ }
+
+ public void receiveMsg(Message m) {
+ synchronized (objSense) {
+ super.receiveMsg(m);
+ }
+ }
+
/** called the the environment when the action was executed */
public void actionExecuted(ActionExec action) {
- synchronized (objAct) {
- super.actionExecuted(action);
- }
+ synchronized (objAct) {
+ super.actionExecuted(action);
+ }
}
}
Modified: trunk/src/jason/infra/centralised/RunCentralisedMAS.java
===================================================================
--- trunk/src/jason/infra/centralised/RunCentralisedMAS.java 2016-05-13 13:26:28 UTC (rev 1914)
+++ trunk/src/jason/infra/centralised/RunCentralisedMAS.java 2016-05-17 11:06:45 UTC (rev 1915)
@@ -433,20 +433,20 @@
public void createAgs() throws JasonException {
-
- RConf generalConf;
- if (project.getInfrastructure().hasParameter("pool")) {
- generalConf = RConf.POOL_SYNCH;
- } else if (project.getInfrastructure().hasParameter("synch_scheduled")) {
- generalConf = RConf.POOL_SYNCH_SCHEDULED;
- } else if (project.getInfrastructure().hasParameter("asynch")) {
- generalConf = RConf.ASYNCH;
- } else if (project.getInfrastructure().hasParameter("asynch_shared")) {
- generalConf = RConf.ASYNCH_SHARED_POOLS;
- } else {
- generalConf = RConf.TRHEADED;
- }
-
+
+ RConf generalConf;
+ if (project.getInfrastructure().hasParameter("pool")) {
+ generalConf = RConf.POOL_SYNCH;
+ } else if (project.getInfrastructure().hasParameter("synch_scheduled")) {
+ generalConf = RConf.POOL_SYNCH_SCHEDULED;
+ } else if (project.getInfrastructure().hasParameter("asynch")) {
+ generalConf = RConf.ASYNCH;
+ } else if (project.getInfrastructure().hasParameter("asynch_shared")) {
+ generalConf = RConf.ASYNCH_SHARED_POOLS;
+ } else {
+ generalConf = RConf.TRHEADED;
+ }
+
//boolean isPool = project.getInfrastructure().hasParameter("pool") || project.getInfrastructure().hasParameter("synch_scheduled");
//boolean isAsynch = project.getInfrastructure().hasParameter("asynch") || project.getInfrastructure().hasParameter("asynch_shared");
if (generalConf != RConf.TRHEADED) logger.info("Creating agents....");
@@ -480,38 +480,38 @@
RConf agentConf;
if (ap.getOption("rc") != null) {
- if (ap.getOption("rc").equals("pool")) {
- agentConf = RConf.POOL_SYNCH;
- } else if (ap.getOption("rc").equals("synch_scheduled")) {
- agentConf = RConf.POOL_SYNCH_SCHEDULED;
- } else if (ap.getOption("rc").equals("asynch")) {
- agentConf = RConf.ASYNCH;
- } else if (ap.getOption("rc").equals("asynch_shared")) {
- agentConf = RConf.ASYNCH_SHARED_POOLS;
- } else {
- agentConf = RConf.TRHEADED;
- }
+ if (ap.getOption("rc").equals("pool")) {
+ agentConf = RConf.POOL_SYNCH;
+ } else if (ap.getOption("rc").equals("synch_scheduled")) {
+ agentConf = RConf.POOL_SYNCH_SCHEDULED;
+ } else if (ap.getOption("rc").equals("asynch")) {
+ agentConf = RConf.ASYNCH;
+ } else if (ap.getOption("rc").equals("asynch_shared")) {
+ agentConf = RConf.ASYNCH_SHARED_POOLS;
+ } else {
+ agentConf = RConf.TRHEADED;
+ }
} else {
- agentConf = generalConf;
+ agentConf = generalConf;
}
//Get the number of reasoning cycles or number of cycles for each stage
int cycles = 0;
- int cyclesSense = 0;
- int cyclesDeliberate = 0;
- int cyclesAct = 0;
-
+ int cyclesSense = 0;
+ int cyclesDeliberate = 0;
+ int cyclesAct = 0;
+
if (ap.getOption("cycles") != null) {
- cycles = Integer.valueOf(ap.getOption("cycles"));
+ cycles = Integer.valueOf(ap.getOption("cycles"));
}
if (ap.getOption("cycles_sense") != null) {
- cyclesSense = Integer.valueOf(ap.getOption("cycles_sense"));
+ cyclesSense = Integer.valueOf(ap.getOption("cycles_sense"));
}
if (ap.getOption("cycles_deliberate") != null) {
- cyclesDeliberate = Integer.valueOf(ap.getOption("cycles_deliberate"));
+ cyclesDeliberate = Integer.valueOf(ap.getOption("cycles_deliberate"));
}
if (ap.getOption("cycles_act") != null) {
- cyclesAct = Integer.valueOf(ap.getOption("cycles_act"));
+ cyclesAct = Integer.valueOf(ap.getOption("cycles_act"));
}
//Create agents according to the specific architecture
@@ -520,44 +520,44 @@
} else if (agentConf == RConf.POOL_SYNCH_SCHEDULED) {
agArch = new CentralisedAgArchSynchronousScheduled();
if (cycles != 0) {
- if (cyclesSense == 0) {
- cyclesSense = cycles;
- }
- if (cyclesDeliberate == 0) {
- cyclesDeliberate = cycles;
- }
- if (cyclesAct == 0) {
- cyclesAct = cycles;
- }
- cycles = 1;
+ if (cyclesSense == 0) {
+ cyclesSense = cycles;
+ }
+ if (cyclesDeliberate == 0) {
+ cyclesDeliberate = cycles;
+ }
+ if (cyclesAct == 0) {
+ cyclesAct = cycles;
+ }
+ cycles = 1;
}
} else if (agentConf == RConf.ASYNCH || agentConf == RConf.ASYNCH_SHARED_POOLS) {
- agArch = new CentralisedAgArchAsynchronous();
+ agArch = new CentralisedAgArchAsynchronous();
if (cycles != 0) {
- if (cyclesSense == 0) {
- cyclesSense = cycles;
- }
- if (cyclesDeliberate == 0) {
- cyclesDeliberate = cycles;
- }
- if (cyclesAct == 0) {
- cyclesAct = cycles;
- }
- cycles = 1;
- }
+ if (cyclesSense == 0) {
+ cyclesSense = cycles;
+ }
+ if (cyclesDeliberate == 0) {
+ cyclesDeliberate = cycles;
+ }
+ if (cyclesAct == 0) {
+ cyclesAct = cycles;
+ }
+ cycles = 1;
+ }
} else {
agArch = new CentralisedAgArch();
if (cycles != 0) {
- if (cyclesSense == 0) {
- cyclesSense = cycles;
- }
- if (cyclesDeliberate == 0) {
- cyclesDeliberate = cycles;
- }
- if (cyclesAct == 0) {
- cyclesAct = cycles;
- }
- cycles = 1;
+ if (cyclesSense == 0) {
+ cyclesSense = cycles;
+ }
+ if (cyclesDeliberate == 0) {
+ cyclesDeliberate = cycles;
+ }
+ if (cyclesAct == 0) {
+ cyclesAct = cycles;
+ }
+ cycles = 1;
}
}
@@ -621,36 +621,36 @@
logger.fine("Creating agent " + numberedAg + " (" + (cAg + 1) + "/" + ap.getNbInstances() + ")");
CentralisedAgArch agArch;
if (isPool) {
- if (project.getInfrastructure().hasParameter("synch_scheduled")) {
- agArch = new CentralisedAgArchSynchronousScheduled();
- if (ap.getOption("cycles") != null) {
- agArch.setCycles(Integer.valueOf(ap.getOption("cycles")));
- }
- } else {
- agArch = new CentralisedAgArchForPool();
- if (ap.getOption("cycles") != null) {
- agArch.setCycles(Integer.valueOf(ap.getOption("cycles")));
- }
- }
+ if (project.getInfrastructure().hasParameter("synch_scheduled")) {
+ agArch = new CentralisedAgArchSynchronousScheduled();
+ if (ap.getOption("cycles") != null) {
+ agArch.setCycles(Integer.valueOf(ap.getOption("cycles")));
+ }
+ } else {
+ agArch = new CentralisedAgArchForPool();
+ if (ap.getOption("cycles") != null) {
+ agArch.setCycles(Integer.valueOf(ap.getOption("cycles")));
+ }
+ }
} else if (isAsynch) {
- agArch = new CentralisedAgArchAsynchronous();
-
- int cyclesSense = 0;
- int cyclesDeliberate = 0;
- int cyclesAct = 0;
-
- if (ap.getOption("cycles") != null) {
- cyclesSense = cyclesDeliberate = cyclesAct = Integer.valueOf(ap.getOption("cycles"));
- }
-
+ agArch = new CentralisedAgArchAsynchronous();
+
+ int cyclesSense = 0;
+ int cyclesDeliberate = 0;
+ int cyclesAct = 0;
+
+ if (ap.getOption("cycles") != null) {
+ cyclesSense = cyclesDeliberate = cyclesAct = Integer.valueOf(ap.getOption("cycles"));
+ }
+
if (ap.getOption("cycles_sense") != null) {
- cyclesSense = Integer.valueOf(ap.getOption("cycles_sense"));
+ cyclesSense = Integer.valueOf(ap.getOption("cycles_sense"));
}
if (ap.getOption("cycles_deliberate") != null) {
- cyclesDeliberate = Integer.valueOf(ap.getOption("cycles_deliberate"));
+ cyclesDeliberate = Integer.valueOf(ap.getOption("cycles_deliberate"));
}
if (ap.getOption("cycles_act") != null) {
- cyclesAct = Integer.valueOf(ap.getOption("cycles_act"));
+ cyclesAct = Integer.valueOf(ap.getOption("cycles_act"));
}
((CentralisedAgArchAsynchronous) agArch).getSenseComponent().setCycles(cyclesSense);
@@ -660,7 +660,7 @@
} else {
agArch = new CentralisedAgArch();
if (ap.getOption("cycles") != null) {
- agArch.setCycles(Integer.valueOf(ap.getOption("cycles")));
+ agArch.setCycles(Integer.valueOf(ap.getOption("cycles")));
}
}
agArch.setAgName(numberedAg);
@@ -721,23 +721,23 @@
/** creates one thread per agent */
private void createAgsThreads() {
-
- int cyclesSense = 1;
- int cyclesDeliberate = 1;
- int cyclesAct = 5;
-
- if (project.getInfrastructure().hasParameters()) {
+
+ int cyclesSense = 1;
+ int cyclesDeliberate = 1;
+ int cyclesAct = 5;
+
+ if (project.getInfrastructure().hasParameters()) {
if (project.getInfrastructure().getParametersArray().length > 2) {
- cyclesSense = Integer.parseInt(project.getInfrastructure().getParameter(1));
- cyclesDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(2));
- cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(3));
+ cyclesSense = Integer.parseInt(project.getInfrastructure().getParameter(1));
+ cyclesDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(2));
+ cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(3));
} else if (project.getInfrastructure().getParametersArray().length > 1) {
- cyclesSense = cyclesDeliberate = cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(1));
- }
+ cyclesSense = cyclesDeliberate = cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(1));
+ }
//logger.info("Creating a threaded agents." + "Cycles: " + cyclesSense + ", " + cyclesDeliberate + ", " + cyclesAct);
- }
-
+ }
+
for (CentralisedAgArch ag : ags.values()) {
ag.setControlInfraTier(control);
@@ -755,7 +755,7 @@
//logger.info("Creating threaded agents. Cycles: " + agTemp.getCyclesSense() + ", " + agTemp.getCyclesDeliberate() + ", " + agTemp.getCyclesAct());
for (CentralisedAgArch ag : ags.values()) {
- ag.startThread();
+ ag.startThread();
}
}
@@ -786,63 +786,63 @@
try {
if (project.getInfrastructure().hasParameters()) {
-
- if (project.getInfrastructure().hasParameter("asynch")) {
- configuration = 1;
- maxthreadsSense = Integer.parseInt(project.getInfrastructure().getParameter(1));
- maxthreadsDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(2));
- maxthreadsAct = Integer.parseInt(project.getInfrastructure().getParameter(3));
- if (project.getInfrastructure().getParametersArray().length > 5) {
- cyclesSense = Integer.parseInt(project.getInfrastructure().getParameter(4));
- cyclesDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(5));
- cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(6));
- } else if (project.getInfrastructure().getParametersArray().length > 4) {
- cyclesSense = cyclesDeliberate = cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(4));
- }
- logger.info("Creating agents with asynchronous reasoning cycle. Sense (" + maxthreadsSense + "), Deliberate (" + maxthreadsDeliberate + "), Act (" + maxthreadsAct + ")" + "Cycles: " + cyclesSense + ", " + cyclesDeliberate + ", " + cyclesAct);
- } else if (project.getInfrastructure().hasParameter("asynch_shared")) {
- configuration = 2;
- maxthreads = Integer.parseInt(project.getInfrastructure().getParameter(1));
- if (project.getInfrastructure().getParametersArray().length > 3) {
- cyclesSense = Integer.parseInt(project.getInfrastructure().getParameter(2));
- cyclesDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(3));
- cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(4));
- } else if (project.getInfrastructure().getParametersArray().length > 2) {
- cyclesSense = cyclesDeliberate = cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(2));
- }
- logger.info("Creating agents with asynchronous reasoning cycle (shared). Sense, Deliberate, Act (" + maxthreads + ")" + "Cycles: " + cyclesSense + ", " + cyclesDeliberate + ", " + cyclesAct);
- } else if (project.getInfrastructure().hasParameter("synch_scheduled")) {
+
+ if (project.getInfrastructure().hasParameter("asynch")) {
+ configuration = 1;
+ maxthreadsSense = Integer.parseInt(project.getInfrastructure().getParameter(1));
+ maxthreadsDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(2));
+ maxthreadsAct = Integer.parseInt(project.getInfrastructure().getParameter(3));
+ if (project.getInfrastructure().getParametersArray().length > 5) {
+ cyclesSense = Integer.parseInt(project.getInfrastructure().getParameter(4));
+ cyclesDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(5));
+ cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(6));
+ } else if (project.getInfrastructure().getParametersArray().length > 4) {
+ cyclesSense = cyclesDeliberate = cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(4));
+ }
+ logger.info("Creating agents with asynchronous reasoning cycle. Sense (" + maxthreadsSense + "), Deliberate (" + maxthreadsDeliberate + "), Act (" + maxthreadsAct + ")" + "Cycles: " + cyclesSense + ", " + cyclesDeliberate + ", " + cyclesAct);
+ } else if (project.getInfrastructure().hasParameter("asynch_shared")) {
+ configuration = 2;
maxthreads = Integer.parseInt(project.getInfrastructure().getParameter(1));
+ if (project.getInfrastructure().getParametersArray().length > 3) {
+ cyclesSense = Integer.parseInt(project.getInfrastructure().getParameter(2));
+ cyclesDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(3));
+ cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(4));
+ } else if (project.getInfrastructure().getParametersArray().length > 2) {
+ cyclesSense = cyclesDeliberate = cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(2));
+ }
+ logger.info("Creating agents with asynchronous reasoning cycle (shared). Sense, Deliberate, Act (" + maxthreads + ")" + "Cycles: " + cyclesSense + ", " + cyclesDeliberate + ", " + cyclesAct);
+ } else if (project.getInfrastructure().hasParameter("synch_scheduled")) {
+ maxthreads = Integer.parseInt(project.getInfrastructure().getParameter(1));
if (project.getInfrastructure().getParametersArray().length > 3) {
- cyclesSense = Integer.parseInt(project.getInfrastructure().getParameter(2));
- cyclesDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(3));
- cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(4));
+ cyclesSense = Integer.parseInt(project.getInfrastructure().getParameter(2));
+ cyclesDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(3));
+ cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(4));
} else if (project.getInfrastructure().getParametersArray().length > 2) {
- cyclesSense = cyclesDeliberate = cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(2));
- }
+ cyclesSense = cyclesDeliberate = cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(2));
+ }
- logger.info("Creating a thread pool with "+maxthreads+" thread(s)." + "Cycles: " + cyclesSense + ", " + cyclesDeliberate + ", " + cyclesAct + " Reasoning Cycles: " + cycles);
- } else {
+ logger.info("Creating a thread pool with "+maxthreads+" thread(s)." + "Cycles: " + cyclesSense + ", " + cyclesDeliberate + ", " + cyclesAct + " Reasoning Cycles: " + cycles);
+ } else {
maxthreads = Integer.parseInt(project.getInfrastructure().getParameter(1));
if (project.getInfrastructure().getParametersArray().length > 3) {
- cyclesSense = Integer.parseInt(project.getInfrastructure().getParameter(2));
- cyclesDeliberate = Integer.parseInt(project.getInfrastructure().getParameter(3));
- cyclesAct = Integer.parseInt(project.getInfrastructure().getParameter(4));
- if (pr...
[truncated message content] |