1
2
3
4
5
6
7
8
9
10 import sys
11
16
17
18
19
20
22 """Main program."""
23
24
25 system = create_system()
26
27 output_values = {"output_risque_sit_geo" : 0.0}
28 input_val = {}
29 input_val['input_Nbre_habitants'] = float (sys.argv[1])
30 input_val['input_dist_frontiere'] = float (sys.argv[2])
31 print input_val
32
33 system.calculate(input=input_val , output = output_values)
34
35 for classes in output_values.values():
36 for classe in classes:
37 print classe + " \t\t: %.2f" %classes[classe]
38
39 if __name__ == "__main__":
40
41 if "doc" in sys.argv:
42 from fuzzy.doc.plot.gnuplot import doc
43 system = create_system()
44 doc = doc.Doc("../doc")
45 doc.createDoc(system)
46 for a in ["Nul","Faible","Moyen","Eleve","Inacceptable"]:
47 doc.create3DPlot_adjective(system,"input_Nbre_habitants","input_dist_frontiere","output_risque_sit_geo",a)
48 elif "dot" in sys.argv:
49 system = create_system()
50 import fuzzy.doc.structure.dot.dot
51 import subprocess
52 for name,rule in system.rules.items():
53 cmd = "dot -T png -o '%s/Rule %s.png'" % ("../doc",name)
54 f = subprocess.Popen(cmd, shell=True, bufsize=32768, stdin=subprocess.PIPE).stdin
55 fuzzy.doc.structure.dot.dot.print_header(f,"XXX")
56 fuzzy.doc.structure.dot.dot.print_dot(rule,f,system,"")
57 fuzzy.doc.structure.dot.dot.print_footer(f)
58 cmd = "dot -T png -o '%s/System.png'" % "../doc",
59 f = subprocess.Popen(cmd, shell=True, bufsize=32768, stdin=subprocess.PIPE).stdin
60 fuzzy.doc.structure.dot.dot.printDot(system,f)
61 else:
62 if len(sys.argv) == 1:
63 print "Usage : \n" + sys.argv[0] +" [Nombre_habitants] [distance_frontiere]\n"
64 sys.exit(0)
65 main()
66