private void initialize() {
		actives = new HashSet<ChessPiece>();
		blackActives = new HashSet<ChessPiece>();
		whiteActives = new HashSet<ChessPiece>();
		initializeChessPieceTypeMap();
		initializeChessPieceAllegianceTypeMap();
		for (ChessPiece chessPiece : allPieces) {
			if (chessPiece.isAlive()) {
				actives.add(chessPiece);
				if (chessPiece.isBlack()) {
					blackActives.add(chessPiece);
				} else {
					whiteActives.add(chessPiece);
				}
				Set<ChessPiece> typeSet =  chessPieceTypeMap.get(chessPiece.getChessPieceType());
				typeSet.add(chessPiece);
				chessPieceTypeMap.put(chessPiece.getChessPieceType(), typeSet);
				Set<ChessPiece> allegianceSet =  chessPieceAllegianceTypeMap.get(chessPiece.getChessPieceAllegianceType());
				allegianceSet.add(chessPiece);
				chessPieceAllegianceTypeMap.put(chessPiece.getChessPieceAllegianceType(), allegianceSet);
			}
		}
	}