Skip to content
backtracking
EntityQ798554· pop 29· linked from 154 articles

backtracking

Sign in to save

Also known as Backtracking Algorithm, Backtracking Algorithms

tecnica per la risoluzione di problemi che richiedono il soddisfacimento di vincoli

Wikidata facts

Image
Depthfirst.png
Show 3 more facts
Commons category
Backtracking
ACM Classification Code (2012)
10011255
Sources (2)

via Wikidata · CC0

Article · Italiano

Il backtracking (in italiano, si può definire "monitoraggio a ritroso") è una tecnica per trovare soluzioni a problemi in cui devono essere soddisfatti dei vincoli. Questa tecnica enumera tutte le possibili soluzioni e scarta quelle che non soddisfano i vincoli. Una tecnica classica consiste nell'esplorazione di strutture ad albero e tenere traccia di tutti i nodi e i rami visitati in precedenza, in modo da poter tornare indietro al più vicino nodo che conteneva un cammino ancora inesplorato nel caso che la ricerca nel ramo attuale non abbia successo. I nodi a profondità uguale rappresentano i possibili valori di una variabile. Una applicazione del backtracking è nei programmi per giocare a scacchi, che generano tutte le mosse possibili per una profondità di N mosse a partire da quella attuale e poi esaminano con il backtracking le varie alternative, selezionando alla fine quella migliore. Il backtracking ha una complessità esponenziale, quindi è poco efficiente nell'affrontare problemi che non siano NP-completi. In generale, comunque, l'algoritmo integra euristiche che permettono di diminuirne la complessità. Questa tecnica è alla base del linguaggio di programmazione Prolog.

Abstract from DBpedia / Wikipedia · CC BY-SA

Gallery (2)

Connections

Categories