public LinkedList<BMPAgent> getBMPAgents(){
		
		LinkedList<BMPAgent> _agents = new LinkedList<BMPAgent>();
		
		XmlIO _xmlio = new XmlIO();
		_xmlio.readFile(_filename+".xml");
		Document _doc = _xmlio.getDocument();
		
		NodeList _xmlNodes = _doc.getElementsByTagName("agent");
		for(int i=0;i<_xmlNodes.getLength();i++){
			Node _xmlNode = _xmlNodes.item(i);
			NamedNodeMap _xmlAttributes = _xmlNode.getAttributes();
			String _name = _xmlAttributes.getNamedItem("name").getNodeValue();
			String _type = _xmlAttributes.getNamedItem("type").getNodeValue();
			int _ticksPerLength = Integer.parseInt(_xmlAttributes.getNamedItem("ticksPerLength").getNodeValue());
			int _delay = Integer.parseInt(_xmlAttributes.getNamedItem("delay").getNodeValue());
			long _seed = 0;
			if(_xmlAttributes.getNamedItem("seed") != null){
				_seed = Long.parseLong(_xmlAttributes.getNamedItem("seed").getNodeValue());
			}
			if(_type.equals("randommouse")){
				de.unihannover.sim.labysim.agents.bmp.randommouse.RandomMouseBMPAgent _agent = new de.unihannover.sim.labysim.agents.bmp.randommouse.RandomMouseBMPAgent(_name, this._bmpLabyrinth.getStartNode(), _ticksPerLength, this._bmpLabyrinth, this._engine, _delay, _seed);
				_agents.add(_agent);
			}
			else if(_type.equals("shannonmouse")){
				de.unihannover.sim.labysim.agents.bmp.shannonmouse.ShannonMouseBMPAgent _agent = new de.unihannover.sim.labysim.agents.bmp.shannonmouse.ShannonMouseBMPAgent(_name, this._bmpLabyrinth.getStartNode(), _ticksPerLength, this._bmpLabyrinth, this._engine, _delay);
				_agents.add(_agent);
			}
			else if(_type.equals("righthand")){
				de.unihannover.sim.labysim.agents.bmp.righthand.RightHandBMPAgent _agent = new RightHandBMPAgent(_name, this._bmpLabyrinth.getStartNode(), _ticksPerLength, this._bmpLabyrinth, this._engine, _delay);
				_agents.add(_agent);
			}
			else if(_type.equals("pledge")){
				de.unihannover.sim.labysim.agents.bmp.pledge.PledgeBMPAgent _agent = new PledgeBMPAgent(_name, this._bmpLabyrinth.getStartNode(), _ticksPerLength, this._bmpLabyrinth, this._engine, _delay);
				_agents.add(_agent);
			}
			
		}		
		
		return _agents;
	}