Skip to content

Commit

Permalink
#19 fix AgentFactory and factory_floor_complex.yaml which I guessed was
Browse files Browse the repository at this point in the history
the correct definition file
  • Loading branch information
wouter committed Jun 4, 2020
1 parent 51d77a3 commit 7d089f5
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 15 deletions.
18 changes: 9 additions & 9 deletions examples/AgentFactory.py
Original file line number Diff line number Diff line change
@@ -1,31 +1,31 @@
from aiagents.AgentFactory import createAgent
from mock import Mock
from unittest.mock import Mock
from aienvs.FactoryFloor.FactoryFloor import FactoryFloor
from aienvs.utils import getParameters
import sys
import os



def main():
"""
Demo how to construct agents
Demo how to construct complex agents
"""
configName = "configs/agentconfig.yaml"
configName = "configs/factory_floor_complex.yaml"
dirname = os.path.dirname(__file__)
filename = os.path.join(dirname, configName)

parameters=getParameters(filename)
parameters = getParameters(filename)

env = FactoryFloor(parameters['environment'])
obs = env.reset()

complexAgent = createAgent(env, parameters['agents'])
complexAgent = createAgent(env.action_space, env.observation_space, parameters['agents'])
print(complexAgent)
print(complexAgent._agentSubcomponents)
print(complexAgent._agentSubcomponents[2]._agentSubcomponents)
sub = complexAgent._agentSubcomponents[0]
subsub = sub._agentSubcomponents
print(subsub)


if __name__ == "__main__":
main()


41 changes: 35 additions & 6 deletions examples/configs/factory_floor_complex.yaml
Original file line number Diff line number Diff line change
@@ -1,10 +1,25 @@
aliases:
- &BasicComplexAgent aiagents.multi.BasicComplexAgent.BasicComplexAgent
- &MctsAgent aiagents.single.mcts.MctsAgent.MctsAgent
- &RandomAgent aiagents.single.RandomAgent.RandomAgent
- &FactoryFloorAgent aiagents.single.FactoryFloorAgent.FactoryFloorAgent

config:
- &RobotAgent aiagents.single.mcts.MctsAgent.MctsAgent
#- &RobotAgent aiagents.single.FactoryFloorAgent.FactoryFloorAgent
# - &RobotAgent aiagents.single.RandomAgent.RandomAgent
- &timeLimit 6
- &explorationConstant 10
- &samplingLimit 20


parameters:
# Common hyperparameters
seed: null

environment:
steps: 4
robots: [[0,0],[3,3]] # initial robot positions
robots: [{'id':robot1,'pos':[0,0]},{'id':robot2,'pos':[3,3]}] # initial robot positions
tasks: [[1,0],[2,3]] # initial task positions
P_action_succeed: {'LEFT':1.0, 'RIGHT':1.0, 'ACT':1.0, 'UP':1.0, 'DOWN':1.0}
P_task_appears: 0.0 # P(new task appears in step)
Expand All @@ -15,8 +30,22 @@ parameters:
'....',
'..9.']
agents:
iterationLimit: 500
#timeLimit: 30
treeParameters:
explorationConstant: 10000
samplingLimit: 20
class: *BasicComplexAgent
parameters: {}
subAgentList:
- class: *BasicComplexAgent
id: "robots"
parameters:
treeAgent:
class: *RandomAgent
id: "robots"
parameters: {}
rolloutAgent:
class: *RandomAgent
id: "robots"
parameters: {}
timeLimit: *timeLimit
treeParameters:
explorationConstant: *explorationConstant
samplingLimit: *samplingLimit

0 comments on commit 7d089f5

Please sign in to comment.