Activity for Lars Braubach

  • Lars Braubach Lars Braubach posted a comment on discussion Open Discussion

    Hi, could you describe what your Problem with publicIFuture<map\<string, object="">> killComponent();</map\<string,> is? You can call it anytime. On 9/29/23 14:34, mrbrovki wrote: Hello, I want to ask if there is any way to kill an agent programmatically. I didn't understand how to use killAgent(), so I would be able to kill an agent even if it's active. Best Regards, Mahkam Killing Agents https://sourceforge.net/p/jadex/discussion/274111/thread/fdd3f7467f/?limit=25#53be Sent from sourceforge.net...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, that is just an info message. It means that a step is not executed due to a changed context. Nothing to worry about. Best, Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    You need to use Void instead of void. Best, Lars On 24.02.2023 21:09, PAULO ROBERTO CORDOVA wrote: |@Agent(type=BDIAgentFactory.TYPE) public class TranslationBDIRecur { //Fields @AgentFeature protected IBDIAgentFeature bdiFeature; @AgentFeature protected IExecutionFeature execFeature; protected Map<string, string=""> wordtable; @Belief protected String eWord; @OnInit public void init() { this.wordtable = new HashMap<string, string="">(); this.wordtable.put("coffee", "Café"); this.wordtable.put("milk",...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, could you please provide the complete agent code so that I can test it? What data type is AgentActiveList? The list implementation will be changed by Jadex in order to track to the changes automatically via different wrapper classes. So this works only, if the typical List/Set/Map interfaces are used. Best, Lars On 24.02.2023 17:30, Thu Pham Dieu Anh wrote: Hi i am creating an example that Agent 1 has a @Belief List <string> AgentActiveList. Agent2, Agent3, Agent 4 add their names into that list...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, the problem is that you can't use both at the same time: @OnStart and @AgentBody. The former replaces the latter. Just replace @OnStart at your init method with @OnInit and it will translate cat to gato. (So I also learned something new ;-) Alternatively, you could just copy the init copy in the body and delete that method completely. Best regards, Lars On 16.02.2023 02:48, PAULO ROBERTO CORDOVA wrote: |@Agent(type=BDIAgentFactory.TYPE) public class TranslationBDI { //Fields @AgentFeature protected...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, please use @Agent(type=BDIAgentFactory.TYPE) to indicate that it is a BDI agent. Kind regards, Lars On 14.07.2022 01:08, PAULO ROBERTO CORDOVA wrote: Hi everybody! I'm starting to study Jadex and following a simple tutorial I came across an exception that I couldn't resolve by myself. The tutorial I'm working on is here https://download.actoron.com/docs/releases/latest/jadex-mkdocs/tutorials/bdiv3/03%20Using%20Plans/ and the exception is this: /No such feature: interface jadex.bdiv3.features.IBDIAgentFeature/...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Marcel, you could do several things: a) let the agent itself implement the service b) let the service call a method on message arrival via IPojoComponentFeature and getPojoAgent() Kind regards Lars On 08.07.2022 18:06, Marcel wrote: Hi, I would like to access the content of the message that is sent by the ChatD1Agent.java from the tutorial. When accessing the result within resultAvailable i am only able to get the identifiers of the senders of the messages. I see that there is a method called...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, this is just a logger info message. You can use @GoalResult on a field or method on a goal class. After goal is finished this field or method will be used to deliver the result to the caller. Alternatively, you can of course also just call goal.getBla() to access the method/field by yourself. SellGoal sell = new SellGoal(item, price); ItemInfo result = agent.getFeature(IBDIAgentFeature.class).dispatchTopLevelGoal(sell).get(); Kind regards, Lars On 27.06.2022 14:51, Kevin wrote: Hi, I'm...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, it assumes the new API. You can also use the workaround code I sent you in a previous mail. Kind regards, Lars On 08.06.2022 09:49, Kevin wrote: Hi Lars, Thanks for your note. I've created java class files based on the code above but cannot compile it. I cannot find the method waitForBeliefChanged() in the API lib (Jadex v 4.0.264). Is it the method you meant? Or, am I looking in the wrong place? Regards. Kevin. waitForFactChanged method generating timeout exception https://sourceforge.net/p/jadex/discussion/274112/thread/eaf6e1fb40/?limit=25#e46c...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, On 03.06.2022 14:35, Kevin wrote: Hi Lars, Thanks for your help. I would not have found that solution. I'll use the workaround you sent. I guess a later release will incorporate the changes. The workaround works for the second sample (uses lambda expression) you sent through. The first sample still does not work. Should it? no, using two agents it cannot work this way. One would need to have a shared state for that. Also, I incorporated the workaround into my original code and that also...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, found it. Problem is the difference between belief and fact change, i.e. belief change means the whole object is exchanged while a fact changed means that a property of a belief changed. Our systems uses different kinds of events for both and using a long implies you have to wait for belief change. This method is missing in RPlan (I have added it now) but you can use a workaround //plan.waitForBeliefChanged("mybel").get(); ((RPlan)plan).waitForFactX("mybel", new String[]{ChangeEvent.BELIEFCHANGED},...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi again, just modified it again and it seems not to trigger in this case, although I do not get an assertion err. I will further check this and report any findings. Kind regards Lars @Agent(type=BDIAgentFactory.TYPE) @Configurations({@Configuration(name="1"), @Configuration(name="2")}) public class BasicTypeConditionBDI { @Agent protected IInternalAccess agent; @Belief protected long mybel = 0; @OnStart public void body() { agent.waitForDelay(2000, ia -> { agent.getFeature(IBDIAgentFeature.class).adoptPlan("notify");...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, I just changed the semiautomatic test to long and it runs without exception. Could you please check if this testcases raises the exception in your Jadex version? @Agent(type=BDIAgentFactory.TYPE) @Configurations({@Configuration(name="1"), @Configuration(name="2")}) public class BasicTypeConditionBDI { @Agent protected IInternalAccess agent; @Belief protected long mybel = 0; @OnStart public void body() { if("1".equals(agent.getConfiguration())) { agent.getFeature(IBDIAgentFeature.class).adoptPlan("wait");...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, On 01.06.2022 13:56, Kevin wrote: Using a belief that was a simple java data type, that is a long, using waitForFactChanged() resulted in the errors above. See wait() and notify() plans in the attached. I will check this by extending the testcase and report on that. In case there is a bug we should hopefully be able to fix this soon. Kind regards Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, do you use an event-driven or time-driven simulation clock? If it is event-driven the time points occurring depend on the interactions with the clock, i.e. in that case the clock does not advance in regular steps but instead jumps to time points of interest. Waiting outside of the clock itself then can easily lead to missing expected time points raising timeout exceptions. Is there a special reason why you can't directly wait on the clock itself, e.g. using getAgent().getFeature(IExecutionFeature.class).waitForDelay(delay,...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Marcel, we have experimented a lot how protocols such as contract-net can be used in an efficient and easy way, especially given that message based implementations are very error prone and cumbersome to use. As a result we came up with basically two solutions: a) using protocols in a goal based manner for bdi agents, i.e. the agents that use the capability and protocol have to handle certain goals and provide plans. b) later we found a way that is much more general and easier to use (not only...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, thank you for testing this version. The output only means that no plan order could be determined, i.e. if you have multiple plans for a goal. Order is determined using priority or if not used via occurrence in a file, i.e. the source code order. If plans are defined in own classes they do not have a natural order. This is just an info message. Kind regards Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, thanks to your output we could track the bug and fix ist. The failure was caused by the RelayTransportAgent and should in the newest version be gone. https://repo1.maven.org/maven2/org/activecomponents/jadex/jadex-applications-bdi/4.0.250/ Kind regards Lars On 17.10.2021 02:48, Kevin wrote: Hi Lars, Thanks for your note. Attached is the output generated with the debug features turned on. Regards. Kevin. Attachments: output-message-sending-internal-problem.txt https://sourceforge.net/p/jadex/discussion/274112/thread/4493d28ac2/2f4c/attachment/output-message-sending-internal-problem.txt...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, we have changed the API a lot to make it easier to access functionalities from an agent (or other type of component), i.e. you can e.g. create a new component directly from the internal access interface (also external access interface). This means instead of searching the IComponentManagementService you can directly use the functionality on the agent. So IComponentManagementService does not exist any more the fleiweights are impl classes and should not be used on user level. As the BDI engine...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, packages says: main.java which sounds wrong. Typically you have src/main/java and then followed by the package structure/name. If so, try using the folder names starting in the java folder to your file. If it is directly in main/java just delete the package statement. It uses the package name to locate other files as well. Kind regards Lars On 21.10.2021 14:11, Kevin wrote: Hi Lars, In the application xml file there is mention of the package name in the applicationtype section. Copied below....

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, it is correct that Jadex uses the Java classpath to localte resources. As in Java source files it is important that you also state the correct package name in the XMLs. Reading errors could be caused when the packge attribute is unset or set to a wrong value. Could you verify that the package attribute in the application XML is correct? Kind regards Lars Am 20.10.2021 um 01:53 schrieb Kevin: Hi, I would like to be able execute my application with different models (that is, different application.xml...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, could you execute with debug futures turned on? PlatformConfiguration.getExtendedPlatformConfiguration().setDebugFutures(true) This will allow to see the situation that causes the duplicate result exception. Kind regards Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, could you please elaborate what you try to do here with the sim clock time. Do you use an extra simulation clock or is that related to the jadex simulation clock. We would try to model this with triggering a plan whenever a belief changes instead of waiting inside a plan (if there is no specific reason at least). Kind regards Lars

  • Lars Braubach Lars Braubach modified a comment on discussion Help

    Hi, it depends on the Jadex version how exactly you have to do it. In each version we have a ping example packaged in the applications so that you can have a look there to get the correct code, e.g. in micro examples. Kind regards Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, it depends on the Jadex version how exactly you have to do it. In each version we have a ping example packaged in the applications so that you can have a look there to get the correct code, e.g. in Kind regards Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    It is correct that the executor currently does not have built-in functionality for stopping after a time interval has elapsed. You can extend/rewrite the executor and plug it into your example by setting the spaceexecutor property to the new class. Kind regards Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Currently you cannot stop or execute the executor by hand but what you could do is extending an existing executor and use that one via the space executor property. The extended executor could e.g. stop doing things in execute after some time has elapsed. Remove space process requires to know an id of the process to remove. The id is set on the process at creation time as property. So what you should be able to do is checking in execute of the process if it is finished and then call remove on the...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Charles, we have worked intensively on the relay infrastructure yesterday. We will track the issues and hopefully it should work as expected soon. Kind regards Lars On 02.06.2021 08:07, Charles wrote: Hello, For some reason I am unable to use the https://www.activecomponents.org/relay/ https://www.activecomponents.org/relay/ to discover platforms across networks anymore. Has something changed in how the relay server works? I am using version 3.0.117. Thanks, Charles Relay server https://sourceforge.net/p/jadex/discussion/274112/thread/b95e6a90f8/?limit=25#2a61...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Charles, On 08.02.2021 23:57, Charles wrote: Hey Lars, Thanks for that. To be clear; you cannot do something like CreationInfo ci = new CreationInfo().setFilenameClass(PojoHelloWorldAgent.agent.xml); platform.createComponent(ci).get(); In version 3 (note .agent.xml /not/ .class file)? In version 3 you can start agents via the component management service of the platform. The service has the corresponding create methods. I noticed the main Java classes in the V4 exampels which allow you to use...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Charles, On 07.02.2021 23:59, Charles wrote: Hello, Is there any way to start BDI agents defined in ADF(XML) programmatically in JadeX V3: i.e., not via the JadeX GUI? sure, we recommend doing this. I have a simple ADF file that is valid and correctly starts my agent when used through the JadeX GUI, but I cannot create a component using the IComponentManagementService once a platform is running. I have noticed in JadeX V4 examples there is a setFilename function on the CreationInfo object that...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, we are currently re-testing the examples and will inform you as soon as a new build is available. I did not have problems with cleanerworld bdiv3 though. Best Lars On 05.01.2021 13:19, Kevin wrote: Hi Lars, I tried the suggested workaround. I took a copy of the cleanerworld sources from the distribution and created a separate instance of this project. Compiled ok. It did not execute. I received a null pointer exception prior to then having the same problem as before, that is, could not...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, you can do something like this for your desired example. I will add those starter mains to the existing example to show a programmatic startup. Best regards Lars package jadex.micro.examples.helpline; import jadex.base.PlatformConfigurationHandler; import jadex.base.Starter; import jadex.bridge.IExternalAccess; import jadex.bridge.service.types.cms.CreationInfo; / Main for starting the example programmatically. To start the example via this Main.java Jadex platform as well as examples must...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Kevin, looks like a bug. If you like you could try out the following workaround: Create a Main class and start the desired example programmatically. Prerequisite is that the application dependencies (or simply all Jadex jars) are in the classpath. Feel free to inform us if iz works for you. We will track down the issue asap. Kind regards Lars On 30.12.2020 05:06, Kevin wrote: Hi Kai, Thanks for your note. Using Jadex 4.0.215 and Java 11 ... I can start the control centre. However, when I try to...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, no more candidates means that no plan is available to achieve the goal. You can customise that behavior via various flags such as the exclude behavior. Default is ExcludeMode.WhenTried, ie a plan is exluded after it has been used (regardless of its result). Have a look at the @Goal annotation to change exclude as well as many other parameters of goal achievement via plans. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, we have the following methods for agent scheduling: agent.scheduleStep(step) agent.waitForDelay(delay, step) agent.repeatStep(initialDelay, delay, step) Does this help? Best Lars On 20.08.2020 14:08, Lennart Eing wrote: Hi, I am at the moment trying to schedule 2 steps, that are seperated by a specific time interval. I need to garantuee, that this time interval is kept as accurate as possible (measuring position twice to calculate a velocity). I am using Micro Agents. I know that using Thread.sleep...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, the unique flag works based on equals test on the goal class/object. So in your case they are all different as no equals method has been implemented. Best, Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, yes this possible by using a Java bean. This means the bean must throw property change events when an attribute change occurs and additionally offer a addPropetryChangeListener() method for Jadex to add a listener (remove as well). Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, it depends a bit what you want to achieve. Jadex does not use a static assignment of threads to agents but instead only assigns a thread when an agent needs execution. If you would just use a normal thread barrier on an agent thread that agent would be completely blocked and cannot handle any other tasks during the thread is blocked (could be ok in some scenarios). In simulations one can use the waitForTick() for letting an agent wait on the next execution round. Maybe you can explain a bit further...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Dear Frederic, you can turn this off by enabling the 'no timeout' feature of futures. As this is implemented on agent level it is not part of the future API itself. Have a look at the SFuture class. You need to use the notimeout future at the provider side of the service. Best Lars On 03.05.2020 20:46, Frederic Jacob wrote: Hello, I use subscription objects of the type ISubscriptionIntermediateFuture (resp. their subclasses) for a subscription mechanism between two components - a service and a BDI...

  • Lars Braubach Lars Braubach posted a comment on discussion Open Discussion

    Hi, the general anwer is no. One cannot disable change events to not trigger plans when a belief changes. We could add this as a feature request that change propagation can be explicityl turned on/off via API / annotations. From a design perspective I would not assume that specific services are available and instead try to come up with a design in which the agent can recover from a missing service. We resolve this issue (to some degree) in Jadex 4 by offering an API that allows for reacting on service...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, in Jadex 4 those problems are resolved and it will work also with newer JDKs. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Sdr3, we ship a lot of examples with the Jadex distribution. These are contained in the different application jars. You can find the tutorial stuff as well as micro examples in "applications-micro". To disambiguate between different classes import them fully qualified, i.e. jadex.base.Starter. The IDE (eclipse) should support finding the correct imports (e.g. ctrl/shift/o for organise imports). Best Lars

  • Lars Braubach Lars Braubach modified a comment on discussion Help

    Hi Lennart Eing, sorry for the delayed response. Besides using the (more declarartive) service binding via required services, you can also use the direct search functionality by using getService() getServices() on jadex.bridge.service.search.SServiceProvider. We have rewritten a lot of stuff regarding service search and registries so that this might also work automatically in the next release using the declarative approach as well (otherwise we will debug it of course). Kind regards Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Lennart Eing, sorry for the delayed response. Besides using the (more declarartive) service binding via required services, you can also use the direct search functionality by using searchService() serviceServices() on jadex.bridge.service.search.SServiceProvider. We have rewritten a lot of stuff regarding service search and registries so that this might also work automatically in the next release using the declarative approach as well (otherwise we will debug it of course). Kind regards Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    We are currently simplifying the programming API not requiring so many explicit specifications any more (like all the required service definitions). Instead Jadex can derive these aspects from the given context nearly without additional infos. So, if no required service definition is given with an method injection annotation, the parameter type is used and the default scope etc. This should also work in older versions but will be specifically empowered with V4.

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, first, sorry for the late reply. The message 'no IPublishService' found means that the system does not know on which web server it should publish the service. In the newer releases there are several options and you have to add the jar of the corresponding jadex package to enable it. During platform start you can also inspect the components and see dedicated rs component with the corresponding service. We started supporting Grizzly and then added Jetty. There is also support for using an external...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, did you try just adding the applications-micro.jar to the JCC, selecting the example and starting it from there?

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, Jadex is not the same as JADE. The concepts for writing agents are different, so you will have to rewrite the JADE behavior code using e.g. Jadex micro agents. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hello Ameneh, yes, sure you can do that. One possibility is by using a publish szbscribe mechanism in which agents subscribe at a message queue and subsequently get messages of specific topics. In Jadex there is an example implementation for such a message queue. (jadex.micro.examples.messagequeue) Of course you could also use also use collections in the agents storing their 'neighbors' used for communication. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Open Discussion

    Could you please paste the agent code that causes the problem?

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, I tested the code and it works for me. On which Jadex version did you test it? Please test the newest build. Kind regards Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Open Discussion

    Hi, basically the only thing you need to care about is how you access the belief from outside the agent. You can either define a service for that or you can use scheduleStep and switch to the agent thread for accessing the belief. Using the result of a step you can also return belief values to external processes. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Dear Vinodh, we found the problem and will provide a fix. Possibly you can also get around this issue by reorganiszing your code. The basic problem is that ITestService class is loaded with two different classloaders leading to the corresponding class cast error. The classloader in JadexSimulation is the RestartableSpringClassLoader and the classloader from the search is a ChangeableURLClassLoader. Both do NOT share a common loader besides the AppClassLoader, i.e. they both reload the ITestService...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, thank you for the indication. We did not test the integration of Jadex with Spring Boot ourselves so far, so we cannot give a direct answer to this problem. It seems like Spring does not like the Jadex proxying or creates incompatible proxies by itself for Jadex. We will set up a corresponding demo app and try it out and will come back to you with our findings. Might be necessary to modify/tweak Jadex a bit, but I assume that there is no fundamental problem. If you could provide a minimal demo...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Jobi, thank for posting your answer. You can also create subcomponents by just stating the parent component id in the creation info object that can be passed as parameter to the createComponent() method of the component management system. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Have a look at DynamicServiceAgent in jadex.micro.testcases.semiautomatic. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Steve, a) behavior autonomy: service calls are received by the agent but processing is asynchronously. The agent can decide at any point in time not to handle the call and just return an exception. Practically it can be e.g. done generically using an interceptor. Interceptors realize aspect oriented programming by allowing crosscutting code to be executed before and after a service call. In BDI one could also use other reasoning techniques based on the fact that a service call can be mapped to...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Regarding your question with 'self-finding' you currently cannot directly. You could provide a filter that checks if the found service hast the same service id as the found one during search requests but this sounds like a workaround. We will add a feature request for this and could maybe add flag for exlcludeme. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Jobi, thanks for reporting. I can reproduce the behavior and it is a bug. I have developed a fix and will transform your code to a test case for the platform. I will come back to you when the build succeeded and a new version including the fix is available. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Sandra, you need to know how to access the sensor from Java. Then you can use that code in the same way in a micro or bdi agent. If you need to poll the sensor in intervals you could e.g. use a component step that is rescheduled again and again. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    ... if there are errors in your eclipse project you need to correct them before export. Otherwise it might not work. Look in the problems view and solve the problem. Best Lars

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Sandra, there are basically two solutions: a) just build ONE jar with all files...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Sandra, you need SCOPE_GLOBAL for communication between platforms. To verfiy that...

  • Lars Braubach Lars Braubach posted a comment on a wiki page

    Hi Sandra, sorry for the delay. In newer Jadex version you don't use the MicroAgent...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Steve, there are different places in which Jadex copies parameter values, e.g...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Jeff, I see, this is an interesting case. If the goals/plans of new lessons are...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Steve, Jadex is highly configurable and the platform itself has several parts...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Jeff, similar to OO world we build a kind of agent class (we call it agent model)...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Steve and Ami, in newest versions I have implemented some heuristics to make the...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Steve, the class must be bean conform, i.e. empty constructor + getter/setters....

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Steve, sorry for the delay. I have looked into this issue and found the following:...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Steve, the problem is that using only a java constructor for injecting different...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Pedro, you can not only search for services but also fetch them directly from...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Hannes, you should almost never use synchronous signatures. If you want exceptions...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Peter, just fetch the IComponentManagementService from the platform and use createComponent()...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Hannes, it sounds like a round based mechanism. You could e.g. use waitForTick()...

  • Lars Braubach Lars Braubach posted a comment on discussion Open Discussion

    Hi Hannes, good point and strange that it does not have equals/hashcode. A little...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, if you store the coordinates as belief values you could use a goal drop condition...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, idList.set will trigger not fact added but a fact changed event. idList.add will...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, you can use scheduleStep(), fetch the IBDIAgentFeature and add the belief listener....

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    You can access the BDI pojo agent object this way IExternalAccess ea = ...; ea.scheduleStep(new...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, you have different options to influence your agent a) offer a Jadex service (can...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, the short answer is you cannot do it from outside a component because this would...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, what do you means by 'who believes several agents in a goal'? Do you mean that...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi Daniel, you can use a future as synchronization point and call get() on it to...

  • Lars Braubach Lars Braubach posted a comment on discussion Open Discussion

    Hi Ameneh, beliefs are just normal Java objects, which are monitored for changes...

  • Lars Braubach Lars Braubach modified a comment on discussion Help

    Hi, actually, this was a bug. I fixed it and the working version will be shipped...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, actually, this was a bug. I fixed it and the working version will be shipped...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    please, always post code examples, we do not set fields to null

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Hi, agents are a conceptual notion of concurrency, i.e. an application should not...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    A goal is satisfied by plan execution. If a goal has its own target condition it...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    You can start in suspend mode and use the bdi debugger to see the current plans....

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Then injection does not work. Is the annotation in place?

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Open 'this' in variable view and check which fields are null. Is bdi null? Is f null?...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    The same way as any other Java program. Use 'debug' in eclipse and use jadex.base.Starter...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    In Jadex beliefs are just normal 'observable' objects, i.e. there is no need for...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    You need to be careful what you add in the JCC as path. Use bin oder classes folder...

  • Lars Braubach Lars Braubach modified a comment on discussion Help

    Because you forgot the @AgentFeature annotation necessary for dependecy injection:...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    Because you forgot the @Agent annotation necessary for dependecy injection: IBDIAgentFeature...

  • Lars Braubach Lars Braubach posted a comment on discussion Help

    The debugger is a plugin that can be activated on the top right (not shown in your...

1 >
MongoDB Logo MongoDB