public void createSons(){	// Tested
		SimulatedPlanetWars simpw = this.getSim();
		for (Planet myPlanet: simpw.MyPlanets()){
			
			//avoid planets with only one ship
			if (myPlanet.NumShips() <= 1)
				continue;
			
			// We create a son for each of the possible situations
			for (Planet notMyPlanet: simpw.NotMyPlanets()){

				// Create simulation environment for this son
				SimulatedPlanetWars simpw2 = new SimulatedPlanetWars(simpw);
				int value = Helper.Dcalculation(myPlanet, notMyPlanet);
                simpw2.IssueOrder(myPlanet, notMyPlanet);
				simpw2.simulateGrowth();
				simpw2.simulateFirstBotAttack();
				simpw2.simulateGrowth(); 

				MyNode son;
				if (this.isRoot()) {
					son = new MyNode(this, simpw2, value, myPlanet, notMyPlanet);
				}
				else {
					son = new MyNode(this, simpw2, value, this.getSource(), this.getDest());	// We only need to know from where to where we want to send our ships to get the best turn
				}
                this.addSon(son);                
			}
		}
	}