motore

Nella programmazione di computer, un motore è un programma che esegue una funzione fondamentale o essenziale per altri programmi. I motori vengono utilizzati nei sistemi operativi, sottosistemi o programmi applicativi per coordinare il funzionamento generale di altri programmi.

Il termine motore viene utilizzato anche per descrivere un programma speciale che utilizza algoritmi di apprendimento profondo per eseguire query sui dati. L'utilizzo più noto è forse un motore di ricerca, che utilizza un algoritmo per interrogare un indice di argomenti dato un argomento di ricerca. Un motore di ricerca è progettato in modo che il suo approccio alla ricerca nell'indice possa essere modificato per riflettere le nuove regole per la ricerca e l'assegnazione di priorità alle corrispondenze nell'indice. Nell'intelligenza artificiale, il programma che utilizza le regole della logica per derivare l'output da una base di conoscenza è chiamato motore di inferenza.

Altri tipi di motori includono:

Motori di raccomandazione: analizza i dati disponibili per fornire suggerimenti agli acquirenti e ai visitatori del sito web

Motori di correlazione: aggrega, normalizza e analizza i dati del registro eventi, utilizzando analisi predittive e logica fuzzy per avvisare l'amministratore di sistema quando si verifica un problema. 

Motore delle regole aziendali: separa il codice di esecuzione delle regole aziendali dal resto del sistema di gestione dei processi aziendali in modo che gli utenti finali possano modificare le regole aziendali senza dover chiedere aiuto a un programmatore.

Motore dei criteri: applica le regole su come accedere alle risorse di rete e ai dati dell'organizzazione.

La scelta della parola motore per descrivere questo tipo di programmazione è intesa come correlazione con i motori meccanici. Nel 1800, il Difference Engine di Charles Babbage, che è generalmente riconosciuto come il primo supercomputer, era lungo 11 piedi, largo 7 piedi e composto da 8,000 parti. Quando il motore veniva avviato con una manovella, calcolava e tabulava automaticamente equazioni matematiche.