Question

Quelle est la différence entre un moteur de règles et un système expert?

Example1: Disons que j'ai un programme qui détermine la date d'expiration de la licence d'un nouveau pilote. Il prend des entrées comme la date d'expiration du visa, numéro de passeport, d'anniversaire, etc. Il détermine la date d'expiration du permis de conduire à partir de cette entrée. Il peut même donner une erreur si l'entrée n'a pas assez identifications valides pour permettre un permis de nouveau pilote.

Example2: Disons que je fais une version en ligne du jeu Monopoly. Je veux la capacité de changer les règles du jeu (disons 400 $ pour passer vos déplacements ou personne ne peut acheter des propriétés jusqu'à ce qu'ils atterrissent sur la même propriété à deux reprises, etc.). J'ai un module dans le code pour gérer ces règles.

sont ces deux moteurs de règles ou sont-ils des systèmes experts? Ils semblent tous deux si semblables. Est-ce juste un synonyme?

Était-ce utile?

La solution

Le « moteur d'inférence » (ce que je crois que vous appelez le « moteur de règles ») est partie d'un système expert. L'autre partie est la « base de connaissances » (votre liste de règles, les choses qu'il sait-il vrai, ce genre de choses, il a jusqu'à présent compris, etc.)

Le moteur d'inférence est la partie qui utilise réellement vos règles et les faits connus pour en déduire les choses.

Dans vos deux exemples ci-dessus, vous parlez de systèmes experts. En quelque sorte.

Je vais vous donner un troisième exemple. GNU make est un moteur d'inférence . Si on leur donne un ensemble de règles de construction et les fichiers datés, il peut comprendre ce qui doit être reconstruit, mais il doit être dit tout ce genre de choses. Votre système de construction qui comprend les makefiles, les scripts associés, et de faire lui-même est un système expert .

J'ai trouvé une explication en ligne détaillée , mais il est peut-être un peu trop détaillé pour un néophyte.

Autres conseils

Un « système expert » signifie généralement une application particulière qui incarne un ensemble de connaissances d'expert sur un domaine de problème donné. Un système expert peut ou ne peut pas utiliser un moteur de règles dans le cadre de sa mise en œuvre.

Je pense que la différence est d'ordre sémantique et juste un peu plus.

Un « système expert » implique que le système comprend le codage pour la cueillette des cerveaux de l'expert, à savoir pour transformer une connaissance de domaine de l'expert en jeu de règles internes du programme.

Prenez cette suite, et je dirais que ce qui reste est un « moteur de règles ». Bien qu'il soit également possible de construire un système expert qui n'est pas basé sur un moteur de règle.

Ceci est probablement vieux. Mais la terminologie moteur de règles , est parfois un nom qui est donné à raisonneurs sémantiques ou moteurs de raisonnement . Ils peuvent être considérés comme une extension ou une généralisation de moteurs d'inférence .

Et comme répondu par TED , moteur d'inférence est seulement une partie d'un < strong> système expert , l'autre étant la base de connaissances . La base de connaissances est axiomes ou vérités de l'ensemble du système, et le moteur d'inférence est ce que prendra ces axiomes pour obtenir de nouvelles « vérités ».

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top