Files
organism/winnertakeall/BHE-WTA.md
T

2.7 KiB

BEH-WTA.md

BEH-WTA: Container

Winner Take All: 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. Qui estendiao il concetto di espansion:

  • espandiamo 2 tipi di container per ora: BEH-EXT e BEH-INH
  • dichiara NEU-x i neuroni
  • dichiara AST-x gli astrociti
  • collega un NEU-x con un altro NEU-y e con un AST-x
  • specifica che tipologia: excitation o inhibition
  • se inhibition il TRG e'SOMA, se exhitation il TRG e' BDx
  • specifica il BEH-EXH, ad esempio, che e' il comportamento di ciascuna riga espansiva. E serve a gestire l'accoppiamento atttuale fra NEU-x, NEU-y e AST-x. specifica INC-x, OUT-x, @ che sono dei placeholders per neuroni e astrorcita che verranno specificati da un'espansione piu' in alto, tipo BEH-ORG.
  • i template servono solo a semplificare l'espressione dell'espansione, senza appesantirla troppo.
  • posso pensare di produrre il circuito in ambiente visuale tipo DrawIO, e avere un parser che me lo trasforma in questa sintassi.

When parser sees:

  • boundary-inh-001: NEU-003, OUT-001, @

Template lookup:

  • boundary-inh-001: BEH-INC, {SRC}.BEH-AXO -[inhibits]-> {TGT}.BEH-SOMA ~{AST}

Substitution:

  • behaviour = BEH-INC # loaded from BEH-INC.md
  • {SRC} = NEU-003 # presynaptic neuron
  • {TGT} = OUT-001 # outgoing port
  • {x} = not required # template targets SOMA, no {x}
  • {AST} = @ # unknown, specified from above

Result:

  • NEU-003.BEH-AXO -[inhibits]-> OUT-001.BEH-SOMA ~@ behaviour: BEH-INC from BEH-INC.md
container: BEH-WTA

  include: 
    - BEH-EXT.md
    - BEH-INH.md
    - BEH-INC.md
    - BEH-OUT.md

  components:

    templates:

    elements:
      NEU-001: BEH.N from N.md
      NEU-002: BEH.N from N.md
      NEU-003: BEH.N from N.md 
      NEU-004: BEH.N from N.md
      AST-001: AST from AST.md
      AST-002: AST from AST.md

    incoming_elements:
      INC-001 # Neurone che sara' specificato piu' in "alto" perche' alla frontiera
      INC-002 

    outgoing_elements: 
      OUT-001 # Neurone che sara' specificato piu' in "alto" perche' alla frontiera
      OUT-002

  expansion:
    # stiamo espandendo: BEH-EXT e BEH-INH. Ciascuna riga e' un'espansione specifica e actual. 

    # INTERNAL-AREA-001
    - NEU-001.BEH-AXO -[BEH-EXH]-> NEU-003.BEH-BD(1) ~AST-001
    - NEU-002.BEH-AXO -[BEH-INH]-> NEU-003.BEH-SOMA ~AST-002

    # INTERNAL-AREA-002
    - NEU-003.BEH-AXO -[BEH-EXH]-> NEU-003.BEH-BD(3) ~AST-001
    - NEU-004.BEH-AXO -[BEH-EXH]-> NEU-002.BEH-BD(1) ~AST-002

    # INCOMING-001
    - INC-001.BEH-AXO -[BEH-EXH]-> NEU-001.BEH-BD(1) ~@

    # OUTGOING-001
    - NEU-003.BEH-AXO -[BEH-INH]-> OUT-001.BEH-SOMA ~@