En enkel implementasjon av Q-learning algoritmen benytter tabeller for å lagre data. Problemet med denne tilnærmingen er raskt tap av levedyktighet med økning av kompleksiteten til systemet den kontrollerer. En løsning er å bruke et nevralt nettverk som en funksjonsapproksimator. Mer generelt kan Q-learning kombineres med funksjonsapproksimering. Dette gjør det mulig å anvende algoritmen til større problemer, som for eksempel NP-komplette problemer med eksponentiell kjøretid. Samtidig kan den forbedre hastigheten til problemer med polynomisk kjøretid, grunnet algoritmens evne til å generalisere tidligere erfaringer til tidligere usette tilstander.