def __init__(self, configuration):
     """Initialise the builder"""
     super(EvolutionBased, self).__init__(configuration)
     #
     # Find the rooms
     self.rooms = {}
     for room_configuration in configuration.find("rooms").findall("room"):
         room = Room(
             common.getStrAttr(room_configuration, "name"),
             common.getStrAttr(room_configuration, "type"),
             [line.strip() for line in room_configuration.text.strip().splitlines()],
         )
         self.rooms[room.name] = room
     #
     # Get properties
     self.initial_pool_size = common.getInt(configuration, "initialPoolSize")
     self.tournament_size = common.getInt(configuration, "tournamentSize")
     self.max_iterations = common.getInt(configuration, "maxIterations")
     #
     # Tuning parameters
     RoomController.target_num_rooms = common.getFloat(configuration, "targetRooms")
     RoomController.missed_corridor_penalty = common.getFloat(configuration, "missedCorridorPenalty")
     RoomController.corridor_to_room_penalty = common.getFloat(configuration, "corridorToRoomPenalty")
     RoomController.exit_longest_path_multiplier = common.getFloat(configuration, "exitLongestPath")
     RoomController.missed_door_penalty = common.getFloat(configuration, "missedDoorPenalty")
     #
     RoomController.target_room_types["event"] = common.getFloat(configuration, "numEventRooms")
     RoomController.target_room_types["treasure"] = common.getFloat(configuration, "numTreasureRooms")
     RoomController.target_room_types["corridor"] = common.getFloat(configuration, "numCorridors")
Beispiel #2
0
 def __init__(self, configuration):
     """Initialise the builder"""
     super(EvolutionBased, self).__init__(configuration)
     #
     # Find the rooms
     self.rooms = {}
     for room_configuration in configuration.find('rooms').findall('room'):
         room = Room(
             common.getStrAttr(room_configuration, 'name'),
             common.getStrAttr(room_configuration, 'type'),
             [line.strip() for line in room_configuration.text.strip().splitlines()]
         )
         self.rooms[room.name] = room
     #
     # Get properties
     self.initial_pool_size = common.getInt(configuration, 'initialPoolSize')
     self.tournament_size = common.getInt(configuration, 'tournamentSize')
     self.max_iterations = common.getInt(configuration, 'maxIterations')
     #
     # Tuning parameters
     RoomController.target_num_rooms = common.getFloat(configuration, 'targetRooms')
     RoomController.missed_corridor_penalty = common.getFloat(configuration, 'missedCorridorPenalty')
     RoomController.corridor_to_room_penalty = common.getFloat(configuration, 'corridorToRoomPenalty')
     RoomController.exit_longest_path_multiplier = common.getFloat(configuration, 'exitLongestPath')
     RoomController.missed_door_penalty = common.getFloat(configuration, 'missedDoorPenalty')
     #
     RoomController.target_room_types['event'] = common.getFloat(configuration, 'numEventRooms')
     RoomController.target_room_types['treasure'] = common.getFloat(configuration, 'numTreasureRooms')
     RoomController.target_room_types['corridor'] = common.getFloat(configuration, 'numCorridors')
 def __init__(self, configuration):
     """Initialise the builder"""
     super(BomberEvolution, self).__init__(configuration)
     #
     # Get properties
     self.initial_pool_size = common.getInt(configuration, "initialPoolSize")
     self.tournament_size = common.getInt(configuration, "tournamentSize")
     self.max_iterations = common.getInt(configuration, "maxIterations")
     self.width = common.getInt(configuration, "width")
     self.height = common.getInt(configuration, "height")
     #
     self.percent_space = common.getFloat(configuration, "targetPercentSpace")
     self.percent_space_multiplier = common.getFloat(configuration, "percentSpaceMultiplier")
     self.target_blocks = common.getFloat(configuration, "targetBlocks")
     self.target_blocks_multiplier = common.getFloat(configuration, "targetBlocksMultiplier")
 def __init__(self, configuration):
     """Initialise the builder"""
     super(CaveBuilder, self).__init__(configuration)
     #
     self.initial_open = common.getFloat(configuration, 'initialOpenFraction')
     self.tag_name = common.getString(configuration, 'attributeName')
     self.rock = common.getString(configuration, 'rockValue')
     self.tunnel = common.getString(configuration, 'tunnelValue')
 def __init__(self, configuration):
     """Initialise the builder"""
     super(RockSubstrate, self).__init__(configuration)
     #
     self.mean_height = common.getInt(configuration, 'meanHeight')
     self.push_energy = common.getInt(configuration, 'pushEnergy')
     self.drop_off = common.getInt(configuration, 'dropOff')
     self.number_pushes = common.getInt(configuration, 'numberPushes')
     self.push_pull_probability = common.getFloat(configuration, 'pushPullProbability')
Beispiel #6
0
 def __init__(self, configuration):
     """Initialise the builder"""
     super(CaveBuilder, self).__init__(configuration)
     #
     self.initial_open = common.getFloat(configuration,
                                         'initialOpenFraction')
     self.tag_name = common.getString(configuration, 'attributeName')
     self.rock = common.getString(configuration, 'rockValue')
     self.tunnel = common.getString(configuration, 'tunnelValue')
Beispiel #7
0
 def __init__(self, configuration):
     """Initialise the builder"""
     super(RockSubstrate, self).__init__(configuration)
     #
     self.mean_height = common.getInt(configuration, 'meanHeight')
     self.push_energy = common.getInt(configuration, 'pushEnergy')
     self.drop_off = common.getInt(configuration, 'dropOff')
     self.number_pushes = common.getInt(configuration, 'numberPushes')
     self.push_pull_probability = common.getFloat(configuration,
                                                  'pushPullProbability')