--- include_toc: true --- # winnertakeall.md ## WINNERTAKEALL Qui comprendiamo i behaviors che associamo al winnertakeall. I comportamenti li consideriamo avvenire di NIGHT. E' un po' una novita' ma ha senso, si tratta di un comportamento a livello di circuiti, e quindi riorganizzazione notturna. - Questo e' il nuovo tipo di espansione che permette di specificare un "circuito" di possibilita'. A differenza di BD che espande PRE implicitamente e trattando PRE tutti allo stesso modo. - l'espansione determina la forma dei "circuiti" espressi dal winnertakeall. - L'eventuale modulazione di winnertakeall, per ora non la prendo in considerazione. Sarebbe creare nuove relations che servirebbero quando si allungano AXON, o addirittura si creano nuovi neuroni. - in excitation e inhibition facciamo il tuning di PRESYNAPSE, POSTSYNAPSE e ASTROSYNAPSE e implicitamente creaiamo e eliminiamo synapse - @XXX e' un'attualita' che viene espressa direttamente, non calcolata dal interprete come per espansione di PRESYNAPSE. L'attualita' espressa viene riferita.. ```Gen WINNERTAKEALL type: comprehension include: ../../elements/neuron.md expansion: @NEU-005: EXPAND [ comp: NEURON ] @NEU-006: EXPAND [ comp: NEURON ] instantiation: # Scope !NIGHT: SCOPE [ reference: &ORGANISM.!NIGHT] # Behaviour ## external @IN-EXCI-001: BEHAVIOUR [ beh: IN-EXCITATION, _InPossible: TUB_COMB [ post: @NEU-001.@D-BRANCH-002._postsynapse, post: @NEU-002.@D-BRANCH-002._postsynapse, astro: @NEU-001.@D-BRANCH-002._astrosynapse ] ] @IN-EXCI-001: BEHAVIOUR [ beh: IN-EXCITATION, in: @NEU-001.@D-BRANCH-002, in: @NEU-002.@D-BRANCH-002 ] @OUT-EXCI-001: BEHAVIOUR [ beh: OUT-EXCITATION, out: @NEU-001.@AXO-001, out: @NEU-002.@AXO-001] @IN-INHI-001: BEHAVIOUR [ beh: IN-INHIBITION, in: @NEU-004.@SOMA, in: @NEU-003.@SOMA] ## internal ### Area xxx @: BEHAVIOUR [ beh: EXCITATION, _PrePostAstroSyn: TUB_COMB [ pre: @NEU-001.@AXON-001._presynapse, post: @NEU-001.@D-BRANCH-001._postsynapse, astro: @NEU-001.@D-BRANCH-001._astrosynapse ] ] @: EXCITATION [out: @NEU-001.@AXON-001, in: @NEU-003.@D-BRANCH-001] @: EXCITATION [out: @NEU-001.@AXON-001, in: @NEU-004.@D-BRANCH-001, in: @NEU-003.@-BRANCH-001] @: INHIBITION [out: @NEU-002.@AXON-001, in: @NEU-003.@SOMA-001] ### Area yyy @: EXCITATION [out: @NEU-003.@AXON-001, in: @NEU-004.@D-BRANCH-003] @: EXCITATION [out: @NEU-004.@AXON-001, in: @NEU-002.@D-BRANCH-001] ``` ### EXCITATION ```Gen EXCITATION type: container activity_scope: !NIGHT tub_intricated: _Presynapse: TUB [in] _Presynapse: TUB [out.{}.{}.PRESYNAPSE] _Postsynapse: TUB [in.{}.{}.POSTSYNAPSE] # Qui il modulo interno TUB trova la PRESYNAPSE come istanziazione e la intrica con _Presynapse _Astrosynapse: TUB [ASTROCYTE.ASTROSYNAPSE] # Qui l'unico ASTROCYTE che "conosco" e' quello al quale WINNERTAKELL e' stato binded in TECTUM, ovvero nell'organo che ha espansi il modulo. snippets: # &Fixed @: CONTEXTOR [snip: Excitation_possible, RF: active 60x] # &ActivateAstroPostPre @: BINDER [snip: Excitation_bind, RF: active 6x] @: ACCUMULATOR [snip: ClearTraces, RF: active 6x] @: BINDER [snip: Excitation_unbind, RF: active 6x] ``` #### *Fixed ##### Excitation_possible Qui devo capire queste tracce chi le lascia e se sono esclusive? ```Gen Excitation_possible in_context: &Fixed condition: ??? out_context: *ActivateAstroPostPre condition: ( BadTraces fullness ) out_context: DeActivateAstroPostPre_ctx ``` ##### *ActivateAstroPostPre ###### Excitation_bind Qui attiviamo la Syn collegando Pre e Post. Lo facciamo per tutte le relazioni fino a quando GoodTraces fullness ```Gen Excitation_bind in_context: &ActivateAstroPostPre hypothesis: ( GoodTraces fullness ) AND NOT ( _Astrosynapse full ) AND NOT ( _Presynapse full ) AND NOT ( _Postsynapse full) bind: [_Presynapse increase, _Postsynapse increase, _Astrosynapse increase] trace: None? hypothesis: ( GoodTraces fullness ) AND ( NOT _PrePostAstroSyn.pre full ) AND ( NOT _PrePostAstroSyn.post full ) AND ( NOT _PrePostAstroSyn.astro full) bind: [_PrePostAstroSyn.pre, _PrePostAstroSyn.post, _PrePostAstroSyn.astro ] trace: None? ``` ###### ClearTraces ```Gen ClearTraces in_context: &ActivateAstroPostPre hypothesis: GoodTraces NOT empty action: GoodTraces decrease trace: None? ``` ###### Excitation_unbind Qui deattiviamo la Syn ```Gen Excitation_unbind # Devo essere sicuro di eliminare i 3 che sono collegati, non a caso. Qui forse il Bind e' prima della ipotesi, perche' dobbiamo assicurarci ci sia una sinapsi da sciogliere. in_context: &DeActivateSynPostPre hypothesis: (BadTraces fullness) unbind: [_Presynapse decrease, _Postsynapse decrease, _Astrosynapse decrease] trace: None? hypothesis: ( NOT _synapse empty ) action: @: UNBIND [ syn: _synapse ] ```