Closed gnardin closed 1 year ago
Thanks for this suggestion.
I have the following questions:
@FabienGandon
what is a Community Entity and a Community Specification wrt to the Organization Entity & organization: should we define these too and define their relations in the glossary? At the moment, a Community Entity groups multiple Organization Entities and specifies the relationships that exists among these Organization Entities. We are still working on the Community Specification, but it is a template to define the different roles that Organization Entities may play in the community and the possible relationships the Organization Entities can have among themselves. We are also thinking on including a Regulation System associated to the Community Specification to regulate the entry/exit of organizations in the community as well as the roles and relationships. Answering your question more directly. Yes, I think we have to define all these terms and their relations. But the relations are more explicit in the Create a Community motivating scenario rather than in this motivating scenario.
what is the relation between Organisations, Communities and member should we define member, roles, relationships, etc?
Yes, we must define member
, roles
, relationships
, etc... Each of these terms/concepts will be introduced in other motivating scenarios to comply with the general proposal of having simple motivating scenarios that introduce few terms/concepts.
In this Create a Organization scenario, for instance, the idea was to illustrate the existence of Organization Specification that artificial/human agents use to create a new Organization Entity. In this scenario, the creation of the Organization Entity (i.e., FL Logistics) is done by an human agent (John) based on the Organization Specification (SL Logistics specification).
Thanks for the answers. A typical scenario contains between 5 to 7 terms in its glossary and this was also the motivation behind my question since you had only two entries in your scenario.
Date | By | Change |
---|---|---|
2022-10-25 | Christopher | changes based on the shared diagram by Gustavo on Organization |
2022-11-08 | Gustavo | eliminated the Specification classes and included further properties |
2022-11-08 | Gustavo | added diagram |
2022-11-14 | Gustavo | changes to the property names and roles |
2022-11-23 | Gustavo | added Organizational Goal and Value |
2022-11-28 | Gustavo | fixed the domain and range of enacts and defines, replace rdfs:domain and rdfs:range by schema:domainIncludes and schema:rangeIncludes respectively |
2022-12-19 | Gustavo | removed the OrganizationSpecification and OrganizationalGoals. Refined the terms definition. Set hmas as the prefix for all the terms introduced in HyperAgents |
#################################################################
# Classes
#################################################################
# Organization has only one Organization Specification
:Organization rdf:type owl:Class
# For the definition "comments" --> should we link the definitions to the file https://github.com/HyperAgents/ns.hyperagents.org/tree/scenario-logistics-create-organization/domains/logistics/create-organization#itemX
rdfs:comment "An Organization is an entity situated on Agents and Artifacts, and regulated by a regulation system. "@en ;
rdfs:label "Organization"@en .
#:OrganizationSpecification rdf:type owl:Class ;
# rdfs:comment "An Organization Specification is a declarative specification used to enact one or multiple #Organizations."@en ;
# rdfs:label "Organization Specification"@en .
#:Group rdf:type owl:Class ;
# rdfs:comment " A Group denotes the state of a collection of members of an Organization playing Roles and interacting altogether in the context of the Group. "@en ;
# rdfs:label "Group"@en .
#:GroupSpecification rdf:type owl:Class ;
# rdfs:comment " A Group Specification is a declarative specification used as an abstraction to define a possible community of Agents that can exist in an Organization."@en ;
# rdfs:label "Group Specification"@en .
#:SocialScheme rdf:type owl:Class ;
# rdfs:comment "A Social Scheme denotes the state of a collection of goals of an Organization under achievement by Agents playing roles in the Group that is responsible of the Social Scheme."@en ;
# rdfs:label "Social Scheme"@en .
#:SocialSchemeSpecification rdf:type owl:Class ;
# rdfs:comment "A Social Scheme Specification is the template of collective and coordinated expected behavior to be produced by members of a Group of an Organization."@en ;
# rdfs:label "Social Scheme Specification"@en .
# Role defines the position of an agent in an organization
#:Role rdf:type owl:Class ;
# rdfs:comment "A Role defines the position that individual Agents can occupy in the Organization. A Role determines the interactions and relations taking place between the members and the materials within an Organization."@en ;
# rdfs:label "Role"@en .
#
#:RoleSpecification rdf:type owl:Class ;
# rdfs:comment "A Role Specification ..."@en ;
# rdfs:label "Role Specification"@en .
#:Space rdf:type owl:Class ;
# rdfs:comment "A Space represents how members and materials in the Organization are situated by standing in spatial roles and facilities they play (i.e., <role, member> a spatial role played by one member, <facility, material> a facility undertaken by a material)."@en ;
# rdfs:label "Space"@en .
#:SpaceSpecification rdf:type owl:Class ;
# rdfs:comment "The Space Specification is a declarative specification used as an abstraction to define a possible situated set of Agents and facilities that can exist situating an Organization on the Workspace."@en ;
# rdfs:label "Space Specification"@en .
#:Mission rdf:type owl:Class ;
# rdfs:comment "A Mission gathers goals that have to be achieved under the responsibility of an individual Agent."@en ;
# rdfs:label "Mission"@en .
#:MissionSpecification rdf:type owl:Class ;
# rdfs:comment "A Mission Specification gathers goals that have to be achieved under the responsibility of an individual Agent."@en ;
# rdfs:label "Mission Specification"@en .
#################################################################
# Properties
#################################################################
#:isSituatedOn rdf:type owl:ObjectProperty ;
# rdfs:domain :Organization ;
# rdfs:range :Space ;
# rdfs:comment "An organization is situated on a workspace or a set of workspaces."@en ;
# rdfs:label "is situated on"@en .
# Organization enacts an organization specification. => Only one !
#:hasOrganizationSpecification rdf:type owl:ObjectProperty ;
# rdfs:domain :Organization ;
# rdfs:range :OrganizationSpecification ;
# rdfs:comment "Define the Organization Specification enacted by an Organization. "@en ;
# rdfs:label "has specification"@en .
#:hasSocialScheme rdf:type owl:ObjectProperty ;
# rdfs:domain :Organization ;
# rdfs:range :SocialScheme ;
# rdfs:comment "Define the Social Scheme of an organization. "@en ;
# rdfs:label "has specification"@en .
#:hasSocialSchemeSpecificiation rdf:type owl:ObjectProperty ;
# rdfs:domain :SocialScheme ;
# rdfs:range :SocialSchemeSpecification ;
# rdfs:comment "Define the Social Scheme Specification of a Social Scheme. "@en ;
# rdfs:label "has specification"@en .
#:hasGroup rdf:type owl:ObjectProperty ;
# rdfs:domain :Organization ;
# rdfs:range :Group ;
# rdfs:comment "It associates a group entity associated with an Organization."@en ;
# rdfs:label "has group entity"@en .
#:hasMember rdf:type owl:ObjectProperty ;
# rdfs:domain :Group ;
# rdfs:range :Agent ;
# rdfs:comment "Define the members of the group entity."@en ;
# rdfs:label "has member"@en .
# but an agent plays a role in a group.. an agent must play a role in at least one group to become a member.
# the role is the entry point for being part of an organization.
# an agent can have multiple roles in multiple organization => it can belong to different organization
# is it possible to have one agent that does not play any role ? so does not belong to any organization ?
# yes it is possible.
# we can have hMAS without organization without agent playing roles -> yes
#
#:hasSocialScheme rdf:type owl:ObjectProperty ;
# rdfs:domain :OrganizationEntity ;
# rdfs:range :SocialScheme ;
# rdfs:comment "Associates a social scheme to an organization entity."@en ;
# rdfs:label "has social scheme"@en .
#:hasGroupSpecification rdf:type owl:ObjectProperty ;
# rdfs:domain :Group ;
# rdfs:range :GroupSpecification ;
# rdfs:comment "It associates the group specification."@en ;
# rdfs:label "has group specification"@en .
#:defineRole rdf:type owl:ObjectProperty ;
# rdfs:domain :GroupSpecification ;
# rdfs:range :Role ;
# rdfs:comment "It defines a role in a group."@en ;
# rdfs:label "define the role"@en .
#:hasRole rdf:type owl:ObjectProperty ;
# rdfs:domain :Group ;
# rdfs:range :Role ;
# rdfs:comment "It associates the different current roles in the group."@en ;
# rdfs:label "define the role"@en .
#:defineMission rdf:type owl:ObjectProperty ;
# rdfs:domain :SocialSchemeSpecification ;
# rdfs:range :Mission ;
# rdfs:comment "It defines the mission of a Social Scheme."@en ;
# rdfs:label "define a mission"@en .
#:hasMission rdf:type owl:ObjectProperty ;
# rdfs:domain :SocialScheme ;
# rdfs:range :Mission ;
# rdfs:comment "It associates the current mission."@en ;
# rdfs:label "has the mission"@en .
#:defineSpaceRole rdf:type owl:ObjectProperty ;
# rdfs:domain :Space ;
# rdfs:range :SpaceRole U :Facilities (maps to Signifier??) ;
# rdfs:comment "Define ..."@en ;
# rdfs:label "define a space"@en .
# Define :Facilities *
#++SpaceRole / Facility
#:isAppliedIn rdf:type owl:ObjectProperty ;
# rdfs:domain :RoleSpecification ;
# rdfs:range :Organization ;
# rdfs:comment "Define the scope of a role w.r.t. an Organization Entity."@en ;
# rdfs:label "is applied in"@en .
NEW VERSION reflecting the diagram
@prefix hmas: <https://purl.org/hmas/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix schema: <http://schema.org/> .
#################################################################
# Classes
#################################################################
hmas:Organization a owl:Class ;
rdfs:comment "An Organization is an entity situated on Agents and Artifacts, and regulated by a regulation system."@en ;
rdfs:label "Organization"@en .
hmas:OrganizationalValue a owl:Class ;
rdfs:comment "An Organizational Value is a belief about socially or personally desirable end state or action that are explicitly or implicitly shared by members of an organization."@en ;
rdfs:label "Organizational Value"@en .
hmas:Role a owl:Class ;
rdfs:comment "A Role defines positions in an Organization."@en ;
rdfs:label "Role"@en .
hmas:Mission a owl:Class ;
rdfs:comment "A Mission gathers Organizational Goals."@en ;
rdfs:label "Mission"@en .
hmas:Facility a owl:Class ;
rdfs:comment "A Facility defines functions in an Organization."@en ;
rdfs:label "Facility"@en .
#################################################################
# Properties
#################################################################
hmas:hasOrganizationalValue a owl:ObjectProperty ;
schema:domainIncludes hmas:Organization ;
schema:rangeIncludes hmas:OrganizationalValue ;
rdfs:comment "A relation that refers to an Organization Value of an Organization."@en ;
rdfs:label "has organizational value"@en .
hmas:providesRole a owl:ObjectProperty ;
schema:domainIncludes hmas:Organization ;
schema:rangeIncludes hmas:Role ;
rdfs:comment "A relation that refers to a Role made available to Agents in the context of an Organization."@en ;
rdfs:label "provides role"@en .
hmas:proposesMission a owl:ObjectProperty ;
schema:domainIncludes hmas:Organization ;
schema:rangeIncludes hmas:Mission ;
rdfs:comment "A relation that refers to a Mission that can be executed in the context of an Organization."@en ;
rdfs:label "proposes mission"@en .
hmas:proposesFacility a owl:ObjectProperty ;
schema:domainIncludes hmas:Organization ;
schema:rangeIncludes hmas:Facility ;
rdfs:comment "A relation that refers to a Facility that can be played in the context of an Organization."@en ;
rdfs:label "proposes facility"@en .
hmas:isSituatedOn a owl:ObjectProperty ;
schema:domainIncludes hmas:Organization ;
schema:rangeIncludes hmas:Agent, hmas:Artifact ;
rdfs:comment "An Organization is situated on Agents and Artifacts."@en ;
rdfs:label "is situated on"@en .
hmas:isMemberOf a owl:ObjectProperty ;
schema:domainIncludes hmas:Agent ;
schema:rangeIncludes hmas:Organization ;
rdfs:comment "An Agent is member of an Organization."@en ;
rdfs:label "is member of"@en .
hmas:isMaterialOf a owl:ObjectProperty ;
schema:domainIncludes hmas:Artifact ;
schema:rangeIncludes hmas:Organization ;
rdfs:comment "An Artifact is part of an Organization."@en ;
rdfs:label "is material of"@en .
The definition of organization in MAS is "An agent organization can also be defined as a social entity composed of a specific number of members (agents) that accomplish several distinct tasks or functions and that are structured following some specific topology and communication interrelationships in order to achieve the main aim of the organization." [1].
[1] Abbas, H. A., Shaheen, S. I., & Amin, M. H. (2015). Organization of multi-agent systems: an overview. International Journal of Intelligent Information Systems.
"Horling et al. [5] stated that our real world getting more complex and highly distributed and that should be reflected in new software engineering paradigms such as MAS. Therefore, the adoption of higher order abstract concepts like organizations, societies, communities, and groups of agents can reduce systems complexity, increase its efficiency, and improve system scalability."
--> Community is an extension of Organization. --> Community = a set of Organizations. --> Regulation is situated on Communities / Organizations ?
Gustavo : The Organization concept we are adopting in the HyperAgents project is inline with the definition of Organization adopted by the MAS community. We are proposing an extension to allow the interaction among Organizations (i.e., a Multi-Organization approach).
After discussion at the heartbeat meeting on 16 June 2023, we decided to close this issue.
Create an Organization
This issue relates to the motivating scenario for the creation of an organization in HMAS.