Showing results for 
Search instead for 
Did you mean: 
Showing results for 
Search instead for 
Did you mean: 

Pattern recognition on ThingWorx


Pattern recognition on ThingWorx

Hi, all!

Is pattern(sensor) recognition possible on ThingWorx?

For example, if A pattern matches B pattern. (A: Machine pattern / B: predefined on ThingWorx)

This machine may be considered as normally operation.

I look forward to your reply.

Thank you


Re: Pattern recognition on ThingWorx

Jeongeun Kim​, Per my understanding; this could be part of ThingWorx Analytics.

Can Someone from ThingWorx Analytics Team confirm this?

Re: Pattern recognition on ThingWorx

A simple solution could also be to create a Thing (for the machine) and invoke a service each time a property changes.

The service then compares pattern A to pattern B (e.g. via a regex or some ifs and switches) - return value of the service could be BOOLEAN for true if the pattern matches or false if it doesn't.

For a more sophisticated pattern Ankit has a point and it could be ThingWorx Analytics relevant, e.g. with a pattern / threshold recognition via a ThingWatcher

Re: Pattern recognition on ThingWorx

Hi Michael Neumann​,

This is interesting. Could you please explain about the service that compares pattern A to pattern B (e.g. via a regex or some ifs and switches) in more detail.

Re: Pattern recognition on ThingWorx

Well not really

I mean in the end you have pattern recognition that's deriving from a Machine Learning background, where TWX Analytics comes into play.

This could be behavioral patterns, patterns & shapes in images, movements and fences etc.

That in turn could relate to vectors, clustering, neural networks, decision trees for analysis.

However, those are all just algorithms, which could be implemented in a custom service. Probably based on a Java Class instead of a Java Script - which would then require programming a custom extension.

If the recognition, or the pattern is quite simple, like getting an numeric input and compare it to a pre-defined range of numbers - or receiving a string and validating it with a pre-existing regular expression... this can be implemented on a TWX service level with Java Script.

You could even have dynamic patterns by modifying the pattern and storing it in a (value) stream to validate, if an incoming value matches e.g. the last 3 stored patterns.

Those could be used for some kind of self-designed machine learning algorithm.

So if the use case is simple enough - depending on the actual patterns (text based instead of images / stream based), a simple service comparing thresholds or regex pattern could also be sufficient. For anything else, with a real machine learning approach / background TWX Analytics is probably most likely the better choice.

But to keep it short: yes, it's possible to use pattern recognition algorithms in a ThingWorx environment

Re: Pattern recognition on ThingWorx

Michael Neumann​,

Thank you for the explanation.

Re: Pattern recognition on ThingWorx

Jeongeun Kim​,

Can you please add more details regarding the pattern. Is it some simple pattern or could be some sophisticated pattern?

Re: Pattern recognition on ThingWorx

Hi Jeongeun Kim,

I can add something form a ThingWorx Analytics view.

We do have indeed ThingWatcher that is our Anomaly detection module.

This however will not compare to pre-existing data, what it does is read a signal as input and initially learn from the signal (so it is required that in this phase the signal is not anomalous). It will then create a model that will be used to compare the newcoming signal and identify if there is an anomaly.

Currently, as of ThingWorx 7.4, ThingWatcher exist only as a SDK and therefore requires some coding (see Sample Java utility to validate ThingWatcher 52.2 installation for an introduction as well as the Help Center: PTC ).

With release 8.0, this feature will be embedded in the ThignWorx core platform and therefore can be used straight out of the box.

Hope this helps



Check out the upcoming Expert Session: Understanding ThingWorx Navigate Licensing in Community "Customer Events" section.