From eec5c65a5eea73b990f22aa729a3df0367f69300 Mon Sep 17 00:00:00 2001
From: ThibautDemare <fdhp_76@hotmail.com>
Date: Mon, 28 Jan 2019 16:14:16 +0100
Subject: [PATCH] Rename FinalDestinationManager species into FinalConsignee

---
 models/Experiments.gaml                       |  8 +++----
 ...nationManager.gaml => FinalConsignee.gaml} |  8 +++----
 models/GraphStreamConnection.gaml             | 20 ++++++++---------
 models/LogisticsServiceProvider.gaml          | 22 +++++++++----------
 models/Main.gaml                              | 10 ++++-----
 models/Observer.gaml                          | 16 +++++++-------
 models/Order.gaml                             |  2 +-
 models/Parameters.gaml                        | 12 +++++-----
 models/RegionObserver.gaml                    |  2 +-
 models/Stock.gaml                             |  4 ++--
 models/Strategies.gaml                        | 18 +++++++--------
 11 files changed, 61 insertions(+), 61 deletions(-)
 rename models/{FinalDestinationManager.gaml => FinalConsignee.gaml} (97%)

diff --git a/models/Experiments.gaml b/models/Experiments.gaml
index c844c13..97d6b61 100644
--- a/models/Experiments.gaml
+++ b/models/Experiments.gaml
@@ -87,7 +87,7 @@ experiment 'Every output' type: gui {
 			species MaritimeLine aspect: geom;
 			species RiverLine aspect: geom;
 			species Warehouse aspect: base;
-			species FinalDestinationManager aspect: base;
+			species FinalConsignee aspect: base;
 			species Provider aspect: base;
 			species LogisticsServiceProvider aspect: simple_base;
 			species Vehicle aspect: base;
@@ -99,7 +99,7 @@ experiment 'Every output' type: gui {
 			species MaritimeLine aspect: lightGeom;
 			species RiverLine aspect: lightGeom;
 			species Warehouse aspect: base;
-			species FinalDestinationManager aspect: base;
+			species FinalConsignee aspect: base;
 			species Provider aspect: base;
 		}
 
@@ -108,7 +108,7 @@ experiment 'Every output' type: gui {
 			species Road aspect: lightGeom;
 			species MaritimeLine aspect: lightGeom;
 			species RiverLine aspect: lightGeom;
-			species FinalDestinationManager aspect: aspectPortChoice;
+			species FinalConsignee aspect: aspectPortChoice;
 			species Provider aspect: base;
 		}
 
@@ -126,7 +126,7 @@ experiment 'Every output' type: gui {
 			species MaritimeLine aspect: lightGeom;
 			species RiverLine aspect: lightGeom;
 			species Warehouse aspect: base_condition;
-			species FinalDestinationManager aspect: base;
+			species FinalConsignee aspect: base;
 			species Provider aspect: base;
 			grid cell_stock_shortage;
 			species Vehicle aspect: base;
diff --git a/models/FinalDestinationManager.gaml b/models/FinalConsignee.gaml
similarity index 97%
rename from models/FinalDestinationManager.gaml
rename to models/FinalConsignee.gaml
index 3147090..9911564 100644
--- a/models/FinalDestinationManager.gaml
+++ b/models/FinalConsignee.gaml
@@ -1,9 +1,9 @@
-model FinalDestinationManager
+model FinalConsignee
 
 import "Building.gaml"
 import "Observer.gaml"
 
-species FinalDestinationManager {
+species FinalConsignee { // Used to be called FinalDestinationManager with associated genereric varaibles mostly called fdm
 	// Basic characteristics
 	float surface;
 	int decreasingRateOfStocks;
@@ -30,7 +30,7 @@ species FinalDestinationManager {
 	list<float> transportedVolumes <- [];
 	float localVolumeNormalizedAverageCosts <- 0.0;
 	float averageCostsOfNeighbors <- 0.0;
-	list<FinalDestinationManager> neighbors <- [];
+	list<FinalConsignee> neighbors <- [];
 
 	init {
 
@@ -327,7 +327,7 @@ species FinalDestinationManager {
 	}
 
 	action buildNeighborsList {
-		neighbors <- at_distance(FinalDestinationManager, neighborsDistance);
+		neighbors <- at_distance(FinalConsignee, neighborsDistance);
 		if(length(neighbors) = 0){
 			write "Error : not enough neighbor";
 		}
diff --git a/models/GraphStreamConnection.gaml b/models/GraphStreamConnection.gaml
index 4061b44..f58e633 100644
--- a/models/GraphStreamConnection.gaml
+++ b/models/GraphStreamConnection.gaml
@@ -131,7 +131,7 @@ global {
 					gs_add_edge gs_sender_id:"neighborhood_all" gs_edge_id:(myself.name + self.name) gs_node_id_from:myself.name gs_node_id_to:self.name gs_is_directed:false;
 				}		
 			}
-			ask (FinalDestinationManager at_distance(neighborhood_dist)) {
+			ask (FinalConsignee at_distance(neighborhood_dist)) {
 				if(self != myself){
 					gs_add_edge gs_sender_id:"neighborhood_all" gs_edge_id:(myself.name + self.name) gs_node_id_from:myself.name gs_node_id_to:self.name gs_is_directed:false;
 				}		
@@ -143,14 +143,14 @@ global {
 			}
 		}
 		
-		ask FinalDestinationManager {
+		ask FinalConsignee {
 			ask LogisticsServiceProvider at_distance(neighborhood_dist) {
 				if(self != myself){
 					gs_add_edge gs_sender_id:"neighborhood_all" gs_edge_id:(myself.name + self.name) gs_node_id_from:myself.name gs_node_id_to:self.name gs_is_directed:false;
 				}		
 			}
 			
-			ask (FinalDestinationManager at_distance(neighborhood_dist)) {
+			ask (FinalConsignee at_distance(neighborhood_dist)) {
 				if(self != myself){
 					gs_add_edge gs_sender_id:"neighborhood_all" gs_edge_id:(myself.name + self.name) gs_node_id_from:myself.name gs_node_id_to:self.name gs_is_directed:false;
 				}		
@@ -181,8 +181,8 @@ global {
 	}
 	
 	action init_neighborhood_final_destination {
-		ask FinalDestinationManager {
-			ask FinalDestinationManager at_distance(neighborhood_dist) {
+		ask FinalConsignee {
+			ask FinalConsignee at_distance(neighborhood_dist) {
 				if(self != myself){
 					gs_add_edge gs_sender_id:"neighborhood_final_destination" gs_edge_id:(myself.name + self.name) gs_node_id_from:myself.name gs_node_id_to:self.name gs_is_directed:false;
 				}		
@@ -211,14 +211,14 @@ global {
 					gs_add_edge gs_sender_id:"neighborhood_warehouse_final" gs_edge_id:(myself.name + self.name) gs_node_id_from:myself.name gs_node_id_to:self.name gs_is_directed:false;
 				}
 			}
-			ask (FinalDestinationManager at_distance(neighborhood_dist)) {
+			ask (FinalConsignee at_distance(neighborhood_dist)) {
 				if(self != myself){
 					gs_add_edge gs_sender_id:"neighborhood_warehouse_final" gs_edge_id:(myself.name + self.name) gs_node_id_from:myself.name gs_node_id_to:self.name gs_is_directed:false;
 				}		
 			}
 		}
-		ask FinalDestinationManager {
-			ask (FinalDestinationManager at_distance(neighborhood_dist)) {
+		ask FinalConsignee {
+			ask (FinalConsignee at_distance(neighborhood_dist)) {
 				if(self != myself){
 					gs_add_edge gs_sender_id:"neighborhood_warehouse_final" gs_edge_id:(myself.name + self.name) gs_node_id_from:myself.name gs_node_id_to:self.name gs_is_directed:false;
 				}		
@@ -229,8 +229,8 @@ global {
 	}
 	
 	action init_neighborhood_logistic_final {
-		ask FinalDestinationManager {
-			ask (FinalDestinationManager at_distance(neighborhood_dist)) {
+		ask FinalConsignee {
+			ask (FinalConsignee at_distance(neighborhood_dist)) {
 				if(self != myself){
 					gs_add_edge gs_sender_id:"neighborhood_logistic_final" gs_edge_id:(myself.name + self.name) gs_node_id_from:myself.name gs_node_id_to:self.name gs_is_directed:false;
 				}
diff --git a/models/LogisticsServiceProvider.gaml b/models/LogisticsServiceProvider.gaml
index 0300220..cc7874f 100644
--- a/models/LogisticsServiceProvider.gaml
+++ b/models/LogisticsServiceProvider.gaml
@@ -12,7 +12,7 @@ species LogisticsServiceProvider {
 	list<int> timeToDeliver <- [];
 	list<Warehouse> lvl1Warehouses <- []; // close warehouse
 	list<Warehouse> lvl2Warehouses <- []; // large warehouse
-	list<FinalDestinationManager> customers <- [];
+	list<FinalConsignee> customers <- [];
 	Provider provider;
 	float cumulateCosts <- 0;
 	float averageCosts <- 0;
@@ -178,9 +178,9 @@ species LogisticsServiceProvider {
 	 */
 
 	/**
-	 * When a logistic provider loose a customer (a FinalDestinationManager) he must update the stock on its warehouses
+	 * When a logistic provider loose a customer (a FinalConsignee) he must update the stock on its warehouses
 	 */
-	TransferredStocks lostCustomer(FinalDestinationManager fdm){
+	TransferredStocks lostCustomer(FinalConsignee fdm){
 		int k <- 0;
 		bool notfound <- true;
 		loop while: k < length(customers) and notfound {
@@ -286,7 +286,7 @@ species LogisticsServiceProvider {
 	/*
 	 * A recursive method which browse the supply chain and delete the useless supply chain elements from the leafs to the root
 	 */
-	list<SupplyChainElement> deleteUselessSCE(SupplyChainElement sce, FinalDestinationManager fdm, list<Warehouse> uselessWarehouses){
+	list<SupplyChainElement> deleteUselessSCE(SupplyChainElement sce, FinalConsignee fdm, list<Warehouse> uselessWarehouses){
 		int i <- 0;
 		list<SupplyChainElement> uselessSCE <- [];
 		loop while: i < length(sce.sons) {
@@ -336,7 +336,7 @@ species LogisticsServiceProvider {
 		}
 	}
 
-	SupplyChainElement connectCustomer(FinalDestinationManager fdm) {
+	SupplyChainElement connectCustomer(FinalConsignee fdm) {
 		create SupplyChainElement number:1 returns:fdmLeaf {
 			self.building <- fdm.building;
 			self.sons <- [];
@@ -352,7 +352,7 @@ species LogisticsServiceProvider {
 		return fdmLeaf[0];
 	}
 
-	SupplyChainElement connectLvl1Warehouse(FinalDestinationManager fdm, SupplyChainElement fdmLeaf, list<Stock> stocksLvl1) {
+	SupplyChainElement connectLvl1Warehouse(FinalConsignee fdm, SupplyChainElement fdmLeaf, list<Stock> stocksLvl1) {
 		// First we find an appropriate local warehouse
 		Warehouse closeWarehouse <- findWarehouseLvl1(fdm, sizeOfStockLocalWarehouse);
 		do initStock(closeWarehouse, fdm, stocksLvl1, sizeOfStockLocalWarehouse);
@@ -416,7 +416,7 @@ species LogisticsServiceProvider {
 		return sceCloseWarehouse;
 	}
 
-	action connectLvl2Warehouse(FinalDestinationManager fdm, SupplyChainElement sceCloseWarehouse, list<Stock> stocksLvl2){
+	action connectLvl2Warehouse(FinalConsignee fdm, SupplyChainElement sceCloseWarehouse, list<Stock> stocksLvl2){
 		// We try to find a father who has an appropriate surface
 		SupplyChainElement sceLarge <- nil;
 		bool found <- false;
@@ -509,7 +509,7 @@ species LogisticsServiceProvider {
 	/**
 	 * When a logistic provider has a new customer, he needs to find a new supply chain. This method build it.
 	 */
-	action getNewCustomer(FinalDestinationManager fdm, list<Stock> stocksLvl1, list<Stock> stocksLvl2){
+	action getNewCustomer(FinalConsignee fdm, list<Stock> stocksLvl1, list<Stock> stocksLvl2){
 
 		/*
 		 * Initiate the supply chain with just the provider as root
@@ -539,7 +539,7 @@ species LogisticsServiceProvider {
 	/**
 	 * We assume that the warehouse have already a stock when we initialize a new supply chain
 	 */
-	action initStock(Warehouse warehouse, FinalDestinationManager f, list<Stock> stocks, int sizeOfStock){
+	action initStock(Warehouse warehouse, FinalConsignee f, list<Stock> stocks, int sizeOfStock){
 		if(stocks = nil or length(stocks) = 0){
 			loop stockFdm over: (f.building as Building).stocks {
 				// We create the stock agent
@@ -575,7 +575,7 @@ species LogisticsServiceProvider {
 	/**
 	 * Return a warehouse of first level in the supply chain
 	 */
-	Warehouse findWarehouseLvl1(FinalDestinationManager fdm, int sizeOfStock){
+	Warehouse findWarehouseLvl1(FinalConsignee fdm, int sizeOfStock){
 		Warehouse w <- nil;
 		if(adoptedSelectingWarehouseStrategy = 1){
 			w <- world.findWarehouseLvl1Strat1(fdm, sizeOfStock, lvl2Warehouses);
@@ -595,7 +595,7 @@ species LogisticsServiceProvider {
 	/**
 	 * Return a warehouse of third level in the supply chain
 	 */
-	Warehouse findWarehouseLvl2(FinalDestinationManager fdm, int sizeOfStock){
+	Warehouse findWarehouseLvl2(FinalConsignee fdm, int sizeOfStock){
 		Warehouse w <- nil;
 		if(adoptedSelectingWarehouseStrategy = 1){
 			w <- world.findWarehouseLvl2Strat1(fdm, sizeOfStock, lvl1Warehouses);
diff --git a/models/Main.gaml b/models/Main.gaml
index ff52e82..29d5ce8 100644
--- a/models/Main.gaml
+++ b/models/Main.gaml
@@ -184,15 +184,15 @@ global {
 		/**/
 
 		// Final destinations
-		create FinalDestinationManager from: destination_shapefile with: [huffValue::float(read("huff")), surface::float(read("surface"))];
+		create FinalConsignee from: destination_shapefile with: [huffValue::float(read("huff")), surface::float(read("surface"))];
 		/* 
 		 * The following code can be commented or not, depending if the user want to execute the simulation with every FDM 
 		 * It is mainly used for tests to avoid CPU overload.
 		 */
 		int i <- 50;
-		list<FinalDestinationManager> lfdm <- shuffle(FinalDestinationManager);
+		list<FinalConsignee> lfdm <- shuffle(FinalConsignee);
 		loop while: i < length(lfdm) {
-			FinalDestinationManager s <- lfdm[i];
+			FinalConsignee s <- lfdm[i];
 			remove index: i from: lfdm;
 			ask s {
 				do die;
@@ -215,7 +215,7 @@ global {
 
 		// We initialyse stocks and associate the buildings  to their FDM
 		list<Building> buildingOfFDM <- [];
-		ask FinalDestinationManager sort_by (-1*each.surface){
+		ask FinalConsignee sort_by (-1*each.surface){
 			do second_init;
 			buildingOfFDM <+ self.building;
 		}
@@ -249,7 +249,7 @@ global {
 			ask ((Building as list) + (Warehouse as list) + (MaritimeTerminal as list) + (RiverTerminal as list) + (MaritimeRiverTerminal as list)) inside self {
 				myself.buildings <+ self;
 			}
-			ask ((FinalDestinationManager as list)) inside self {
+			ask ((FinalConsignee as list)) inside self {
 				myself.fcs <+ self;
 			}
 		}
diff --git a/models/Observer.gaml b/models/Observer.gaml
index 8ede0a4..ec13703 100644
--- a/models/Observer.gaml
+++ b/models/Observer.gaml
@@ -1,6 +1,6 @@
 model Observer
 
-import "FinalDestinationManager.gaml"
+import "FinalConsignee.gaml"
 
 global {
 	string date_simu_starts <- nil;
@@ -51,7 +51,7 @@ global {
 		freeSurfaceInFinalDest <- 0.0;
 		numberofEmptyStockInFinalDests <- 0;
 		float totalNumberOfStock <- 0.0;
-		ask FinalDestinationManager {
+		ask FinalConsignee {
 			float tempStock <- 0.0;
 			float nbStockShortages <- 0.0;
 			ask self.building.stocks {
@@ -94,7 +94,7 @@ global {
 	 */
 	reflex updateAverageLPEfficiency {
 		float currentNbStockShortages <- 0;
-		ask FinalDestinationManager {
+		ask FinalConsignee {
 			int i <- 0;
 			self.localAverageNbStockShortagesLastSteps <- 0;
 			loop while: i < length(localNbStockShortagesLastSteps) {
@@ -104,7 +104,7 @@ global {
 			self.localAverageNbStockShortagesLastSteps <- self.localAverageNbStockShortagesLastSteps / length(localNbStockShortagesLastSteps);
 			currentNbStockShortages <- currentNbStockShortages + self.localAverageNbStockShortagesLastSteps;
 		}
-		currentNbStockShortages <- currentNbStockShortages / length(FinalDestinationManager);
+		currentNbStockShortages <- currentNbStockShortages / length(FinalConsignee);
 		averagesNbStockShortages <- averagesNbStockShortages + 0.0;
 		if(length(averagesNbStockShortages) > nbStepsConsideredForLPEfficiency){
 			remove index: 0 from: averagesNbStockShortages;
@@ -166,7 +166,7 @@ global {
 		// Update the average time to be delivered (at the FDMs level)
 		i <- 0;
 		sum <- 0;
-		ask FinalDestinationManager {
+		ask FinalConsignee {
 			int j <- 0;
 			int localSum <- 0;
 
@@ -194,7 +194,7 @@ global {
 		int i <- 0;
 		float sum <- 0;
 		// First we update the costs for each FC
-		ask FinalDestinationManager {
+		ask FinalConsignee {
 			if(length(localTransportationCosts) > 0){
 				int j <- 0;
 				float localCostsSum <- 0;
@@ -219,7 +219,7 @@ global {
 			}
 		}
 		// Then we compute the average costs of the neighbors of each FC
-		ask FinalDestinationManager {
+		ask FinalConsignee {
 			averageCostsOfNeighbors <- 0.0;
 			if(length(neighbors) = 0) {
 				do buildNeighborsList;
@@ -424,7 +424,7 @@ global {
 		nbLPStrat4HighThreshold <- 0;
 
 		float inter <- (maxlocalThreshold - minlocalThreshold)/4.0;
-		ask FinalDestinationManager {
+		ask FinalConsignee {
 			if(logisticsServiceProvider.adoptedSelectingWarehouseStrategy = 1){
 				nbLPStrat1 <- nbLPStrat1 + 1;
 				if(logisticsServiceProvider.threshold < (minlocalThreshold + inter)){
diff --git a/models/Order.gaml b/models/Order.gaml
index 6309347..d0761c9 100644
--- a/models/Order.gaml
+++ b/models/Order.gaml
@@ -8,7 +8,7 @@ species Order schedules: [] {
 	Building building; // which building has made the order
 	LogisticsServiceProvider logisticsServiceProvider; // the LSP who manages the ordered goods
 	int position;// The position in the supply chain
-	FinalDestinationManager fdm; // The FDM who posseses these goods
+	FinalConsignee fdm; // The FDM who posseses these goods
 	Stock reference; // a reference to the stock which suffer of stock shortage
 	int stepOrderMade; // when does the order has been made
 	string strategy;
diff --git a/models/Parameters.gaml b/models/Parameters.gaml
index f8ad903..72a8694 100644
--- a/models/Parameters.gaml
+++ b/models/Parameters.gaml
@@ -1,6 +1,6 @@
 model Parameters
 
-import "FinalDestinationManager.gaml"
+import "FinalConsignee.gaml"
 import "Warehouse.gaml" 
 import "LogisticsServiceProvider.gaml"
 
@@ -9,20 +9,20 @@ global {
 	date starting_date <- date([2018,6,5,11,0,0]);// 5 Juin 2018 11h00
 
 	// Selecting Warehouse Strategies
-	bool isLocalSelectingWarehouseStrategies <- true;
+	bool isLocalSelectingWarehouseStrategies <- false;
 	int globalSelectingWarehouseStrategies <- 1;
 	list<int> possibleSelectingWarehouseStrategies <- [1, 2, 3, 4]; //[1];//[1, 4];// [1, 2, 3, 4] // 1 : biased random selection - 2 : accessibility - 3 : closest/largest - 4 : pure random selection
 	int numberWarehouseSelected <- 10;
 
 	// Cost path strategies
-	bool isLocalCostPathStrategy <- true;
+	bool isLocalCostPathStrategy <- false;
 	list<string> possibleCostPathStrategies <- ['financial_costs','travel_time'];
 	string globalCostPathStrategy <- 'financial_costs';
 	int costsMemory <- 50; // size of the arrays used to compute costs of LSP by FC (=> equal to the number of deliveries made)
 	int neighborsDistance <- 10°km;
 
 	// Parameters relative to the threshold used by LSPs to decide when to restock
-	bool localThreshold <- true;
+	bool localThreshold <- false;
 	float minlocalThreshold <- 0.05;
 	float maxlocalThreshold <- 0.2;
 	float globalThreshold <- 0.15;
@@ -75,11 +75,11 @@ global {
 	float valForMinHuff <- 6.0;
 	float valForMaxHuff <- 2.0;
 	action init_decreasingRateOfStocks {
-		list<FinalDestinationManager> dests <- FinalDestinationManager sort_by each.huffValue;
+		list<FinalConsignee> dests <- FinalConsignee sort_by each.huffValue;
 		int i <- 0;
 		int ld <- length(dests);
 		loop while: i < ld {
-			FinalDestinationManager fdm <- dests[i];
+			FinalConsignee fdm <- dests[i];
 			fdm.decreasingRateOfStocks <- round(((valForMaxHuff-valForMinHuff) / (length(dests)-1)) * (i) + valForMinHuff);
 			i <- i + 1;
 		}
diff --git a/models/RegionObserver.gaml b/models/RegionObserver.gaml
index e77490a..577e8c3 100644
--- a/models/RegionObserver.gaml
+++ b/models/RegionObserver.gaml
@@ -6,7 +6,7 @@ import "Building.gaml"
 species RegionObserver {
 	string name;
 	list<Building> buildings <- [];
-	list<FinalDestinationManager> fcs <- [];
+	list<FinalConsignee> fcs <- [];
 
 	// Share by number of vehicle
 	float sumRoadVehicleRO <- 0.0;
diff --git a/models/Stock.gaml b/models/Stock.gaml
index 811e023..5923923 100644
--- a/models/Stock.gaml
+++ b/models/Stock.gaml
@@ -1,7 +1,7 @@
 model Stock
 
 import "Building.gaml"
-import "FinalDestinationManager.gaml"
+import "FinalConsignee.gaml"
 import "LogisticsServiceProvider.gaml"
 
 species Stock schedules: [] {
@@ -9,7 +9,7 @@ species Stock schedules: [] {
 	float quantity;
 	float maxQuantity;
 	int status <- 0; // = 0 : a restock has not been asked; = 1 the restock has been asked; = 2 : ?? no idea - was it used before? ?? ; = 3 : a building is processing the order to restock
-	FinalDestinationManager fdm;
+	FinalConsignee fdm;
 	LogisticsServiceProvider lp;
 	Building building;
 	int stepWithNoStock <- 0; // Used to detect bug in the simulation : if a stock never has a restock, then there is a bug somewhere. Bugs in ABM can be hard to detect...
diff --git a/models/Strategies.gaml b/models/Strategies.gaml
index 776f730..171941d 100644
--- a/models/Strategies.gaml
+++ b/models/Strategies.gaml
@@ -12,7 +12,7 @@ global {
 	/**
 	 * Return a small warehouse according to the position of the final destination : the more the warehouse is close to the final destination, the more he has a chance to be selected.
 	 */
-	Warehouse findWarehouseLvl1Strat1(FinalDestinationManager fdm, int sizeOfStock, list<Warehouse> lvl2Warehouses){
+	Warehouse findWarehouseLvl1Strat1(FinalConsignee fdm, int sizeOfStock, list<Warehouse> lvl2Warehouses){
 		list<Warehouse> lw <- copy(Warehouse) sort_by (fdm distance_to each);
 
 		// Remove the ones which cannot welcome the stocks of the customer because they are already a warehouse of level 2
@@ -40,7 +40,7 @@ global {
 	/**
 	 * Return a large warehouse : the more the warehouse has a big free surface, the more he has a chance to be selected.
 	 */
-	Warehouse findWarehouseLvl2Strat1(FinalDestinationManager fdm, int sizeOfStock, list<Warehouse> lvl1Warehouses){
+	Warehouse findWarehouseLvl2Strat1(FinalConsignee fdm, int sizeOfStock, list<Warehouse> lvl1Warehouses){
 		list<Warehouse> lw <- copy(Warehouse) sort_by (each.totalSurface-each.occupiedSurface);
 
 		// Remove the ones which cannot welcome the stocks of the customer because they are already a warehouse of level 1
@@ -79,7 +79,7 @@ global {
 	 * On sélectionne les 10/20/50/100 (paramétre à définir) plus proches
 	 * on choisit celui qui a la plus grande valeur d'accessibilité
 	 */
-	Warehouse findWarehouseLvl1Strat2(FinalDestinationManager fdm, int sizeOfStock, list<Warehouse> lvl1Warehouses, list<Warehouse> lvl2Warehouses){
+	Warehouse findWarehouseLvl1Strat2(FinalConsignee fdm, int sizeOfStock, list<Warehouse> lvl1Warehouses, list<Warehouse> lvl2Warehouses){
 		// We inform GAMA that each warehouse must be consider connected to the network in order to compute the Shimbel index
 		bool success <- connect_to(list(Warehouse), road_network, "length", "speed", 70°m/°s);
 		if(first(Warehouse).accessibility < 0){
@@ -158,7 +158,7 @@ global {
 	 * On sélectionne les 10/20/50/100 (paramétre à définir) ayant la plus grande valeur d'accessibilité (ou plutot les plus grand?)
 	 * On choisit le plus proche?/le plus large/celui ayant la plus grande valeur d'accessibilité? => à tester
 	 */
-	Warehouse findWarehouseLvl2Strat2(FinalDestinationManager fdm, int sizeOfStock, list<Warehouse> lvl1Warehouses, list<Warehouse> lvl2Warehouses){
+	Warehouse findWarehouseLvl2Strat2(FinalConsignee fdm, int sizeOfStock, list<Warehouse> lvl1Warehouses, list<Warehouse> lvl2Warehouses){
 		// We inform GAMA that each warehouse must be consider connected to the network in order to compute the Shimbel index
 		bool success <- connect_to(list(Warehouse), road_network, "length", "speed", 70°m/°s);
 		if(first(Warehouse).accessibility < 0){
@@ -245,7 +245,7 @@ global {
 	 * On supprime ceux qui n'ont pas la capacité d'entreposer la marchandise
 	 * On sélectionne le plus proche
 	 */
-	Warehouse findWarehouseLvl1Strat3(FinalDestinationManager fdm, int sizeOfStock, list<Warehouse> lvl2Warehouses){
+	Warehouse findWarehouseLvl1Strat3(FinalConsignee fdm, int sizeOfStock, list<Warehouse> lvl2Warehouses){
 		list<Warehouse> lw <- copy(list(Warehouse));
 		
 		// Remove the ones that cannot welcome the stocks of the customer
@@ -281,7 +281,7 @@ global {
 	 * On supprime ceux qui n'ont pas la capacité d'entreposer la marchandise
 	 * On choisit le plus large
 	 */
-	Warehouse findWarehouseLvl2Strat3(FinalDestinationManager fdm, int sizeOfStock, list<Warehouse> lvl1Warehouses){
+	Warehouse findWarehouseLvl2Strat3(FinalConsignee fdm, int sizeOfStock, list<Warehouse> lvl1Warehouses){
 		list<Warehouse> lw <- copy(list(Warehouse));
 		
 		// Remove the ones which cannot welcome the stocks of the customer because they are already a warehouse of level 1
@@ -318,18 +318,18 @@ global {
 	/**
 	 * Select randomly a warehouse
 	 */
-	Warehouse findWarehouseLvl1Strat4(FinalDestinationManager fdm, int sizeOfStock, list<Warehouse> lvl2Warehouses){
+	Warehouse findWarehouseLvl1Strat4(FinalConsignee fdm, int sizeOfStock, list<Warehouse> lvl2Warehouses){
 		return pureRandom(fdm, sizeOfStock, lvl2Warehouses);
 	}
 
 	/**
 	 * Select randomly a warehouse
 	 */
-	Warehouse findWarehouseLvl2Strat4(FinalDestinationManager fdm, int sizeOfStock, list<Warehouse> lvl1Warehouses){
+	Warehouse findWarehouseLvl2Strat4(FinalConsignee fdm, int sizeOfStock, list<Warehouse> lvl1Warehouses){
 		return pureRandom(fdm, sizeOfStock, lvl1Warehouses);
 	}
 
-	Warehouse pureRandom(FinalDestinationManager fdm, int sizeOfStock, list<Warehouse> otherLvlWarehouses){
+	Warehouse pureRandom(FinalConsignee fdm, int sizeOfStock, list<Warehouse> otherLvlWarehouses){
 		list<Warehouse> lw <- copy(list(Warehouse));
 
 		// Remove the ones that cannot welcome the stocks of the customer
-- 
GitLab