====Sequence Patterns==== The **Sequence Patterns** [[firstsite:start|FirstSite]] analytic is designed to look 'down' any sequences or profiles that are present in your ARDI database. It looks for each relationship with the word 'Sequence' or 'Profile' in its name, which usually indicates a line of assets in a specific, human-readable order and builds what is effectively a 'chart' of your property values down that relationship. {{fssequence.png|500}} When found, it examines how individual property values flow down those relationships, and points out any large discrepancies, bad data points or outlier values across that relationship. ===Detail UI=== The UI for sequence tests is [[sequence_detail|explained here]]. ===Learning The Ideal Shape=== When you use this analytic the first time, all it's doing is spotting bumps and sharp changes (which it calls //discontinuities//) in your data. But while some relationships are expected to have smooth data from the first asset to the last (for example, if a load is being balanced across a set of machines), there are many more cases where the chart is **supposed** to have sharp jumps and breaks. In those cases, you can use **Machine Learning** to teach FirstSite what the 'shape' of this chart is supposed to look like by pressing the //This Is Normal// button. Once you've given it a few examples to work with, the AI will then be able to look at your values and let you know if your system is running in a normal or abnormal way. ===Training Complex Systems=== If your system runs in a variety of different modes or configurations, you might need to train the AI several times to give it examples of the various shapes your data can be in. For example, if you have a set of assets that take turns being the 'active' one, you'll need to press the //This Is Normal// at least once when each asset is taking its turn. If you had three machines, you'd want samples of the following... ^Machine A^Machine B^Machine C^ |Running|Stopped|Stopped| |Stopped|Running|Stopped| |Stopped|Stopped|Running| This is enough to teach the system that those three states are good, but anything outside them may be bad. It would return a 'bad' result if... * All assets were stopped, * Any two assets are running, * All assets are running. In real-life applications, you might also want to add some training data covering //transition// times. If only shown the three scenarios in the table above, it will probably indicate a bad state when you're switching from Machine A to Machine B, since both might be running (A slowing down and B starting up). ===Training/Viewing Past Data=== You can view a sequence for a //past date// by adding the 'at' parameter to the URL of the [[analytic display|analytic display]]. Let's say we knew that Machine 1 (from the previous example) last ran between 9:00 and 11:00 on the 20th of December, 2023. After //adjusting the time to UTC/Greenwich Mean Time//, we could then add 'at=2023-12-20 09:30:00' to our URL ===Deployment Options=== As well as running through FirstSite, your limit analytics can be [[deploy_sequence|deployed as a live alert]].