Besoin Information Pour I.A.

Fermé
vatitz Messages postés 1 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 14 février 2008 - 14 févr. 2008 à 01:39
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 - 15 févr. 2008 à 08:18
Bonjour a toutes et a tous

Voila certain vont me prendre pour un fou, d'autre pour un malade mentale, et j'en passe des pires et des meilleurs.

Je vous explique.

J'ai toucher mon premier pc il y a 14 ans... Donc je connais "pas mal" de chose (tout est relatif, mais comparé à d'autre ca va, disons que freeware, firmware, firewall... ne sont pas du chinois.) malheureusement, je ne me suis pas encore attarder vraiment sur la programation.
Juste quelque codes pour bidouiller des script irc, idem en html, un peu de windev mais sans plus et rien de concret.

Je voulais savoir comment dois je m'y prendre, quel logiciel utiliser, pour créer une sorte d'inteligence artificiel (oui je sais y a du boulot.... au fait a toi lecteur de ce post. si tu es la pour te moquer ou pondre des coms qui ne valent pas un clou passe ton chemin)

Bref je disais, je voulais savoir que faire pour essayer de créer une I.A. du genre beton armé. lol vous connaissez le becherel ce petit bouquin qu'on avait en primaire, ben l'apprendre au logiciel pour qu'il reponde des phrase bien censé, bien conjuguées.
Et puis cerise sur le gateau, savoir si par un logiciel sonore il est possible d'apprendre la phonetique a cette IA.

Oui je sais tout ceci represente un temps enorme de travail a réaliser, mais c'est juste des renseignement que je veux. Alors a toutes celles et tout ceux qui on pri le temps de lire, merci, et ceux qui reponde encore deux fois plus merci lol.

PS: Je me doute qu'avec un autre OS que windows sa pourrai etre plus simple, j'en suis meme sur, mais bon, comme je l'ai dit je me renseigne.

9 réponses

Utilisateur anonyme
14 févr. 2008 à 01:45
Salut,
c'est completement possible, même moi j'y arriverais avec un peut de temps.
On ne te prenderas pas pour un fou ici, les gens qui te prenderons pour un fous le seront eux-même.

Donc, j'utilise Dark BASIC en programmation (payant mais très utile)
et bah avec tu doit faire des jeux a la base mais ca peut servir d'autres trucs.
J'ai dailleur fait edpln et edpln v2 avec ca.

bon, sinon, tu as des logiciels gratuit dans la partie de téléchargement du site.

bon courage a toi, a+
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
14 févr. 2008 à 08:30
c'est completement possible, même moi j'y arriverais avec un peut de temps.

Et ben... Tu doutes de rien toi !
Si tu arrives à me faire ça en Dark Basic, sérieux, je te file un mois de salaire, voire deux si ça tourne pas trop lentement...

Non mais sérieux, tu aurais parlé de C++ ou de C#, éventuellement de VB.Net, j'aurais pu y croire, mais là...

C'est effectivement possible à mon avis, mais ce n'est pas simple, loin de là, et çe ne me parait pas faisable avec un langage d'aussi bas niveau que le Dark basic.

[Voir mon post un peu plus bas]
0
Utilisateur anonyme > Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010
14 févr. 2008 à 11:44
bah tu sais, le Dark BASIC est capable d'enregistrer des sons.
il faut juste comparer les deux fichier...c'est faisable.
et il peut en faire sortir.

j'ai déjà télécharger un code source ou tu appelais une fonction avec des phonetiques et il sortait des sons...c'était bien pourris mais bon.

C'est sur que c'est tellement simple le Dark BASIC que les possibilitées sont plus petites qu'un VRAI language objet.
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43 > Utilisateur anonyme
14 févr. 2008 à 12:04
Ouai enfin, je pense pas que ce soit un bon conseille à lui apporter de lui dire de faire ça sous DB...
0
Utilisateur anonyme > Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010
14 févr. 2008 à 12:07
je ne lui conseille pas ca, je lui raconte ma vie...

moi je suis d'accord que DB c'est normalement fait pour les jeux ... et pas autre chose.

mais il y a quand même quelles que possibilitées. Tu pourras lui apprendre le dico si tu veux, ca aussi c'est simple.
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43 > Utilisateur anonyme
14 févr. 2008 à 13:37
Tout dépend...

Si par "apprendre le dico" tu veux dire stocker toutes les définitions de chaque mots, alors oui.

Si tu veux faire un IA qui comprend plus ou moins les mots de manière à faire des phrases avec et de discuter avec l'utilisateur, là on est dans un problème qui n'a jamais encore été résolu pleinement.

Et l'auteur de ce post nous parle bien d'IA...
0
leniarf Messages postés 8 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 14 février 2008
14 févr. 2008 à 08:17
Bonjour!
Que de bonne motivation, je me reconnait un peu en toi!
Cepandant, avant de se lancer en programmation, il y à tout un travail préalable.
Une analyse du sujet complete, le deroulement des differentes etapes du programme,la fragmentation du programme,
Mais encore et surtout des algorythmes! Surtout pour des programmes lourds!
En effet, si ton travail n'est pas organiser tu va vite lacher l'affaire en ne voyant pas le bout ou en te perdant dans ton travail!
Maintenant je ne pourrait pas te conseiller réellement un langage à vrai dire, tout en sachant que chacun à ses particularité, c'est a voir en fonction du résultat visuel (ou sonor) final que tu veux obtenir!
Un langage simple qui montre cepandant des limite, je te conseillerai le VB (.net de preference).
Sinon ce serait aussi trés bien en java.
Contact moi si tu veux d'autre info, notement concernant l'IA.
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
14 févr. 2008 à 08:58
Alors oui, là je suis d'accord.

J'ai longtemps travaillé sur différents projets d'IA car cela me passionne énormément, et je vais essayé de te faire part de ce que j'ai pu apprendre. Note que je ne suis pas un expert, mais seulement quelqu'un qui a quelques conseils à te donner.

Tout d'abord, il ne faut pas rêver, si tu veux produire une IA correcte et rapide (la rapidité d'une IA est un point cruciale, tu t'en doutes), il faudra te diriger vers un langage orienté objet, tel que C++, Java, C#, ou encore VB.Net. Ce dernier à l'avantage d'une plus grand simplicité sur de nombreux points, mais n'en reste pas moins puissants. C# et VB.Net sont gratuits dans les version Express de Visual Studio et utilisent tout deux le Framework.Net, ce qui te permettra d'avoir accès à de nombreuses fonctionnalités, tel que les classes héritables de Listes, de Files ou de Collections, dont tu auras inévitablement besoin si tu te lances dans l'IA.

Pour résumer ce premier point, je te conseille, pour ma part, C#. Ceci pour 4 raisons : Framework.NET, gratuité, efficacité, et syntaxe très proche du C++ (utile pour les conversions de sources que tu pourras trouver).
Il n'y a aucun problème pour toi à développer ton IA sous Windows, ce ne sera pas plus évident sous Linux.

Ensuite, comme le dit leniarf, il va falloir bosser tes algorithmes.
Un très bon bouquin pour commencer : "Maitrise des Algorithmes en C" de Kyle Loudon chez O'reilly (à rechercher sur amazon). Le niveau est plutôt bas au début du bouquin, on reprend toutes les bases de l'algo, mais on finit par étudier les algos les plus importants tel que la recherche de chemin, le voyageur de commerce, les tables de hachage, ainsi que les calculs de complexité. Ça peut paraître beaucoup de boulot pour rien, mais crois moi, après un bouquin comme ça, tu disposeras d'un bagage non négligeable pour attaquer des projets plus importants.

Ce bouquin nécessite de connaître tout de même un peu le C/C++, mais ça vient vite : de nombreux tutoriaux sur le net t'apprendront ce qu'il faut savoir en quelques jours, si tu travailles à fond. Le reste viendra avec la lecture du bouquin.

Alors voilà, mon conseil final se résume ainsi :
L'apprentissage du C/C++ (et éventuellement d'un autre langage orienté objet tel que le C#), le bouquin de Kyle Loudon ou un autre du même style, et enfin, travailler sur quelques projets un peu moins ambitieux au départ.

Ensuite, tu sauras tout ce qu'il faut savoir sur les algos, et tu pourras travailler sur ton projet correctement.
0
leniarf Messages postés 8 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 14 février 2008
14 févr. 2008 à 09:43
Tout à fait d'accord avec toi Scalweb sauf que Vatitz ne va pas trop loins dans l'apprentissage du C (et pas tout de suite pour le C++,vu que c'est une "extenssion" de ce dernier).
Dans un premier tps limite toi aux concepte fondamentaux qui sont les noms et types de données (caracteres,integer,float,...)et tous ce qui est boucle et instruction comparatives(if,for,do,while,...).
Une fois cela vu, même si cela n'est pas acquis totalement, tu va pouvoir te lancer sur l'algorythmie(~:)).
Dans l'ouvrage qui t'a etait conseillé, j'imagine qu'une intro te rappelera les base vu precedement en C qui te permetrons d'apprendre!
L'algo etait la matiere que je preferait quand j'etait encore à l'ecole! C'est pour ca que j'ai tendance à dire que je trouve ca plutôt trivial!
Une fois l'ouvrage terminer commence à reflechir à ton projet et de fair une bonne analyse descendante!
Si tu as d'autres questions n'hesite pas! Ca fait toujours plaisir de rendre service!
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
14 févr. 2008 à 09:47
Exactement.

La bouquin reprend les concepts de pointeurs de manière détaillé, donc pas besoin de les bosser avant par exemple.

vu que c'est une "extenssion" de ce dernier
Attention à ne pas parler trop vite par contre, ce n'est pas tout à fait vrai... C'est bien plus qu'une extension.
0
leniarf Messages postés 8 Date d'inscription jeudi 14 février 2008 Statut Membre Dernière intervention 14 février 2008
14 févr. 2008 à 14:02
Extrait d'un trés bon livre qui traite de l'IA. Un chapitre relatif au possible discourt entre une machine et un homme et surtout la preuve que l'implementation d'une réelle IA en tps que chatBot peut-etre tres compliquer:

"HUMAIN: a la premiere ligne du sonnet vous ecrivez 'Te comparerai-je à un jour d'été'. 'Un jour de printemps' n'irait-il pas aussi bien, sinon mieux?
MACHINE: le vers serait faux
HUMAIN: Et 'Un jour d'hiver'? Le vers serait juste.
MACHINE:Oui, mais personne n'a envie qu'on le compare à un jour d'hiver.
HUMAIN: Diriez-vous que M.Pickwick vous rappelle Noël?
MACHINE: En quelque sorte.
HUMAIN: Pourtant, Noël est un jour d'hiver, et je ne pense pas que M.Pickwick récuserait la comparaison.
MACHINE: Je trouve que vous n'êtes pas sérieux. Par 'Jour d'hivers', on entend habituellement un jour d'hiver ordinaire, pas un jour spécial comme Noël."

Turring
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
14 févr. 2008 à 15:00
Il faut savoir qu'il existe déjà pas mal de chatbot, mais pas un seul n'est vraiment intelligent.

On se rend vite compte de qui on a à faire ;-)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
14 févr. 2008 à 15:18
Salut,

L'implémentation d'une IA est vraiment une tâche dure pour peu qu'on la rende "intelligente". Effectivement, les langages de haut niveau ne sont pas conseillés pour écrire une IA pour des raisons de rapidité, donc à proscrire basic, etc. Néanmoins, ceci est vrai lorsque tu crées une IA de très haut niveau, dans un grand projet, ce que je redoute très fort. Un langage également conçu pour l'IA, est le LISP. De plus, ce langage est assez rapide, donc intéressant, tu ne perdras pas de temps à recrééer les listes, piles, etc.

Avant de commencer à te plonger dedans, déjà faudrait-il que tu connaisses les algorithmes incontournables en IA comme (Min-Max, Alpha-beta, ...). Tu peux par exemple te faire un petit projet pour assimiler ces algorithmes comme la programmation d'un jeu de plateau avec IA (othello, dames, échecs, ...). Ce n'est pas très long à moins que tu souhaites vraiment apporter des heuristiques pour y apporter de "l'intelligence". Néanmoins, il s'agit d'un très bon début.

Cordialement
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
14 févr. 2008 à 15:23
On est plus ou moins dans la même direction que ce qui a été dit plus haut...

Donc bon courage.
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835 > Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010
14 févr. 2008 à 15:29
En effet, plus ou moins
Mais, à aucun moment vous n'avez évoqué les algorithmes Min-Max et Alpha-Bêta, qui me paraissent incontournables pour toute personne voulant se lancer dans l'IA.
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43 > fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022
14 févr. 2008 à 15:57
Il y a énormément d'algo de références, qu'il peut être, à mon sens, très important de connaitre.

A mon avis, aucun n'est plus particulièrement important qu'un autre, c'est la connaissance générale des structures tels que les graphes, les piles, les listes, ... qui seront nécessaires pour un tel travail.

D'où le livre de Kyle Loudon.
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
14 févr. 2008 à 16:02
Oui les graphes, les forêts, les piles, etc, sont très importants. Mais je pense qu'il est intéressant de commencer par l'élaboration d'une IA pour des jeux de plateaux tels les échecs, ou othello, et pour ça l'algorithme Min-Max. D'où mon premier post. D'ailleurs ce n'est pas pour rien que dans les écoles ou universités qui apprennent l'IA, ils commencent les TPs par cette approche.
Mais bon, bien sûr, il est possible de commencer par le plus dur. Tout est possible.
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
14 févr. 2008 à 16:21
il est possible de commencer par le plus dur. Tout est possible.

C'est de l'agressivité ça ? Eh ben...

Et je ne vois pas où j'ai pu parler de commencer par le plus dur, en plus de ça... Bref !
Je ne posterais plus ici, j'ai dis ce que j'avais à dire.

L'auteur de ce topic peut me contacter pour plus de détails, pas de soucis.
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
14 févr. 2008 à 16:23
De l'agressivité ? Euh non pas du tout, c'était de l'ironie lol.
Désolé que tu l'es mal pris.

Cordialement
0
Tout d'abors merci a tous d'avoir pri le temps de lire et surtout de m'avoir repondu.

Merci pour vos conseil!

C'est vrai que sa represente un travail monstre de créer une espece d'IA (comme dans le cobaye.. vous voyez le genre de programme ou on voi just un visage modeliser en 3d et qui repond.... En fait un Furby (Vous vous souenez ses peluche robotisé a qui on pouvait apprendre a dire n'importe quoi, meme ll'apprendre a roter si je ne m'abuse) Donc voila, l'idée est donc d'ouvrir le logiciel, et de discuter avec une tete 3d qui vous repond en construisans des phrases (sujet verbe conjugué, complement...) apres savoir si ajouter un caractere special a ce "bot" est possible (je pense mais c'est pareil, suffit de trouver les bonnes lignes de codes lol..)

Enfin voila, j'ai plein d'idées et de question qui me trottent dans la tete, mais vais y aller molo, sinon le post sera sans queue ni tete...

Merci encore a tous de participer a ce post, en esperant que ca aide d'autre personnes que moi!
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
15 févr. 2008 à 08:18
suffit de trouver les bonnes lignes de codes

C'est loin d'être aussi simple que ça, crois moi ! Tu te lances dans quelque chose de très complexe.

C'est très bien d'être motivé comme tu l'es, ça ne peut qu'être bénéfique. Mais ne met pas la charrue avant les beaufs ^^

Déjà, rien que la tête en 3d avec la bouche qui s'anime en fonction du mot prononcé, c'est pas simple du tout. Faisable, évidemment, mais pas simple. Prend ton temps, commence par des choses très simple.

Un dernier conseil : travail sur papier, schématise tes algos et la structure de tes programmes bien avant de commencer à coder.

Regarde éventuellement du côté des systèmes neuronales, c'est beaucoup de mathématiques, mais c'est extrêmement intéressant.
0