{"id":9084,"date":"2019-08-29T15:17:46","date_gmt":"2019-08-29T15:17:46","guid":{"rendered":"https:\/\/www.techopedia.com\/definition\/deterministic-finite-automaton\/"},"modified":"2019-08-29T15:17:46","modified_gmt":"2019-08-29T15:17:46","slug":"deterministic-finite-automaton","status":"publish","type":"definition","link":"https:\/\/www.techopedia.com\/definition\/18835\/deterministic-finite-automaton-dfa","title":{"rendered":"Deterministic Finite Automaton"},"content":{"rendered":"
A deterministic finite automaton is a type of deterministic algorithm based on a state that changes with inputs. These are also known as deterministic finite state machines or deterministic finite acceptors.<\/p>\n
They are different from probabilistic and non-deterministic models in that one input (X) results in one known output (Y).<\/p>\n
DFAs are useful in many different types of applications. For example, they have been useful in video game programming, for instance, creating the algorithmic movements of characters in the classic game Pac-Man.<\/p>\n
Another common use of a DFA is in vending machines where a series of states reacts to transition functions in analyzing units of money inputted into the machine to determine when a purchase price has been met.<\/p>\n
Although deterministic models have been the traditional mainstay in programming, new probabilistic and non-deterministic models are slowly emerging. The difference is that non-deterministic models can choose between various outcomes according to inputs, and are able to learn or evolve independent of explicit programming instruction.<\/p>\n","protected":false},"excerpt":{"rendered":"
What Does Deterministic Finite Automaton Mean? A deterministic finite automaton is a type of deterministic algorithm based on a state that changes with inputs. These are also known as deterministic finite state machines or deterministic finite acceptors. They are different from probabilistic and non-deterministic models in that one input (X) results in one known output […]<\/p>\n","protected":false},"author":7813,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_lmt_disableupdate":"","_lmt_disable":"","om_disable_all_campaigns":false,"footnotes":""},"definitioncat":[241,270,256],"class_list":["post-9084","definition","type-definition","status-publish","format-standard","hentry","definitioncat-computer-science","definitioncat-data-science","definitioncat-emerging-technology"],"acf":[],"yoast_head":"\n