Signals and Boundaries

Uitgangspunt was om de ontwikkeling van een onderneming te zien in haar omgeving zoals organismes co-evolueren in hun omgeving. In eerdere posts komt steeds de vraag terug waar het één, de onderneming, eindigt en het ander, de omgeving, begint. Voortbordurend op wat in de vorige post, Inductie, is geschreven: wat zijn de communicaties (‘messages’) tussen die verschillende entiteiten. En in dezelfde categorie: waaruit bestaat de communicatie binnen deelsystemen van ondernemingen. En de (of in elk geval een) heilige graal: zijn organismes, netwerken en CAS en de verschillende deelsystemen daarbinnen te sturen?

Volgens John H. Holland in zijn boek ‘Signals and Boundaries’ moet je om dat te onderzoeken, begrijpen wat de oorsprong is van signal/boundary hiërarchiën (zie Q-Morphisms uit de vorige post en verderop in deze post) en hoe ze co-evolueren. Dat loopt parallel aan het onderzoek naar de details van ecologieën door de oorsprong en de co-evolutie van soorten (organismes) te onderzoeken.

Het doel van dit boek is: ‘to tie these mechanisms into a single overarching framework that suggests ways to steer complex adaptive systems by modifying signals/boundaries hiërarchies‘. Holland gaat op jacht naar de ‘rules of the game’ waarmee het gedrag van signal/boundary systems kan worden beschreven en voorspeld. Zoals de regels van Newton worden gebruikt om de banen van planeten te beschrijven en te voorspellen. Kicken hè? Deze post is grotendeels afgeleid van het hierboven genoemde boek, tenzij anders aangegeven. Ik heb een aantal saillante onderdelen in deze post opgenomen, het boek is te compact om een samenvatting te geven.

Een niche is de relevante omgeving van een systeem en bestaat uit de dingen die het organisme eet en de dingen die door het organisme gegeten worden. Een ‘boundary’ is een fysieke of virtuele begrenzing van een niche. De niche van een bedrijf is haar relevante omgeving, gevormd door de ruimte van alle dingen waarmee het interacteert om de voor haar relevante doelen te bevorderen. De ‘boundaries’ van het bedrijf zijn de fysieke en virtuele begrenzingen van haar niche. ‘Signals’ zijn de interacties die plaatsvinden tussen de systemen. Die systemen worden dus gekenmerkt door hun ‘Signals’ en hun ‘Boundaries’ en worden in deze post verder s/b systemen genoemd.

Holland neemt een regenwoud als laboratorium (of speeltuin) voor het onderzoeken van die ‘rules of the game’. Niet met de bedoeling om op de biologische toer te gaan maar wel om interacties die relevant zijn voor alle s/b systemen in vier categorieën te groeperen, namelijk diversiteit, recirculatie, niche en coevolutie. Here goes:

Diversiteit: in een tropisch regenwoud komt vergeleken met ander bossen een enorme variëteit aan soorten voor. Dat wordt mogelijk gemaakt of eigenlijk afgedwongen door de arme grond eronder. Afvalstoffen die door een organisme worden afgegeven zijn voedingstoffen voor een volgende. Wat niet wordt gebruikt wordt meteen naar de dichtstbijzijnde rivier afgevoerd en verlaat het systeem. Om te kunnen overleven specialiseert een organisme zich in het aanboren van een voedselbron in die keten.

Recirculation: het resultaat (het is geen doel) van het hergebruiken van afval/voedingsstoffen is dat de diverse organismes in het regenwoud met elkaar interacteren en dat voedingsstoffen niet verloren raken en uit het systeem verdwijnen. Voorbeelden te over: planten die op bomen parasiteren en zelf een ecologie vormen voor insecten en reptielen door een poel water vast te houden of mieren die schimmelculturen verbouwen in hun nesten meet stukken plantenmateriaal. Schimmels (‘slime molds’) die in slechte omstandigheden een chemisch signaal afgeven dat het startschot is om zich te aggregeren tot één paddestoel met gedifferentieerde taken, zoals de steel en de hoed, en sporen maken. Het andere materiaal sterft af en vergaat en de sporen blijven over om nieuwe schimmels voort te brengen als de omstandigheden beter, bijvoorbeeld natter, zijn. De afval/voedingsstoffen blijven in omloop en soorten blijven bestaan, zij het periodiek ‘slapend’ in het voorbeeld van de ‘slime molds’. ‘Boundaries beperken de beschikbaarheid van voedingsstoffen tot een bepaalde ruimte (niche), zodat die beschikbaar komen voor andere organismes in die ruimte. Het beschikbaar  komen van een eenheid afvalstof in het systeem betekent beschikbaarheid van voedingsstoffen voor ander organismes. In de economie wordt dit het multiplier effect genoemd: elke euro die wordt uitgegeven is weer input voor een andere leverancier, voorzover hij niet wordt gespaard.

Niche en hiërarchie: in Peruaans regenwoud is hier en daar een stukje bos is dat uit één soort boom bestaat. Er is namelijk een soort mier die een voorkeur heeft voor die soort boom. Het is waarschijnlijk dat die mier alle andere plantensoorten wiedt, zodat een ’tuin’ ontstaat met alleen de favoriete boom. De mieren organiseren een ‘bounded niche’ (afgebakende niche) voor zichzelf.

Hoe vinden organismes de geschikte andere organismes om mee te interacteren? Geneste niches (niches in niches) leveren een netwerkachtige hiërarchie op, namelijk van ingekapselde grenzen (‘enclosing boundaries’) met corresponderende signalen op elk niveau. Ter illustratie: stukje bos →  boom → parasitaire plant (die water vasthoudt) → insecten en reptielen → interne organen → cellen → onderdelen van cellen. Elk deelsysteem is begrensd voor haar omgeving en is semi-permeabel, namelijk doordringbaar voor sommige signalen en niet of slecht doordringbaar voor andere. Die semi-doordingbaarheid bevordert het ontstaan en behoud van afval/voedingsbronnen die recirculatie bevorderen.

Coevolutie: in een coevolutionair proces geeft elke nieuwe soort nieuwe mogelijkheden voor interactie. Als deze interacties meer gespecialiseerd worden dan ontstaan er weer nieuwe mogelijkheden om te interacteren met bestaande soorten. Specialisatie gecombineerd met het multiplier effect maakt vergelijking mogelijk tussen voedselketens in een ecologie en voortbrengingsketens in een economie.

De gemeenschappelijke noemer in alle regenwoud voorbeelden is een samenstel van onderling interacterende deelsystemen. Dat gegeven en de daarboven beschreven soorten interactie leiden naar complexe adaptieve systemen (cas). De componenten waaruit een cas is opgebouwd zijn begrensde subsystemen die zich aanpassen of leren terwijl ze onderling interacteren. De aantallen gegevens die door die systemen worden voortgebracht zijn enorm en er is te weinig bekend van de manier waarop die gegevens tot stand komen. Dat is, via een andere weg opnieuw, de essentie van de zoektocht in dit boek: is het mogelijk sommige van die mechanismes te beschrijven, zodat die algemeen (algemener) toepasbaar worden. Om ze te beschrijven zijn de ‘controls’ nodig en wat hun rol is in de dynamica van zulke systemen. Dit is analoog aan de benodigde elementen om een vliegend vlietuig te maken en er vervolgens mee te vliegen, zoals luchtstroming, besturing en aandrijving.

De hoepel is te bepalen wat de oorsprong ervan is en hoe ze evolueren. De waarde ervan in één of ander systeem is equivalent aan de gegevens die een piloot gebruikt om te weten wat er ‘hierna gebeurt’, c.q. wat ze moet doen om in de lucht te blijven.

Dit zijn de functionele eisen voor dit raamwerk voor alle organismen:

  • agents (programma’s) die in een begrensde ruimte acteren en sommige signalen accepteren en verwerken en andere signalen afwijzen
  • mechanismes die ervoor zorgen dat de agents (programma’s) zich aanpassen aan veranderende inkomende signalen als de revaring van de agent toeneemt
  • de agents moeten een plaats krijgen in een populatie van verschillende soorten agents. Die plaats kan afwijken van de locatie van bestaande agents
  • de agents moeten de plaats kennen van verschillende bronnen die geen agents zijn
  • in de zo ontstane geometrie moeten agents de mogelijkheid hebben om conglomeraten te vormen, die hogere vormen van organisatie bieden met nieuwe boundaries. In het raamwerk  is dus plaats voor hiërarchische organisatievormen

Dit zijn de bouwstenen die de bovenstaande functionaliteit kunnen leveren:

  • classifier systems voor signaalverwerking (zie eerdere post Inductie)
  • tags om signalen te richten (zie eerdere  post Inductie)
  • tagged urns om semi-permeabele boundaries te definiëren (zie hieronder)
  • genetische algoritmes verzorgen de aanpassing en coevolutie van de agents (zie eerdere post Inductie)
  • dynamic generated systems leveren de grammatica en het wiskundige gereedschap voor het raamwerk, onder andere de two armed bandit (zie hieronder)


Tagged Urns is het statistische begrip vat (of Urn) met een trekking van ballen van verschillende kenmerken (bijvoorbeeld kleuren, strepen) en daaraan toegevoegd één of meer conditie(s) voor binnenkomende berichten (‘messages’) en één of meer voor uitgaande berichten. Die ‘messages’ zijn dezelfde als uit de post Induction. Voor toepassing in dit systeem wordt gebruik gemaakt van meerdere vaten en random trekking. Het resultaat is dat er een stroom van ballen van verschillende kleuren tussen de vaten. Omdat er een voorwaarde is voor toegang en een voorwaarde voor het verlaten van het vat ontstaat er een voorkeur in bepaalde vaten voor bepaalde kleuren en patronen ballen. Agents kunnen meerdere urnen bevatten. De tags zijn de ingangs- en uitgangscondities; zij adapteren ook via de genetische algoritmes.

Reactiemechanisme: het mechanisme dat het proces drijft is dat als een bal random wordt getrokken, hij naar door een message bij een Urn wordt afgeleverd, gecheckt wordt of zijn tag past bij die van de urn en al dan niet wordt toegelaten tot het vat. Zo nee dan gaat hij terug naar waar hij vandaan komt. Zo ja dan wordt hij toegelaten tot het vat. In dat vat vindt een reactie plaats: als er een bestaande bal in het vat zit die kan ‘reageren’ met de nieuw toegevoegde bal dan levert die reactie twee nieuwe ballen op. De kans dat dat gebeurt voor bal1 en bal2 (die reactie levert dan bal3 en bal4 op) is conform het biljartbal model de kans dat de ballen elkaar raken (ze beide op dezelfde plaats zijn)  x de kans dat ze reageren. Formeel: p3 = p4 = p1 x p2 x r12. In het boek worden veel voorbeelden gegeven om dit te programmeren.

Two armed bandit
(fruitmachine): met dit mechanisme (er bestaan meerdere van dergelijke mechanismes, maar het principe is steeds ongeveer dit) wordt verklaard hoe omgegaan wordt met ophopingen. Als er een two armed bandit is waarvan de armen elk een andere opbrengst geven dan zal dat een rij geven bij de arm waarvan gedacht wordt dat die de hoogste opbrengst geeft op de lange termijn. Als de deelnemers niet exact weten wat de opbrengst aan iedere kant is en ze iets moeten doen dan gaan ze in de andere rij staan en besteden ze mogelijk eerst tijd aan de arm die minder op (blijkt te) brengen, terwijl ze bijhouden wat de gemiddelde opbrengst bij de arm in de andere rij is. Als de kosten daarvan (gederfde oprengsten) in mindering worden gebracht op de opbrengsten die ze kunnen verwachten als ze eindelijk aan de juiste (hoogste opbrengsten) arm staan, dan gaan ze een afweging maken: meteen aan de slag aan de machine die het minst opbrengt of in de rij voor de arm die het meest opbrengt. Dit kan verfijnd worden door strategieën aan te leggen om de opbrengsten in de tijd te vergroten, bijvoorbeeld door evenveel tijd aan elke arm te besteden maar, als de opbrengst van één van beide beter blijkt te zijn, steeds meer tijd aan die arm te besteden en minder aan de andere.

ECHO model:
als de fitness van een agent wordt vergeleken met de van een andere, dan krijgt de agent met de meeste fitness, naar rato van de mate waarin zijn fitness hoger is, ‘strength’ toebedeeld van de verliezer. In het ECHO model wordt dit gedaan door de code van de agent in te leveren bij de winnaar, inclusief zijn tags. Boven een bepaalde drempel voor fitness mag een agent zich voortplanten door zichzelf te vemenigvuldigen. Onder een bepaalde drempel gaat de agent dood en vermenigvuldigt zich niet meer.

In dit bovenstaande model kunnen, gebruikmakend van de daarboven weergegeven bouwstenen, niches worden gevuld en nieuwe niches ontstaan. Er kunnen niches binnen andere niches ontstaan en overkoepelende niches. Niches worden van de omgeving gescheiden door een in één of andere mate doordringbare grens, een boundary. Niches en hun boundaries bevatten organismen die eten en worden gegeten. Ze ondervinden via de (semi) doordringbare boundaries steeds druk vanuit hun omgeving, andere niches en door die druk co-evolueren ze in de tijd. Een random element van het reactiemechanisme levert een kans op dat er een nieuw element aan de ballenbak wordt toegevoegd. Een random element zorgt voor het  veranderen van al te rigide voorkeuren van Urnen voor bepaalde oplossingen. Snelle ophoping van organismen (ballen eigenlijk) in populaire niches worden vermeden door de two armed bandid. De mogelijkheid bestaat voor ballen om in andere urnen (andere locaties dus) terecht te komen, zodat er niet meteen een lokaal maximum voor een kenmerk ontstaat. De interacties met de niches in hun omgeving veranderen en de signalen binnen de niches. Boundaries en signals co-evolueren en in het proces ontstaan weer nieuwe niches, boundaries en signals.

Het resultaat is een systeem waarin alles continu in beweging is. De patronen (signals en boundaries) blijven wel achter maar de populatie ervan (in het voorbeeld de ballen, in feite genetische algoritmes) verandert steeds als de omgeving in beweging is.

Ik heb hier maar een deel van het hele model weergegeven. Alles wat er in het boek wordt beschreven is wiskundig compleet en kan dus geprogrameerd worden. Hier en daar is aangegeven dat dit tijdens het schrijven van het boek nog niet in de praktijk was toegepast. De laatste stand van zaken ken ik niet.

Op papier is dit een overkoepelend raamwerk van alle mogelijke complexe adaptieve systemen, biologisch, in-silico, sociaal of nog anders. En dus is dit het te gebruiken model voor een A-Enterprise.

Gepubliceerd door

DP

Complexity Scientist