Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Stéphane Galland
    @gallandarakhneorg
    Dear @mklinik, I noticed that you would like to have access to AgentKilled events. Basically, you should register your listener on the space in which the event is emitted. A complete example is provided here. See the function onAgentKilled.
    Markus Klinik
    @mklinik
    Thanks a lot for the answer, I'll give it a try.
    Yannic
    @yannic7

    Hello everyone! Quick question about events: I created a GUI for my agent application and I try to emit an "SetupSettings" event (exactly like in the fireworks example) to my agent like this:

        var ^event : SetupSettings = new SetupSettings(s1, s2, rounds, matches)
        startAgentApplication(typeof(Organizer), this.launchedAgent) [
            ^event.emitToAgents
        ]

    However, the "on SetupSettings { ... }" section in my "Organizer" agents never runs. Does anybody know what my problem is? Thanks!

    Stéphane Galland
    @gallandarakhneorg
    Dear @yannic7 , are you using version 0.11 of SARL ?
    Stéphane Galland
    @gallandarakhneorg
    Please submit an issue on Github with the details of your configuration. It may be a bug into the implementation of the JavaFX helpers. Indeed, the startAgentApplication may be reimplemented. Additionnally, could you provide on the same issue a snipset of the code of Organizer and of your JavaFX controller.
    Yannic
    @yannic7

    Yes, I'm using 0.11.

    This is the specific part of my JavaFX controller:

    @FXML
    def startMatch() {
        rounds = Integer.valueOf(roundNum.getText())
        matches = Integer.valueOf(gameNum.getText())
    
        var ^event : SetupSettings = new SetupSettings(s1, s2, rounds, matches)
        this.launchedAgent = UUID::randomUUID
        startAgentApplication(typeof(Organizer), this.launchedAgent) [
            ^event.emitToAgents
        ]
    }

    And this is the part of my Organizer agent:

    agent Organizer {
    uses Lifecycle, Schedules, DefaultContextInteractions, Logging

    var s1 : String
    var s2 : String
    var matches : int
    var rounds : int
    
    on SetupSettings {
        this.s1 = occurrence.s1
        this.s2 = occurrence.s2
        this.matches = occurrence.matches
        this.rounds = occurrence.rounds
        info("s1 = " + this.s1 + ", s2 = " + this.s2)
        info("matches = " + this.matches + ", rounds: " + this.rounds) 
    }
    
     ...
    s1 and s2 are always null, matches and rounds are always 0. I can submit an issue, I just wanted to make sure that I'm not misusing the functions.
    Stéphane Galland
    @gallandarakhneorg
    Thx, I will explore the code of the JavaFX API and the agent's event bus.
    Stéphane Galland
    @gallandarakhneorg
    A workaround may be to use directly the SRE and SREBootstrap API that is invoked by startAgentApplication. You could take a look to the code of startAgentApplication to help you.
    Zifro96
    @Zifro96
    Hi, I'm new to this environment, is there a way to print all the information of the agents, spaces and places active at the time of the command launch?
    Thank you
    Stéphane Galland
    @gallandarakhneorg
    Dear @Zifro96 . This feature is not yet available. We have just added the probing mechanism into the unstable version. This mechanism will help to extract the information that you have mentionned. It could be added in a coming version. Nevertheless, all information is available through programmatic way. We could help you on this way.
    @Zifro96, do you search for a command line interface, a Eclipse-based interface, or whatever, for showing this information?
    Zifro96
    @Zifro96
    Any solution is fine, thanks for the reply
    Stéphane Galland
    @gallandarakhneorg
    You could push an issue on the Github of SARL that provides details on your expected needs.
    Zifro96
    @Zifro96
    Ok thanks for the advice
    Stéphane Galland
    @gallandarakhneorg
    Release of version 0.12 is delayed until November 15th in order to finish the testing stage.
    Stéphane Galland
    @gallandarakhneorg
    We are encountering problems that cause a delay of the release 0.12. It is now planned in January 2021.
    Stéphane Galland
    @gallandarakhneorg
    COVID situation has impacted our developments on SARL. The release plan is changed : version 0.12 will be released in April 2021, and the following versions are shifted in time.
    Haytham Mohamed
    @Haybu
    Hi, thanks for the great SARL/Janus project. I started AOP with intention to use a MAS architecture to design a socio-technical problem for my thesis. I was able to run the ping/pong tutorial using SARL IDE successfully, and going to run it next in a distributed way. I wonder if ACL / FIPA is supported, if there is any doc or example that would be great.
    Stéphane Galland
    @gallandarakhneorg
    Dear @Haybu . ACL/FIPA is planned to be included into the SARL environment in the future. At this moment, you could use any Java library that is providing an ACL/FIPA support and that could be linked to the SARL events.
    Haytham Mohamed
    @Haybu
    thanks @gallandarakhneorg, I did more digging and found this repo https://github.com/sarl/sarl-acl, I’ll give it a shot.
    Stéphane Galland
    @gallandarakhneorg
    You're right, it is the repository that contains the ACL implementation for SARL. However, it is 3 years old, and you may encounter issues for compiling this project on for recent SARL framework.
    I will download it at evening time and make sure it is compiling with recent SARL. Then, you will be able to use it and to give your feedback. And, we will be happy if you provide your contributions to this project :-)
    Haytham Mohamed
    @Haybu
    thanks much @gallandarakhneorg
    Haytham Mohamed
    @Haybu
    thinking of resiliency in cloud / Kunberetes environment, and in multi agent architecture, what is the thought about running mutiple instances of processes (containers) each with many agents? what is the mechanism to persist agent information (mental state) and how messages would balance between many target instances/agent..etc. Kinda thinking from a distributed system point of view
    Stéphane Galland
    @gallandarakhneorg
    In the SARL execution environment (namely Janus platform), you could create instances of the run-time kernel, each running on different containers and hosting multiple agents. The communication between the Janus kernels is now supported by the Hazelcast library that enables to automatically connect the kernels on a local network (you should be sure that containers are run on the same local network). It is working perfectly on local network of computers. I have not concrete feedback from users who deployed on a cloud system. Your feedback is welcome.
    Regarding the mechanism to persist agent states, there is nothing specifically implemented yet in the Janus platform. Because Janus is a Java application, you could use any mechanism for saving the state of a Java virtual machine. If you need a specific persistance feature into the agent framework, you're welcome to describe your needs, and we could include them into the development plan of Janus.
    Stéphane Galland
    @gallandarakhneorg
    ACL library is now available for SARL 0.12 for beta testing : https://github.com/sarl/sarl-acl
    terdop
    @terdop
    Hello everyone, i'm experiencing an issue in the eclipse-sarl IDE (0.11.0) when i try to import io.sarl.core.Failure i get that it cannot be resolved to a type. Has anybody experienced the same issue ?
    Stéphane Galland
    @gallandarakhneorg
    @terdop Failure was introduced in version 0.12, not in version 0.11.
    So, it is normal that it cannot be found in the 0.11 classpath
    Version 0.12 will be released during the coming month.
    terdop
    @terdop
    thanks!
    Stéphane Galland
    @gallandarakhneorg
    Welcome