Browse Definitions :
Definition

finite state machine

Finite state machine (FSM) is a term used by programmers, mathematicians, engineers and other professionals to describe a mathematical model for any system that has a limited number of conditional states of being. A practical example of a finite state machine is a set of buttons on a video game controller that are connected to a specific set of actions within the game. When a user inputs hitting certain buttons, the system knows to implement the actions that correspond.

The makeup of a finite state machine consists of the following:

  • A set of potential input events.
  • A set of probable output events that correspond to the potential input events.
  • A set of expected states the system can exhibit.

A finite state machine may be implemented through software or hardware to simplify a complex problem. Within an FSM, all states in consideration exist in a finite list and the abstract machine can only take on one of those states at a time. This approach allows each input and output scenario to be studied and tested. 

An FSM may be something very abstract, like a model for a business represented by an illustration, or it may be something concrete, like a vending machine or computer. The list of possible combinations of these elements is limited within a finite state machine. Alternatively, a state machine can be fuzzy. A fuzzy state machine allows the possibility of points of data that are not within discrete, pre-designated categories.

Automata theory

While the word machine traditionally includes a physical component, in this context it refers to an abstraction that could take the form of anything from a set of input events, to a computer, simple analog machine or theoretical model of an abstract concept in automata theory. Automata is a theoretical branch of computer science and discrete mathematics that focuses on the logic of simple machines. The types of computational models within automata theory include:

  • Finite state machines—Models for any system with a limited number of conditional states of being.
  • Pushdown automata – More complicated than finite state machines, these use regions of memory called stacks to store information as part of a model.
  • Linear-bounded automata (LBA) – Similar to a Turing machine, but the data is limited to a portion of input within a finite group of inputs.
  • Turing machines—The most complex mathematical model within automata theory for testing different input combinations to analyze a larger system or problem.

State transition

When a finite state machine switches between states, it is called a state transition. Testing the quality of a system includes checking each state and state transition by considering all of the potential inputs that might be entered. In some cases, the finite state machine is set up using a programming language, and state transition functions are executed. In addition, artificial intelligence can be used to collect data about systems with pattern recognition and automated models.

For simpler problems, the same information can be displayed in tables, matrices, illustrations and flow charts, but finite state machines allow researchers to model larger and more complicated scenarios. Finite state machine diagrams show the flow of logic between input and output combinations that may appear within a specific machine.

This was last updated in September 2019

Continue Reading About finite state machine

Networking
  • firewall as a service (FWaaS)

    Firewall as a service (FWaaS), also known as a cloud firewall, is a service that provides cloud-based network traffic analysis ...

  • private 5G

    Private 5G is a wireless network technology that delivers 5G cellular connectivity for private network use cases.

  • NFVi (network functions virtualization infrastructure)

    NFVi (network functions virtualization infrastructure) encompasses all of the networking hardware and software needed to support ...

Security
  • virus (computer virus)

    A computer virus is a type of malware that attaches itself to a program or file. A virus can replicate and spread across an ...

  • Certified Information Security Manager (CISM)

    Certified Information Security Manager (CISM) is an advanced certification that indicates that an individual possesses the ...

  • cryptography

    Cryptography is a method of protecting information and communications using codes, so that only those for whom the information is...

CIO
  • IT project management

    IT project management is the process of planning, organizing and delineating responsibility for the completion of an ...

  • chief financial officer (CFO)

    A chief financial officer (CFO) is the corporate title for the person responsible for managing a company's financial operations ...

  • chief strategy officer (CSO)

    A chief strategy officer (CSO) is a C-level executive charged with helping formulate, facilitate and communicate an ...

HRSoftware
  • HR automation

    Human resources automation (HR automation) is a method of using software to automate and streamline repetitive and laborious HR ...

  • compensation management

    Compensation management is the discipline and process for determining employees' appropriate pay and benefits.

  • HR technology (human resources tech)

    HR technology (human resources technology) is an umbrella term for hardware and software used to automate the human resource ...

Customer Experience
  • martech (marketing technology)

    Martech (marketing technology) refers to the integration of software tools, platforms, and applications designed to streamline ...

  • transactional marketing

    Transactional marketing is a business strategy that focuses on single, point-of-sale transactions.

  • customer profiling

    Customer profiling is the detailed and systematic process of constructing a clear portrait of a company's ideal customer by ...

Close