Android Watch Gesture Recognition with ‘Functional’ State Machines

Sign in to queue


Finite state machines (FSM) are a common technique for recognizing patterns over streams of data. However basic FSM cannot easily handle noisy data such as sensor data from a wearable device that is generated using human limb movement. This session presents a novel variation of FSM using techniques from functional programming to construct 'functional' state machines (FnSM).

In this talk, you'll see real-world application of - an Android smartwatch app that recognizes gestures performed using wrist and forearm movements. I will also describe how we used evolutionary computing algorithms to optimize the performance of the FnSM by selecting better parameter values for the various state-transition decisions.





Download this episode

The Discussion

  • User profile image

    Great application of fsharp types to control an explosion of states in a complex state machine. This use may be extended to BDD Binary Decision Diagram in Compiler construction, besides verification of hardware circuits? Ref. Don Symes book F# 4.0

Add Your 2 Cents