Bonjour,
Quelqu un sait comment faire des IA plus évolués que basique ? Avec du Machine Learning par exemple ?
Tu devrais regarder du côté de ml-agents sur Unity.
En gros c'est un framework de reinforcement learning.
https://unity.com/fr/prododucts/machine-learning-agents
Le 18 février 2021 à 17:15:03 Alexandress a écrit :
Tu devrais regarder du côté de ml-agents sur Unity.
En gros c'est un framework de reinforcement learning.https://unity.com/fr/prododucts/machine-learning-agents
Ouais j'avais vu ca. Ca a l'air chaud.
Tout ce genre de chose, c'est soit deja fait et packager pour un cas tres particulier que tu peux directement reutiliser. Soit c'est tres dur sans l'education en ML/AI qui va avec.
La solution dépend beaucoup du problème à résoudre ...
Le 19 février 2021 à 11:33:53 IndepGameDev a écrit :
La solution dépend beaucoup du problème à résoudre ...
c'est à dire ?
Le 19 février 2021 à 14:14:09 PillsDispenser a écrit :
Le 19 février 2021 à 11:33:53 IndepGameDev a écrit :
La solution dépend beaucoup du problème à résoudre ...c'est à dire ?
La question est trop générale, difficile de savoir ce qu'il te faut puisque tu n'enonce pas quel type d'IA tu recherche, son environnement et les performances recherchées.
Aussi une IA basique peut aussi dependre du "machine learning", a vrai dire les IA complexes ne fonctionne pas très bien avec cette technique car l'environnement sensitif de l'IA en question serait trop complexe pour un modèle neural qui démarre en étant completement con comme une huitre.
Tu peux utiliser un modèle plus classique.
En général la complexité d'une IA est proportionel au nombre de noeud de décisions et à sa structure.
Tu peux par exemple séparer ces gros noeuds en modules de capacités :
Un marchand aura par exemple quelques noeuds majeurs tel que se déplacer de manière autonome dans son environnement et un autre pour définir ses décisions commerciales.
Certains modules sont ... disons "macro" et d'autres "micro", par exemple le marchand dirige peut être une entreprise qu'il voudra faire evoluer dans la duré et prendra des décisions qui influenceront peu avec des décisions "Micro" comme evaluer une opportunité commerciale.
Quasi sur que c'est le modèle utilisé pour "alien isolation". Ca n'a absolument rien de révolutionnaire, ca impressionne pas, t'auras pas l'air d'un hackeur à capuche en déployant un tel modèle mais avec beaucoup de boulot sur l'IA tu peux en faire une satané fouine, et rien ne t'empêche d'y mettre tout une panoplie de variables qui enregistres les expériences pour ensuite les pondérer dans des futures décisions, et ainsi faire un système de récompense rudimentaire mais sur-mesure.
L'idéale serait une IA Zombie mais sinon peut importe sa serait juste pour faire de l'expérimentation.
Pas besoin d’une IA pour des zombies le but c’est juste de se jeter sur le joueur
Le 20 février 2021 à 19:16:18 boucif a écrit :
Pas besoin d’une IA pour des zombies le but c’est juste de se jeter sur le joueur
Ouais mais je dois faire une IA avec du ML.
idéalement le Machine Learning c'est en Python.
Avec Unity une i.a c'est plus avec l'utilisation d'un navmesh, programmation en C# ou éventuellement en visual scripting par exemple avec Bolt. Donc rien à voir avec de la programmation neuronal reposant sur l'apprentissage par échecs répétés d'une i.a...
Le 20 février 2021 à 23:34:29 zebtorax a écrit :
idéalement le Machine Learning c'est en Python.
Avec Unity une i.a c'est plus avec l'utilisation d'un navmesh, programmation en C# ou éventuellement en visual scripting par exemple avec Bolt. Donc rien à voir avec de la programmation neuronal reposant sur l'apprentissage par échecs répétés d'une i.a...
Ben https://unity.com/fr/prododucts/machine-learning-agents ca fait quoi ?
Ca a l'air d'être une bonne série : https://www.youtube.com/watch?v=zPFU30tbyKs
Oui ca à l'air d'être bien ces tutos.
Sinon histoire de clarifier les choses, python n'a rien à voir avec le machine learning en soit, à part que ce langage est populaire pour une génération de programmeur et donc la disponibilité des librairies spécialisées est meilleur.
Et comme sa question concerne Unity on parle ici de c# ou de c++ (à l'aide de dll).
Le 21 février 2021 à 00:10:59 PillsDispenser a écrit :
Le 20 février 2021 à 23:34:29 zebtorax a écrit :
idéalement le Machine Learning c'est en Python.
Avec Unity une i.a c'est plus avec l'utilisation d'un navmesh, programmation en C# ou éventuellement en visual scripting par exemple avec Bolt. Donc rien à voir avec de la programmation neuronal reposant sur l'apprentissage par échecs répétés d'une i.a...Ben https://unity.com/fr/prododucts/machine-learning-agents ca fait quoi ?
Ca a l'air d'être une bonne série : https://www.youtube.com/watch?v=zPFU30tbyKs
Oui, tu peux le faire piske il y a le lien plus haut.
Mais ce que je voulais dire, c'est que Unity c'est pas idéalement fait pour ça.
Je pense que c'est un peu dans la ligne éditoriale commerciale d'Unity, de vouloir s'étendre un peu dans tous les domaines, mais jamais sans de grands aprofondissements.
Si tu t’intéresse vraiment au Machine Learning, alors il vaut mieux le faire en Python.
Le 21 février 2021 à 10:11:41 zebtorax a écrit :
Le 21 février 2021 à 00:10:59 PillsDispenser a écrit :
Le 20 février 2021 à 23:34:29 zebtorax a écrit :
idéalement le Machine Learning c'est en Python.
Avec Unity une i.a c'est plus avec l'utilisation d'un navmesh, programmation en C# ou éventuellement en visual scripting par exemple avec Bolt. Donc rien à voir avec de la programmation neuronal reposant sur l'apprentissage par échecs répétés d'une i.a...Ben https://unity.com/fr/prododucts/machine-learning-agents ca fait quoi ?
Ca a l'air d'être une bonne série : https://www.youtube.com/watch?v=zPFU30tbyKsOui, tu peux le faire piske il y a le lien plus haut.
Mais ce que je voulais dire, c'est que Unity c'est pas idéalement fait pour ça.
Je pense que c'est un peu dans la ligne éditoriale commerciale d'Unity, de vouloir s'étendre un peu dans tous les domaines, mais jamais sans de grands aprofondissements.
Si tu t’intéresse vraiment au Machine Learning, alors il vaut mieux le faire en Python.
Pourquoi tu dis ça faire du machine learning peut être utile dans un jeu.
Pourquoi unity pourrait pas?
Le 21 février 2021 à 10:51:44 _Pytchoun a écrit :
Le 21 février 2021 à 10:11:41 zebtorax a écrit :
Le 21 février 2021 à 00:10:59 PillsDispenser a écrit :
Le 20 février 2021 à 23:34:29 zebtorax a écrit :
idéalement le Machine Learning c'est en Python.
Avec Unity une i.a c'est plus avec l'utilisation d'un navmesh, programmation en C# ou éventuellement en visual scripting par exemple avec Bolt. Donc rien à voir avec de la programmation neuronal reposant sur l'apprentissage par échecs répétés d'une i.a...Ben https://unity.com/fr/prododucts/machine-learning-agents ca fait quoi ?
Ca a l'air d'être une bonne série : https://www.youtube.com/watch?v=zPFU30tbyKsOui, tu peux le faire piske il y a le lien plus haut.
Mais ce que je voulais dire, c'est que Unity c'est pas idéalement fait pour ça.
Je pense que c'est un peu dans la ligne éditoriale commerciale d'Unity, de vouloir s'étendre un peu dans tous les domaines, mais jamais sans de grands aprofondissements.
Si tu t’intéresse vraiment au Machine Learning, alors il vaut mieux le faire en Python.Pourquoi tu dis ça faire du machine learning peut être utile dans un jeu.
Pourquoi unity pourrait pas?
J'ai jamais dis que c'est pas possible, mais que c'est pas l'idéal. (Pour quelqu'un de très assidu à Unity pourquoi pas, mais je pense pas que ce soit le cas de l'auteur du topic..)
Comme le dis boucif, si c'est juste pour faire une i.a de zombie, un navmesh avec du C# ou bolt peut très bien faire l'affaire. Même pour une i.a un peu plus poussée comme par exemple pour un jeu d'échec.
Maintenant si c'est vraiment pour faire du Machine Learning, Python est plus adapté (entre autre pour les propriétés du langage, plus intermédiaire software/hardware, etc.), plus anciennement utilisé pour du ML avec plus de ressources et grande commu, etc.
J'en veux pour preuve le bien connu site https://www.udemy.com/, par exemple.
Je donne pas une page de formation en particulier, faire des recherches dans le moteur de recherches, vous constaterez par vous même que des formation Machine Learning en Python il y en a de très nombreuses, mais pas pour Unity, ou alors effectivement pour des I.A en C# ou bolt ou autre visual scripting...
Le 21 février 2021 à 14:33:26 Geoffroypir a écrit :
Oui?
Concernant ce que j'imagine pouvoir faire, je ne sais pas si c'est possible en machine learning.
Une IA Zombie :
Elle devrait détecter si un humain est à proximité. Elle se dirige vers l'humain par le bruit qu'il produit et son odeur.
(En codage basique on parlerait de rayon de détection et de bruit spatiaux ?)
Quand le zombie est à proximité, il frappe.
Les zombies se déplaceraient en horde.
Une IA humaine :
Elle devrait détecter si le joueur / ennemi est à proximité. Elle l'attaquerait a l'arme à feu ou au corps a corps en détectant les obstacles entre lui et le joueur.
Que pensez vous ?