amineharastani
Messages postés1Date d'inscriptionjeudi 2 février 2012StatutMembreDernière intervention 3 février 2012
-
3 févr. 2012 à 22:11
chawanted
Messages postés1Date d'inscriptionlundi 9 juillet 2007StatutMembreDernière intervention10 février 2012
-
10 févr. 2012 à 18:13
Bonjour à tous ,
Je cherche un codeur qui voudrait bien m'écrire un programme de génération de phrases en français assez basique .
Générateur automatique de phrases.
Le but de ce projet est de créer un programme qui génère automatiquement des phrases grammaticalement et (dans la mesure du possible) orthographiquement correctes, mais qui n'ont pas forcément de sens. Cette génération se rapproche du jeu du "Cadavre exquis" inventé par l'école surréaliste en 1925.
Il est donc nécessaire de disposer d'un grand nombre de mots pour composer les phrases, et de trouver des structures grammaticales pour savoir quels types de mots choisir (articles, noms, adjectifs, verbes, adverbes) et comment les organiser.
En ce qui concerne les mots, vous disposerez d'un dictionnaire conséquent (à peu près 300 000 entrées) comportant les formes dites "fléchies" de tous (ou presque) les mots de la langue française. Cela signifie que vous trouverez dans le dictionnaire, pour chaque verbe par exemple, les conjugaisons pour (presque) tous les temps et à toutes les personnes; pour les noms et les adjectifs, les accords en nombre et en genre, etc.
On remarquera que ces lignes sont composées de 3 champs indiquant respectivement la forme fléchie du mot, sa forme de base ainsi que, dans le troisième champ, la catégorie du mot (Verbe, Nom, Adjectif, Adverbe) ainsi que la conjugaison ou l'accord permettant de passer de la forme de base à la forme fléchie.
Il existe également dans le dictionnaire des déterminants et des pronoms, mais ils ne seront pas utilisés dans ce projet.
Le traitement des mots
Afin de pouvoir créer des phrases, il faut ranger les mots par catégorie. Vous créerez donc un arbre n-aire pour chaque catégorie (verbe, nom, adjectif, adverbe) dans lequel vous rangerez les formes de base de la manière suivante : chaque arbre n-aire est construit tel que chaque sommet contient une lettre (accentuée ou non…). Les informations concernant un mot du dictionnaire seront accessibles dans la feuille de l’arbre correspondant au chemin constitué par la suite de ses lettres. Par exemple, la forme de base distribuer sera stockée dans le sommet contenant la lettre ‘r’ à l’extrémité du chemin formé par la suite de sommets 'd','i','s','t','r','i','b','u','e'. La racine de l’arbre représentera alors le mot vide (caractère nul).
Chaque sommet de l’arbre contiendra donc une lettre ainsi que l’adresse d'un objet contenant les informations suivantes : Le mot lui-même; puis :
Pour les noms : le genre (Féminin/Masculin), et les formes fléchies pour le singulier et le pluriel.
Illustration
corbeau
masc
corbeau
corbeaux
Pour les adjectifs : les formes fléchies masculin singulier, masculin pluriel, féminin singulier, féminin pluriel.
Illustration
bénin
bénin
bénins
bénigne
bénignes
Pour les verbes : les formes fléchies pour le présent de l'indicatif à toutes les personnes. En option, vous pouvez ajouter l'imparfait de l'indicatif et le futur simple de l'indicatif pour toutes les personnes.
Illustration
aller
vais
vas
va
allons
allez
vont
allais
allais
allait
allions
alliez
allaient
irai
iras
ira
irons
irez
iront
Pour les adverbes : la forme fléchie étant la forme de base, il n'y a pas d'information supplémentaire à stocker.
Les structures de phrases
Vous utiliserez de petits automates pour modéliser des structures de phrase plus ou moins complexes. Vous devrez au minimum modéliser les structures de phrases suivantes, et créer une structure de votre cru (si vous êtes ambitieux, vous pouvez générer plusieurs phrases).
Structure 1 : nom – adjectif – verbe – nom
(on ne prêtera aucune attention au fait que le verbe soit transitif ou non)
Exemple de phrase générée :
socle définitif arracher voilier
Structure 2 : nom – qui – verbe – verbe – nom - adjectif
Exemple de phrase générée :
pierre qui oublier éveiller poignée belliqueux
Les phrases ainsi générées n'utilisent que les formes de base des mots stockés dans les arbres n-aires.