Class EconomicAgent

java.lang.Object
org.episteme.social.sociology.Role
org.episteme.social.economics.EconomicAgent
All Implemented Interfaces:
Serializable, Commented, ComprehensiveIdentification, Identified<Identification>, Named, Temporal<TimeCoordinate>
Direct Known Subclasses:
Worker

public class EconomicAgent extends Role
Represents an autonomous actor in an economic system, which can be an individual, a household, or a firm. Economic agents are defined by their ability to own resources, accumulate capital in a wallet, and interact within markets. * @version 2.0
Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
See Also:
  • Constructor Details

    • EconomicAgent

      public EconomicAgent(Individual individual, EconomicSituation situation)
      Initializes a standard economic agent associated with an individual.
      Parameters:
      individual - the biological or social entity acting as the agent
      situation - the economic environment/context of action
    • EconomicAgent

      protected EconomicAgent(Individual individual, String name, EconomicSituation situation, RoleKind kind)
      Protected constructor for specialized sub-types of agents (e.g., Banks, Factories).
  • Method Details

    • getBelongings

      public Set<Resource> getBelongings()
      Returns the set of resources currently owned by this agent.
      Returns:
      unmodifiable set of owned resources
    • addBelonging

      public void addBelonging(Resource belonging)
      Transfers ownership of a resource to this agent.
      Parameters:
      belonging - the resource to acquire
    • removeBelonging

      public void removeBelonging(Resource belonging)
      Relinquishes ownership of a resource.
      Parameters:
      belonging - the resource to remove
    • setBelongings

      public void setBelongings(Set<Resource> belongings)
      Sets the resources owned by this agent.
      Parameters:
      belongings - the set of resources
    • getWallet

      public Wallet getWallet()
      Returns:
      the agent's financial wallet containing currency holdings
    • setWallet

      public void setWallet(Wallet wallet)
      Replaces the agent's wallet.
      Parameters:
      wallet - the new wallet instance
    • getCommunity

      public Community getCommunity()
      Aggregates the agent's identity into a localized social community based on their current geographic position.
      Returns:
      a community containing this agent