Esempio n. 1
0
def main():

    #Test on: N1_1
    #Constraints: 12000 ≤ ρ ≤ 62000, (0.7 ≤ θ ≤ 3.141592)∨(−3.141592≤ θ ≤ -0.7),
    # -3.141592 ≤ ψ ≤ -3.141592 + 0.005, 100 ≤ vown ≤ 1200, 0 ≤ vint ≤ 1200.
    #  the score of ``Clear-of-Conflict" is the minimal )\vee (-3.141592 $\leq\theta\leq$ -0.7), -3.141592 $\leq \psi \leq $ -3.141592 + 0.005, 100 $\leq v_{own} \leq$ 1200, 0 $\leq v_{int} \leq$ 1200.
    # the property is divided into two sub-properties that can be check seperately.
    p6_a = [
        "f0 >= 12000", "f0 <= 62000", "f1 >= 0.7", "f1 <= 3.141592",
        "f2 >= -3.141592", "f2 <= -3.141592 + 0.005", "f3 >= 100",
        "f3 <= 1200", "f4 >= 0", "f4 <= 1200", "lmin == 0"
    ]

    p6_b = [
        "f0 >= 12000", "f0 <= 62000", "f1 >= -3.141592", "f1 <= -0.7",
        "f2 >= -3.141592", "f2 <= -3.141592 + 0.005", "f3 >= 100",
        "f3 <= 1200", "f4 >= 0", "f4 <= 1200", "lmin == 0"
    ]

    with open("../paths_generation/paths_dt/tree_paths_11.txt", "rb") as fp:
        paths = pickle.load(fp)

    with open("../paths_generation/features.txt", "rb") as fp:
        f = pickle.load(fp)

    #solver(paths, f, p6_a)
    solver(paths, f, p6_b)
Esempio n. 2
0
def main():

    # Tested on: Nx_y for all x ≥ 2 and for all y.
    # Constraints: ρ ≥ 55947.691, vown ≥ 1145, vint ≤ 60.
    # The score for COC is not the maximal score : Not(lmax == 0)

    p2 = ["f0 >= 55947.691", "f3 >= 1145", "f4 <= 60", "Not(lmax == 0)"]

    # enter the correponding path file: "../paths_generation/tree_paths_xy.txt", "rb"
    # Nx,y for all x ≥ 2 and for all y.
    with open("../paths_generation/paths_dt/tree_paths_59.txt", "rb") as fp:
        paths = pickle.load(fp)
    with open("../paths_generation/features.txt", "rb") as fp:
        f = pickle.load(fp)

    solver(paths, f, p2)
def main():

    # Test on: N1_9
    #Constraints: 0 ≤ ρ ≤ 60760, −3.141592 ≤ θ ≤ 3.141592, −3.141592 ≤ ψ ≤ 3.141592, 100 ≤ vown ≤ 1200, 0 ≤ vint ≤ 1200.
    # Desired output property: the scores for “strong right” and “strong left” are never the minimal scores.

    p7 = [
        "f0 >= 0", "f0 <= 60760", "f1 >= -3.141592", "f1 <= 3.141592",
        "f2 >= -3.141592", "f2 <= 3.141592", "f3 >= 100", "f3 <= 1200",
        "f4 >= 0", "f4 <= 1200", "Not(Or(lmin == 4,lmin ==3))"
    ]

    with open("../paths_generation/paths_dt/tree_paths_19.txt", "rb") as fp:
        paths = pickle.load(fp)

    with open("../paths_generation/features.txt", "rb") as fp:
        f = pickle.load(fp)
    solver(paths, f, p7)
Esempio n. 4
0
def main():

    # Test on: N3_3
    # 2000 ≤ ρ ≤ 7000, −0.4 ≤ θ ≤ −0.14, −3.141592 ≤ ψ ≤ −3.141592 + 0.01, 100 ≤ vown ≤ 150, 0 ≤ vint ≤ 150.
    #  Desired output property: the score for “strong left” is minimal.

    p9 = ["f0 >= 2000", "f0 <= 7000",
          "f1 >= -0.4", "f1 <= -0.14",
          "f2 >= -3.141592", "f2 <= -3.141592 + 0.01",
          "f3 >= 100", "f3 <= 150",
          "f4 >= 0", "f4 <= 150", "lmin == 3"]

    with open("../paths_generation/paths_rf/combined_paths_3_3.txt", "rb") as fp:
        paths = pickle.load(fp)

    with open("../paths_generation/features.txt", "rb") as fp:
        f = pickle.load(fp)

    solver(paths, f, p9)
def main():

    # Test on: N2_9
    # 0 ≤ ρ ≤ 60760, -3.141592 ≤ θ ≤ -0.75·3.141592, -0.1 ≤ ψ ≤ 0.1, 600 ≤ vown ≤ 1200, 600 ≤ vint ≤ 1200
    # Desired output property: the score for “weak left” is minimal or the score for COC is minimal.

    p8 = [
        "f0 >= 0", "f0 <= 60760", "f1 >= -3.141592", "f1 <= -0.75 * 3.141592",
        "f2 >= -0.1", "f2 <= 0.1", "f3 >= 600", "f3 <= 1200", "f4 >= 600",
        "f4 <= 1200", "Or(lmin == 1,lmin ==0)"
    ]

    with open("../paths_generation/paths_dt/tree_paths_29.txt", "rb") as fp:
        paths = pickle.load(fp)

    with open("../paths_generation/features.txt", "rb") as fp:
        f = pickle.load(fp)

    solver(paths, f, p8)
def main():

    # Tested on: all networks except N1_7, N1_8, and N1_9.
    # Constraints: 1500 ≤ ρ ≤ 1800, −0.06 ≤ θ ≤ 0.06, ψ ≥ 3.10, vown ≥ 980, vint ≥ 960.
    # The score for COC is not the minimal score
    p3 = [
        "f0 >= 1500", "f0 <= 1800", "f1 >= -0.06", "f1 <= 0.06", "f2 >= 3.1",
        "f3 >= 980", "f4 >= 960", "Not(lmin == 0)"
    ]
    # enter the correponding path file: "../paths_generation/tree_paths_xy.txt", "rb"
    # all networks except N1_7, N1_8, and N1_9.
    with open("../paths_generation/paths_rf/combined_paths_5_8.txt",
              "rb") as fp:
        paths = pickle.load(fp)

    with open("../paths_generation/features.txt", "rb") as fp:
        f = pickle.load(fp)

    solver(paths, f, p3)
def main():

    # Tested on: all networks except N1_7, N1_8, and N1_9.
    # Constraints: 1500 ≤ ρ ≤ 1800, -0.06 ≤ θ ≤ 0.06, ψ = 0, vown ≥ 1000, 700 ≤ vint ≤ 800.
    # the score for COC is not the minimal score
    p4 = [
        "f0 >= 1500", "f0 <= 1800", "f1 >= -0.06", "f1 <= 0.06", "f2 == 0",
        "f3 >= 1000", "f4 >= 700", "f4 <= 800", "Not(lmin == 0)"
    ]

    # enter the correponding path file: "../paths_generation/tree_paths_xy.txt", "rb"
    # all networks except N1_7, N1_8, and N1_9.
    with open("../paths_generation/paths_dt/tree_paths_11.txt", "rb") as fp:
        paths = pickle.load(fp)

    with open("features.txt", "rb") as fp:
        f = pickle.load(fp)

    solver(paths, f, p4)
def main():

    #Test on: N1_1
    #constraints: 250 ≤ ρ ≤ 400, 0.2 ≤ θ ≤ 0.4, -3.141592 ≤ ψ ≤ -3.141592 + 0.005, 100 ≤ vown ≤ 400, 0 ≤ vint ≤ 400
    #the score of “strong right” is the minimal

    p5 = [
        "f0 >= 250", "f0 <= 400", "f1 >= 0.2", "f1 <= 0.4", "f2 >= -3.141592",
        "f2 <= -3.141592+0.005", "f3 >= 100", "f3 <= 400", "f4 >= 0",
        "f4 <= 400", "lmin == 4"
    ]

    with open("../paths_generation/paths_dt/tree_paths_11.txt", "rb") as fp:
        paths = pickle.load(fp)

    with open("features.txt", "rb") as fp:
        f = pickle.load(fp)

    solver(paths, f, p5)
Esempio n. 9
0
def main():

    # Test on: N4_5
    # 36000 ≤ ρ ≤ 60760, 0.7 ≤ θ ≤ 3.141592, -3.141592 ≤ ψ ≤ -3.141592 + 0.01, 900 ≤ vown ≤ 1200, 600 ≤ vint ≤ 1200.
    # Desired output: the score for COC is minimal.

    p10 = [
        "f0 >= 36000", "f0 <= 60760", "f1 >= 0.7", "f1 <= 3.141592",
        "f2 >= -3.141592", "f2 <= -3.141592 + 0.01", "f3 >= 900", "f3 <= 1200",
        "f4 >= 600", "f4 <= 1200", "lmin == 0"
    ]

    with open("../paths_generation/paths_dt/tree_paths_45.txt", "rb") as fp:
        paths = pickle.load(fp)

    with open("../paths_generation/features.txt", "rb") as fp:
        f = pickle.load(fp)

    solver(paths, f, p10)