Lecture No. 16
Dated: 30-10-2024
Application of Non Deterministic Finite Automaton
1
There is an important application of non deterministic finite automaton
1 in artificial intelligence
.
Imagine a maze as such where -
is the initial state
and +
is the final state
.
- | 1 | 2 | 3 |
---|---|---|---|
4 | L | 5 | O |
6 | M | 7 | P |
8 | N | 9 | + |
One is allowed to only move on the numeric tiles.
We can determine the number of ways someone can move from -
to +
using the following non deterministic finite automaton
1
It is shown that the shortest string
2 which is accepted by the machine is \(aaaaaa\).
Note
- Every
finite automaton
3 can be considered to be anon deterministic finite automaton
1 as well but the converse may not be the true. - Every
non deterministic finite automaton
1 can be considered to be atransition graph
4 as well but the converse may not be the true.
Non Deterministic Finite Automaton
1 With Null String
2 \(\Lambda\)
If \(\Lambda\) is allowed to be an edge in a non deterministic finite automaton
1 then it is called non deterministic finite automaton
1 with \(\Lambda\).
It is a collection of three things:
- Finite many
states
with oneinitial
and somefinal states
. - Finite
set
5 of inputs, let's say, \(\Sigma =\{a, b, c\}\). - There may be more than one transitions for a
letter
, including \(\Lambda\) or there may not be any transition at all.
Converting into Finite Automaton
3 from Non Deterministic Finite Automaton
1
Method 1
Since a non deterministic finite automaton
1 is considered a transition graph
,4 a corresponding regular epression
6 can be constructed, using kleene's theorems
.7
Similarly, a finite automaton
3 can be constructed from that regular expression
6 resulting into an equivalent non deterministic finite automaton
.1
Method 2
For a non deterministic finite automaton
,1 there may be states
with no transitions, in correspondence to which we can make finite automaton
3 with empty states
.
We also have solution for states
with multiple transitions.
Example
Following is ournon deterministic finite automaton
1 which needs to be converted
The finite automaton
3 which is constructed