Exemplo n.º 1
0
        # do not gate the stimulus buffer. Instead, we create a flow_in
        # construct, which repeats the output of the stimulus buffer, and we
        # gate that. This allows us to gate the stimulus buffer in the NACS
        # independently from other subsystems. To implement the gate, we
        # initialize a `Gated` object which wraps the activation repeater.

        Construct(name=flow_in("stimulus"),
                  process=Gated(base=Repeater(source=buffer("stimulus")),
                                controller=buffer("gate"),
                                interface=gate_interface,
                                pidx=0))

        Construct(name=chunks("in"),
                  process=MaxNodes(sources=[flow_in("stimulus")]))

        Construct(name=flow_tb("main"),
                  process=TopDown(source=chunks("in"), chunks=nacs.assets.cdb))

        Construct(name=features("main"),
                  process=MaxNodes(sources=[flow_tb("main")]))

        Construct(name=flow_tt("associations"),
                  process=Gated(base=AssociativeRules(
                      source=chunks("in"), rules=nacs.assets.rule_db),
                                controller=buffer("gate"),
                                interface=gate_interface,
                                pidx=1))

        Construct(name=flow_bt("main"),
                  process=Gated(base=BottomUp(source=features("main"),
                                              chunks=nacs.assets.cdb),
Exemplo n.º 2
0
        Construct(name=terminus("speech"),
                  process=ActionSelector(
                      source=features("main"),
                      temperature=.01,
                      interface=alice.assets.speech_interface))

    nacs = Structure(name=subsystem("nacs"), assets=Assets(chunks=nacs_cdb))

    with nacs:

        Construct(
            name=chunks("in"),
            process=MaxNodes(
                sources=[buffer("stimulus"), buffer("wm")]))

        Construct(name=flow_tb("main"),
                  process=TopDown(source=chunks("in"),
                                  chunks=nacs.assets.chunks))

        Construct(
            name=features("main"),
            process=MaxNodes(
                sources=[buffer("stimulus"),
                         buffer("wm"),
                         flow_tb("main")]))

        Construct(name=flow_bt("main"),
                  process=BottomUp(source=features("main"),
                                   chunks=nacs.assets.chunks))

        Construct(name=chunks("out"),
Exemplo n.º 3
0
                base=Repeater(source=buffer("stimulus")),
                controller=buffer("gate"),
                interface=gate_interface,
                pidx=0
            )
        )

        Construct(
            name=chunks("in"),
            process=MaxNodes(
                sources=[flow_in("stimulus")]
            )
        )

        Construct(
            name=flow_tb("main"), 
            process=TopDown(
                source=chunks("in"),
                chunks=nacs.assets.cdb
            ) 
        )

        Construct(
            name=features("main"),
            process=MaxNodes(
                sources=[flow_tb("main")]
            )
        )

        Construct(
            name=flow_tt("associations"),