Category: Agents

The OpenSense Domain

Communication is essen­tial in allow­ing indi­vid­u­als to coop­er­ate in group activ­ity, espe­cially if the indi­vid­u­als dif­fer in their roles or char­ac­ter­is­tics. Having open access to infor­ma­tion greatly boosts the pro­duc­tiv­ity of a group – in fact, this is the moti­vat­ing prin­ci­ple behind the inven­tion of patents, the inter­net, and open source soft­ware. Similarly, mem­bers of a team are expected to openly share their thoughts and ten­den­cies so that the team can make up for each other’s weak­nesses. In the OpenSense domain, we dis­cuss what hap­pens when impor­tant facets of generic thought are openly expressed and eas­ily sensed by oth­ers in the envi­ron­ment. We will talk about how gener­ics in this domain tend to form friend­ship groups, share infor­ma­tion about them­selves, and engage in play activ­i­ties designed to uncover highly var­ied aspects of each other’s per­son­al­i­ties. The senses in this domain are anal­o­gous to human emo­tions and the invol­un­tary facial expres­sions / body lan­guage used to express such emo­tions1, but in this post I will mostly focus on the OpenSense dynam­ics in its pure form and only use human behav­iors as illus­tra­tive examples.

The Rivalry Domain

Previously, I’ve been talk­ing in broad terms about very gen­eral con­cepts in profi­ci­ol­ogy. This will be the first time I nar­row my focus into a spe­cific domain. A domain is a restricted set­ting with only a small num­ber of rel­e­vant events / senses / agents – basi­cally a toy prob­lem, or a sim­pli­fied model envi­ron­ment. The hope is that we can use impor­tant ideas from these domains as fun­da­men­tal build­ing blocks that will help us ana­lyze more com­plex setups. In other words, we should be able to build more inter­est­ing / real­is­tic gener­ics by mix­ing & match­ing sim­ple com­po­nents from mul­ti­ple domains, as if we were build­ing a com­plex mol­e­cule atom-by-atom.

In this post we will talk about the Rivalry domain, which focuses on events where one generic ben­e­fits at another generic’s loss. I will sup­ple­ment my expla­na­tion with for­mal nota­tion loosely based on func­tional pro­gram­ming lan­guages. I am not requir­ing (or expect­ing) read­ers to have a back­ground in com­puter sci­ence – it’s just that this kind of nota­tion is very use­ful for describ­ing non­triv­ial generic behav­iors through the com­po­si­tion of sim­pler con­structs. In any case, I will be explain­ing this func­tional nota­tion as I go.

Agents – The Source of Motivation and Action

The last two posts2 were focused on the lens. They dis­cussed its var­i­ous modes of oper­a­tion, the dichotomy between the out­ward-fac­ing “causal esti­mate” and the inward-fac­ing “eval­u­a­tion”, and the prob­lems of for­eign con­text and overgeneralization.

But it’s impor­tant to note that the lens is, at heart, a sta­tis­ti­cal machine. It is only con­cerned with how accu­rately it can per­form its tasks (casual pre­dic­tion, event inter­pre­ta­tion etc.), and does not inten­tion­ally dis­tort itself to sat­isfy any agenda. In other words, the lens lacks agency and a hypo­thet­i­cal “lens-only” generic is only good for mak­ing unin­ter­ested pre­dic­tions or clas­si­fi­ca­tions3.

To breathe more life into the generic mind I intro­duced the agent, a cog­ni­tive process with an inher­ent goal to cause the pro­duc­tion of cer­tain eval­u­a­tions. The con­cept behind its oper­a­tion is as follows:

  • Use the lens to per­form value pre­dic­tion. In other words, given some known prior infor­ma­tion and the desired eval­u­a­tions, fig­ure out what must be in the pos­te­rior infor­ma­tion for the lens to pro­duce such an evaluation.
  • Try to engi­neer the actions and cir­cum­stances of the generic to increase the odds that the right events hap­pen. If this is done suc­cess­fully then the lens will pro­duce the eval­u­a­tions that the agent desires.