if __name__ == "__main__": if Version.FMTversion().hasfeature("OSI") and Version.FMTversion().hasfeature("GDAL"): modelparser = Parser.FMTmodelparser() path = "../Models/TWD_land/TWD_land.pri" scenarios = ["Spatial"] models = modelparser.readproject(path, scenarios) lpmodel = Models.FMTlpmodel(models[0], Models.FMTsolverinterface.CLP) for period in range(0,10): lpmodel.buildperiod() constraints = lpmodel.getconstraints() objective = constraints.pop(0) for constraint in constraints: lpmodel.setconstraint(constraint) lpmodel.setobjective(objective) if lpmodel.initialsolve(): simulationmodel = Models.FMTsesmodel(lpmodel) singletransitions = [] for transition in simulationmodel.gettransitions(): singletransitions.append(transition.single()) simulationmodel.settransitions(singletransitions) areaparser = Parser.FMTareaparser() rasterslocation = "../Models/TWD_land/rasters/" ageraster = os.path.join(rasterslocation,"AGE.tif") themesrasters = [] themeid=1 for theme in simulationmodel.getthemes(): themesrasters.append(os.path.join(rasterslocation,"THEME"+str(themeid)+".tif")) themeid+=1 initialforestmap=areaparser.readrasters(simulationmodel.getthemes(),themesrasters,ageraster,1,0.0001) simulationmodel.setinitialmapping(initialforestmap) #Stop aftet 10 search and no decrease into infeasibility and objective
from FMT import Models from FMT import Parser if __name__ == "__main__": modelparser = Parser.FMTmodelparser() primarylocation = "../Models/TWD_land/TWD_land.pri" models = modelparser.readproject(primarylocation, ["Spatial"]) sesmodel = Models.FMTsesmodel(models[0]) themes = sesmodel.getthemes() areaparser = Parser.FMTareaparser() areaparser.setdefaultexceptionhandler() forest = areaparser.vectormaptoFMTforest( "../Models/TWD_land/Carte/TWD_land.shp", 380, themes, "AGE", "SUPERFICIE", 1, 0.0001, "", 0.0, "../Models/TWD_land/rasters/", False)