From 98738e6e74cf60ed5074ffac2b405cb3b3630b5b Mon Sep 17 00:00:00 2001
From: Max Ramsay King <maxramsayking@gmail.com>
Date: Tue, 19 Apr 2022 14:39:10 -0700
Subject: [PATCH] agent generating function

---
 MetaAugment/agent_gen.py | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)
 create mode 100644 MetaAugment/agent_gen.py

diff --git a/MetaAugment/agent_gen.py b/MetaAugment/agent_gen.py
new file mode 100644
index 00000000..15653a64
--- /dev/null
+++ b/MetaAugment/agent_gen.py
@@ -0,0 +1,25 @@
+from MetaAugment.autoaugment_learners.aa_learner import augmentation_space, aa_learner
+from MetaAugment.autoaugment_learners.evo_learner import evo_learner
+from MetaAugment.autoaugment_learners.gru_learner import gru_learner
+from MetaAugment.autoaugment_learners.randomsearch_learner import randomsearch_learner
+
+def gen_learner(name: str, **kwags):
+    """
+    Generates a learner based on input from the user. 
+
+    Parameters
+    -------------
+    name -> string
+        Of form 'gru', 'rand', 'evo' for GRU, Random search, or Evolutionary 
+        learner generation
+
+    **kwags -> key word arguments for respective learner
+    """
+    name == name.lower()
+    if name == "gru":
+        agent = gru_learner(**kwags)
+    elif name == "evo":
+        agent = evo_learner(**kwags)
+    elif name == "rand" or name == "random" or name == "ran":
+        agent = randomsearch_learner(**kwags)
+    return agent
-- 
GitLab