< ETHZ(Difference between revisions)
|
|
Line 1: |
Line 1: |
- | =='''.:: Finite State Machine View on the System ::.'''==
| |
- | [[Image:FSM.png|thumb|350px|Figure 1: Graph representing the finite state machine.]]
| |
- | The proposed system is best described by a [http://en.wikipedia.org/wiki/Mealy_machine Mealy machine], a special type of [http://en.wikipedia.org/wiki/Finite_state_machine finite state machines] (FSM). Mealy machines are defined by a 6-tuple, (''Q'', ''q''<sub>0</sub>, Σ, Λ, ''δ'', ''Ω''), with:
| |
- | * ''Q'' - a set of states, for the proposed system we use three different states (''q''<sub>0</sub> - not yet trained, ''q''<sub>1</sub> - trained to recognize chemical A, ''q''<sub>2</sub> - trained to recognize chemical B)
| |
- | * ''q''<sub>0</sub> - a start state, here we assume we start in a state where the system is not yet trained
| |
- | * Σ = {A+L, A, B+L, B} - an input alphabet
| |
- | * Λ = {''green'', ''red'', ''blue'', ''yellow''} - an output alphabet
| |
- | * ''δ'' : ''Q'' × Σ → ''Q'' - a state transition function
| |
- | * ''Ω'' : ''Q'' × Σ → Λ - an output function
| |
| | | |
- | In detail, the transition function ''δ'' and the output function ''Ω'' look as follows:
| |
- | {| class="wikitable" border="1" cellspacing="0" cellpadding="2" style="text-align:left; margin: 1em 1em 1em 0; background: #f9f9f9; border: 1px #aaa solid; border-collapse: collapse;"
| |
- | |-
| |
- | ! inputs/states !! ''q''<sub>0</sub> !! ''q''<sub>1</sub> !! ''q''<sub>2</sub> !!
| |
- | ! inputs/states !! ''q''<sub>0</sub> !! ''q''<sub>1</sub> !! ''q''<sub>2</sub>
| |
- | |-
| |
- | ! A+L || ''q''<sub>1</sub> || ''q''<sub>1</sub> || ''q''<sub>1</sub> ||
| |
- | ! A+L || ''green'' || ''green'' || ''blue''
| |
- | |-
| |
- | ! A || ''q''<sub>0</sub> || ''q''<sub>0</sub> || ''q''<sub>0</sub> ||
| |
- | ! A || ''green'' || ''green'' || ''green''
| |
- | |-
| |
- | ! B+L || ''q''<sub>2</sub> || ''q''<sub>2</sub> || ''q''<sub>2</sub> ||
| |
- | ! B+L || ''yellow'' || ''red'' || ''yellow''
| |
- | |-
| |
- | ! B || ''q''<sub>0</sub> || ''q''<sub>0</sub> || ''q''<sub>0</sub> ||
| |
- | ! B || ''yellow'' || ''yellow'' || ''yellow''
| |
- | |-
| |
- | |}
| |
- | The resulting automaton is shown in Fig. 1. <br />
| |
- | In its native state (''q''<sub>0</sub>), the system reacts on the presence of either chemical A or B by fluorescing ''green'' or ''yellow'', respectively. The system itself remains in state ''q''<sub>0</sub>. Only when the input chemical is combined with a learning signal (chemical L), it changes its state either to ''q''<sub>1</sub> (in presence of chemical A) or ''q''<sub>2</sub> (in presence of chemical B). In these two states, the system is able to distinguish between changing input: while the system is in state ''q''<sub>1</sub>, the system starts fluorescing ''red'' if confronted with chemical B and vice versa when the system is in state ''q''<sub>2</sub> and confronted with chemical A (it fluoresces ''blue''). In order to maintain the states ''q''<sub>1</sub> and ''q''<sub>2</sub>, the learning signal L has to be present all the time.
| |