Agent-Centric Computing

From P2P Foundation
Jump to navigation Jump to search

= Bob Haugen on Agent centric computing

URL = https://github.com/valueflows/vf-apps-agents/wiki/Agent-centric-computing?

Description

Bob Haugen:

"We first heard this phrase from Holochain, but we have been working on the idea since the beginning of the valueflows project.

- "In social science, agency is the capacity of individuals to act independently and to make their own free choices."

And as the linked article says, agency is never absolute: it is always constrained by its environment and history as well as its own capabilities. Like, you may want to jump off the roof and flap your arms and fly, but good luck if you try that. And the degree of agency supported by various computing environments varies.

  • An agent can be either an individual person or an organization. For an organization to have agency, some individual person needs to be authorized to execute its agency, by whatever means the organization uses to do such authorization.
  • An agent could possibly also be a bot, but as of today, most bots are created by human agents, and their agency is passed onto them by the humans who created them. And who are also responsible for everything they do.

As artificial agents gain the ability to program themselves, assigning responsibility will become more difficult."


Characteristics

Bob Haugen:

"Minimum requirements for agent-centric software

The main requirements are about data and operational control. Data control means your data belongs to you and you can control what happens to it. Operational control is more difficult to define precisely. Metaphorically it is like who has the driver's seat and whose vehicle is it. When you are acting for yourself as an agent, you should always be operating from a computing environment that you control.

As stated above and below, there is no absolute control. You could have a large degree of control even in an environment that is hosted by somebody else.

But if an environment cannot provide these minimum features, at least to some degree, it probably does not deserve to call itself agent-centric.

  • An agent can control its own identity - or identities - within the environment.
  • An agent can choose what software it uses. This degree of freedom could range from the ability to select from an offered list of apps to the ability to control every bit of the whole computing environment. A lot of constraints on this ability will be practical (the software environment cannot do X, or you can't make your environment do X, or not yet) and some will be organizational (more on organizations below).
  • An agent can control who can see their identity and their data.
  • An agent can take their data with them to some other environment.
  • An agent can decide which other agents it wants to associate with, in what ways, as long as the other agent agrees.
  • An agent should be able to join with other agents and create organizations.


The governance of such organizations should be determined by agreements among the agents, by whatever methods of making agreements they agree on. (Another circular definition. For more details, see Greg Cassel's Agreement-based Governance framework.) An organizational agent can also choose what software it wants to use, which may constrain the choices of the individual agents who have chosen to belong to the organization. In other words, to act within this organization, you must use software that is blessed by the organization, sorry about that. But presumably you had a choice to belong to the organization in the first place, and also to influence its rules, including choices of software.

An individual agent operates from its own software agent when it interacts with other agents. For example, if you report on some work or make some other contribution to an organization, you do it from your agent-app, not the organization's app. On the other hand, if you are acting for an organization, you operate from the organization's agent-app.

The organization-forming features are required because:

  • that is one thing human agents need to do: they are social creatures, they seldom survive alone; and
  • We think that organizations formed in agent-centric environments can and will be different - more fluid and fair - than those we know today.

Of course they could also be worse." (https://github.com/valueflows/vf-apps-agents/wiki/Agent-centric-computing?)