Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
A deterministic system is a system in which a given initial state or condition will always produce the same results. There is no randomness or variation in the ways that inputs get delivered as outputs.
In a non-deterministic system, by contrast, there is some randomness or choice involved in the model. One of the best ways to explain this is to contrast the deterministic system with a probabilistic system. Probabilistic computing involves taking inputs and subjecting them to probabilistic models in order to guess results.
Through iterative processes, neural networks and other machine learning models accomplish the types of capabilities we think of as learning – the algorithms adapt and adjust to provide more sophisticated results.
Deterministic programming is that traditional linear programming where X always equals X, and leads to action Y. If input X leads to an array of actions, that represents non-deterministic programming.
Various technologies are taking us beyond deterministic programming into the world of non-deterministic computing. One is the use of non-deterministic models that do choose from an array of actions for input X.
Another is a system called quantum computing where individual binary bits are replaced with items called qubits which can have a value of one, zero or an indeterminate value.