Several algorithms base on learning a perceptron $w \cdot x$ and get a bound on the number of mistakes in comparison with the optimization function of SVM. These algorithms use different updates for $w$. The most successful use the potential approach, when the update is represented as a gradient of a certain potential function. The Exponentiated Gradient, for example, uses exponential potential function. Winnow algorithm allows to get other bounds.