[Ada Project] Anothers Implementation Of Artificial Intelligence

Anothers Implementation Of Artificial Intelligence [Ada Project] - Ada - Programmation

Marsh Posté le 28-07-2011 à 02:50:52    

Bonsoir,
 
 
J'essaye de faire le point avec un graphe de dépendance destiné à une implémentation avec Ada.
 
 
http://hfr-rehost.net/thumb/self/pic/c4f4993a3b57078d9eae6e36ac5397f7a382e152.jpeg
 
Je veux bien un coup de main, s'il vous plais ?
 
Ce programme apprend à manipuler des objets grâce à un degré d'interaction avec son environnement.
Il exploite un réseau de neurones pour décider de l'exécution d'une action, aléatoire ou piloté, sur des objets.
 
Voici l'état du code de "Commander"
 

Code :
  1. with Ada.Numerics.Discrete_Random;
  2.  
  3. with CNNC.Types;
  4. with CNNC.Engine;
  5. with CNNC.Natural_Network;
  6. with CNNC.Server;
  7. package body CNNC.Commander is
  8.  
  9.  
  10.   package User_Random is new Ada.Numerics.Discrete_Random(User_Id_Type);
  11.   User_Gen : User_Random.Generator;
  12.   package Action_Random is new Ada.Numerics.Discrete_Random(Action_Id_Type);
  13.   Action_Gen : User_Random.Generator;
  14.   package Object_Random is new Ada.Numerics.Discrete_Random(Object_Id_Type);
  15.   Object_Gen : User_Random.Generator;
  16.        
  17.   task body CNNCommander is
  18.      
  19.      
  20.      
  21.      Success     : Boolean := False;
  22.      User_Next   : User_Id_Type   := Random(User_Gen);
  23.      Action_Next : Action_Id_Type := Random(Action_Gen);
  24.      Object_Next : Object_Id_Type := Random(Object_Gen);
  25.   begin
  26.      
  27.      loop
  28.                        
  29.         Success := CNNC.Natural_Network.Respond(User_Next,
  30.                            Action_Next,
  31.                            Object_Next);
  32.  
  33.         if Success then
  34.            
  35.            Success := CNNC.Engine.Compute(User_Next,
  36.                                           Action_Next,
  37.                                           Object_Next);    
  38.            CNNC.Natural_Network.Train(User_Next,
  39.                                       Action_Next,
  40.                                       Object_Next,
  41.                                       Success);
  42.         end if;                        
  43.        
  44.         select
  45.            CNNC.Engine.Basic_Io.Send(User_Next,
  46.                                                Action_Next,
  47.                                                Object_Next);
  48.         or
  49.            delay 120.0;
  50.            
  51.            User_Next   := Random(User_Gen);
  52.            Action_Next := Random(Action_Gen);
  53.            Object_Next := Random(Object_Gen);
  54.         end select;
  55.      end loop;      
  56.   end CNNCommander;
  57.  
  58. end CNNC.Commander;


 
Merci d'avoir lu, merci pour votre aide.  :jap:


Message édité par Profil supprimé le 02-08-2011 à 22:31:51
Reply

Marsh Posté le 28-07-2011 à 02:50:52   

Reply

Marsh Posté le 28-07-2011 à 04:42:45    

Mise à jour
 
http://dl.toofiles.com/17sji8/images_thumbnails_450/dep_cnnc_2.jpg

Reply

Marsh Posté le 02-08-2011 à 17:33:12    

Bonjour,
 
Je suis embêté avec la conception du programme sur un point particulier.
Je veux déclarer une super classe "object_Type", ça ça va.
Pour chaque objets dérivés de la classe "Object_Type" j'ai un ensemble d'opérations particulières en plus des communes.
Ce que je veux faire, c'est déclarer un type qui permettrait d'appeler l'opération "Op_Name" via un nom "Name" pour un objet "Object"
Est-ce possible s'il vous plaît ?
Comment ?
Merci.

Reply

Marsh Posté le 04-08-2011 à 18:01:44    

ce que tu recherches, ca ressemble à un comportement que tu vas retrouver dans tout interpréteur de script, tu pourrais peut-être fouiller un peu dans cette direction


---------------
last.fm
Reply

Marsh Posté le 10-08-2011 à 16:21:53    

Merci pour cette réponse theshockwave !  :jap:  

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed