Esempio n. 1
0
def init():
    global universal_set, fuzzy_sets, scales, fuzzy_colors
    scales = ["дешево", "терпимо", "дорого", "очень дорого"]
    for scale in scales:
        color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
        fuzzy_colors[scale] = color
    #
    universal_set = list(np.arange(30, 95, 0.25))
    universal_set = [np.float64(x).item() for x in universal_set]
    #
    trapezoid_dict = dict()
    triangular_dict = dict()
    #
    trapezoid.add_rating_linguistic_scale(30.0, 35.0, 40.0, 50.0, "дешево",
                                          trapezoid_dict, universal_set)
    trapezoid.add_rating_linguistic_scale(40.0, 45.0, 50.0, 55.0, "терпимо",
                                          trapezoid_dict, universal_set)
    trapezoid.add_rating_linguistic_scale(50.0, 55.0, 60.0, 65.0, "дорого",
                                          trapezoid_dict, universal_set)
    trapezoid.add_rating_linguistic_scale(60.0, 65.0, 70.0, 75.0,
                                          "очень дорого", trapezoid_dict,
                                          universal_set)
    #
    triangular.add_rating_linguistic_scale(30.0, 40.0, 50.0, "дешево",
                                           triangular_dict, universal_set)
    triangular.add_rating_linguistic_scale(40.0, 47.5, 55.0, "терпимо",
                                           triangular_dict, universal_set)
    triangular.add_rating_linguistic_scale(50.0, 57.5, 65.0, "дорого",
                                           triangular_dict, universal_set)
    triangular.add_rating_linguistic_scale(60.0, 67.5, 75.0, "очень дорого",
                                           triangular_dict, universal_set)
    #
    fuzzy_sets["trapezoid"] = trapezoid_dict
    fuzzy_sets["triangular"] = triangular_dict
    return
Esempio n. 2
0
def init():
    global universal_set, \
        fuzzy_sets, scales, \
        fuzzy_colors, trapezoid_accessory_table, \
        trapezoid_fuzzy_time_series, \
        trapezoid_intensity, \
        trapezoid_series_trends, \
        clear_time_series, \
        triangular_accessory_table, \
        triangular_fuzzy_time_series, \
        triangular_series_trends, \
        triangular_intensity
    #
    clear_time_series = read('main_series.csv', clear_time_series)
    #
    scales = ["дешево", "терпимо", "дорого", "очень дорого"]
    for scale in scales:
        color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
        fuzzy_colors[scale] = color
    #
    universal_set = list(np.arange(30, 95, 0.25))
    universal_set = [np.float64(x).item() for x in universal_set]
    #
    trapezoid_dict = dict()
    triangular_dict = dict()
    #
    trapezoid.add_rating_linguistic_scale(30.0, 35.0, 40.0, 45.0, "дешево", trapezoid_dict, universal_set)
    trapezoid.add_rating_linguistic_scale(40.0, 45.0, 50.0, 55.0, "терпимо", trapezoid_dict, universal_set)
    trapezoid.add_rating_linguistic_scale(50.0, 55.0, 60.0, 65.0, "дорого", trapezoid_dict, universal_set)
    trapezoid.add_rating_linguistic_scale(60.0, 65.0, 70.0, 75.0, "очень дорого", trapezoid_dict, universal_set)
    #
    triangular.add_rating_linguistic_scale(30.0, 37.5, 45.0, "дешево", triangular_dict, universal_set)
    triangular.add_rating_linguistic_scale(40.0, 47.5, 55.0, "терпимо", triangular_dict, universal_set)
    triangular.add_rating_linguistic_scale(50.0, 57.5, 65.0, "дорого", triangular_dict, universal_set)
    triangular.add_rating_linguistic_scale(60.0, 67.5, 75.0, "очень дорого", triangular_dict, universal_set)
    #
    fuzzy_sets["trapezoid"] = trapezoid_dict
    fuzzy_sets["triangular"] = triangular_dict
    #
    #
    #
    trapezoid_accessory_table = trapezoid.create_accessory_table(fuzzy_sets["trapezoid"], clear_time_series,
                                                                 universal_set)
    trapezoid_fuzzy_time_series, trapezoid_series_trends, trapezoid_intensity = series.analysis_time_series(
        trapezoid_accessory_table, fuzzy_sets["trapezoid"], clear_time_series)

    #
    #
    #
    triangular_accessory_table = triangular.create_accessory_table(fuzzy_sets["triangular"], clear_time_series,
                                                                   universal_set)
    triangular_fuzzy_time_series, triangular_series_trends, triangular_intensity = series.analysis_time_series(
        triangular_accessory_table, fuzzy_sets["triangular"], clear_time_series)

    #
    return
Esempio n. 3
0
def input_parser(input_string):
    global universal_set, \
        fuzzy_sets, scales, \
        fuzzy_colors, trapezoid_accessory_table, \
        trapezoid_fuzzy_time_series, \
        trapezoid_intensity, \
        trapezoid_series_trends, \
        clear_time_series, \
        triangular_accessory_table, \
        triangular_fuzzy_time_series, \
        triangular_series_trends, \
        triangular_intensity
    #
    split = input_string.split(";")
    com = split[0].split(":")[1]
    if com == "[fit]":
        args = split[1].split(":")[1].replace("[", "").replace("]", "").split(",")
        n = int(args[2])
        fit_type = args[1]
        predict = None
        if args[0] == "td":
            if fit_type == "nvr":
                songModel = song.SongModel(
                    max_learn_deep=n,
                    clear_time_series=clear_time_series,
                    accessory_table=trapezoid_accessory_table,
                    fuzzy_scores=trapezoid_accessory_table[0],
                    explored_field=song.ExploredField.NVR,
                    rule_convert_from_trend_to_score=None
                )
                songModel.fit(trapezoid_fuzzy_time_series)
                predict = songModel.predict_next()
                print(predict)
            if fit_type == "trends":
                songModel = song.SongModel(
                    max_learn_deep=2,
                    clear_time_series=clear_time_series,
                    accessory_table=trapezoid_accessory_table,
                    fuzzy_scores=trapezoid_accessory_table[0],
                    explored_field=song.ExploredField.Trends,
                    rule_convert_from_trend_to_score=dict(
                        удешевление=1,
                        удорожание=-1,
                        стабильность=0
                    )
                )
                songModel.fit(trapezoid_series_trends)
                predict = songModel.predict_next(nvr=trapezoid_fuzzy_time_series)
                print(predict)
        if args[0] == "tr":
            if fit_type == "nvr":
                songModel = song.SongModel(
                    max_learn_deep=n,
                    clear_time_series=clear_time_series,
                    accessory_table=triangular_accessory_table,
                    fuzzy_scores=triangular_accessory_table[0],
                    explored_field=song.ExploredField.NVR,
                    rule_convert_from_trend_to_score=None
                )
                songModel.fit(triangular_fuzzy_time_series)
                predict = songModel.predict_next()
                print(predict)
            if fit_type == "trends":
                songModel = song.SongModel(
                    max_learn_deep=2,
                    clear_time_series=clear_time_series,
                    accessory_table=triangular_accessory_table,
                    fuzzy_scores=triangular_accessory_table[0],
                    explored_field=song.ExploredField.Trends,
                    rule_convert_from_trend_to_score=dict(
                        удешевление=1,
                        удорожание=-1,
                        стабильность=0
                    )
                )
                songModel.fit(triangular_series_trends)
                predict = songModel.predict_next(nvr=triangular_fuzzy_time_series)
                print(predict)
        min_ = float(0xFFFFFF)
        next_ = 0.0
        for deep, info in predict.items():
            if info["mape"] < min_:
                min_ = info["mape"]
                next_ = info["predict"]
        lst_ind = clear_time_series[-1][0] + 1
        clear_time_series.append(
            [lst_ind, next_]
        )
        trapezoid_accessory_table = trapezoid.create_accessory_table(fuzzy_sets["trapezoid"], clear_time_series,
                                                                     universal_set)
        trapezoid_fuzzy_time_series, trapezoid_series_trends, trapezoid_intensity = series.analysis_time_series(
            trapezoid_accessory_table, fuzzy_sets["trapezoid"], clear_time_series)

        triangular_accessory_table = triangular.create_accessory_table(fuzzy_sets["triangular"], clear_time_series,
                                                                       universal_set)
        triangular_fuzzy_time_series, triangular_series_trends, triangular_intensity = series.analysis_time_series(
            triangular_accessory_table, fuzzy_sets["triangular"], clear_time_series)

    if com == "[show]":
        args = split[1].split(":")[1].replace("[", "").replace("]", "")
        if args == "all":
            trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"], fuzzy_colors=fuzzy_colors,
                                universal_set=universal_set)
            triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"], fuzzy_colors=fuzzy_colors,
                                 universal_set=universal_set)
        if args == "td":
            trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"], fuzzy_colors=fuzzy_colors,
                                universal_set=universal_set)
            series.show_fuzzy_time_series(fuzzy_time_series_table=trapezoid_fuzzy_time_series,
                                          clear_time_series_table=clear_time_series, fuzzy_sets=fuzzy_sets["trapezoid"])
            series.show_series_trends(series_trends_table=trapezoid_series_trends,
                                      clear_time_series_table=clear_time_series)
        if args == "tr":
            triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"], fuzzy_colors=fuzzy_colors,
                                 universal_set=universal_set)
            series.show_fuzzy_time_series(fuzzy_time_series_table=triangular_fuzzy_time_series,
                                          clear_time_series_table=clear_time_series,
                                          fuzzy_sets=fuzzy_sets["triangular"])
            series.show_series_trends(series_trends_table=triangular_series_trends,
                                      clear_time_series_table=clear_time_series)


    if com == "[update]" or com == "[add]":
        args = split[1].split(":")[1].replace("[", "").replace("]", "").split(",")
        f = args[0]
        name = args[1]
        if com == "[update]":
            if f == "td":
                trapezoid.update_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    d=float(args[5]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["trapezoid"],
                    name=name
                )
                trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"], fuzzy_colors=fuzzy_colors,
                                    universal_set=universal_set)
                trapezoid_accessory_table = trapezoid.create_accessory_table(fuzzy_sets["trapezoid"], clear_time_series,
                                                                             universal_set)
                trapezoid_fuzzy_time_series, trapezoid_series_trends, trapezoid_intensity = series.analysis_time_series(
                    trapezoid_accessory_table, fuzzy_sets["trapezoid"], clear_time_series)
                series.show_fuzzy_time_series(fuzzy_time_series_table=trapezoid_fuzzy_time_series,
                                              clear_time_series_table=clear_time_series,
                                              fuzzy_sets=fuzzy_sets["trapezoid"])
                series.show_series_trends(series_trends_table=trapezoid_series_trends,
                                          clear_time_series_table=clear_time_series)
            if f == "tr":
                triangular.update_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["triangular"],
                    name=name
                )
                triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"], fuzzy_colors=fuzzy_colors,
                                     universal_set=universal_set)
                triangular_accessory_table = triangular.create_accessory_table(fuzzy_sets["triangular"],
                                                                               clear_time_series,
                                                                               universal_set)
                triangular_fuzzy_time_series, triangular_series_trends, triangular_intensity = series.analysis_time_series(
                    triangular_accessory_table, fuzzy_sets["triangular"])
                series.show_fuzzy_time_series(fuzzy_time_series_table=triangular_fuzzy_time_series,
                                              clear_time_series_table=clear_time_series,
                                              fuzzy_sets=fuzzy_sets["triangular"])
                series.show_series_trends(series_trends_table=triangular_series_trends,
                                          clear_time_series_table=clear_time_series)
        if com == "[add]":
            if f == "td":
                trapezoid.add_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    d=float(args[5]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["trapezoid"],
                    name=name
                )
                color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
                fuzzy_colors[name] = color
                trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"], fuzzy_colors=fuzzy_colors,
                                    universal_set=universal_set)
                trapezoid_accessory_table = trapezoid.create_accessory_table(fuzzy_sets["trapezoid"], clear_time_series,
                                                                             universal_set)
                trapezoid_fuzzy_time_series, trapezoid_series_trends, trapezoid_intensity = series.analysis_time_series(
                    trapezoid_accessory_table, fuzzy_sets["trapezoid"], clear_time_series)
                series.show_fuzzy_time_series(fuzzy_time_series_table=trapezoid_fuzzy_time_series,
                                              clear_time_series_table=clear_time_series,
                                              fuzzy_sets=fuzzy_sets["trapezoid"])
                series.show_series_trends(series_trends_table=trapezoid_series_trends,
                                          clear_time_series_table=clear_time_series)
            if f == "tr":
                triangular.add_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["triangular"],
                    name=name
                )
                color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
                fuzzy_colors[name] = color
                triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"], fuzzy_colors=fuzzy_colors,
                                     universal_set=universal_set)
                triangular_accessory_table = triangular.create_accessory_table(fuzzy_sets["triangular"],
                                                                               clear_time_series,
                                                                               universal_set)
                triangular_fuzzy_time_series, triangular_series_trends, triangular_intensity = series.analysis_time_series(
                    triangular_accessory_table, fuzzy_sets["triangular"])
                series.show_fuzzy_time_series(fuzzy_time_series_table=triangular_fuzzy_time_series,
                                              clear_time_series_table=clear_time_series,
                                              fuzzy_sets=fuzzy_sets["triangular"])
                series.show_series_trends(series_trends_table=triangular_series_trends,
                                          clear_time_series_table=clear_time_series)
    if com == "[predict]":
        args = split[1].split(":")[1].replace("[", "").replace("]", "").split(",")
        f = args[0]
        name = args[1]
        x = float(args[2])
        if f == "td":
            q = trapezoid.predict(
                x=x,
                universal_set=universal_set,
                fuzzy_sets=fuzzy_sets["trapezoid"],
                name=name
            )
            color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
            plt.plot(x, q, 'ro', label=split[1], color=color)
            print("\t\t->Принадлежность объкта ", x, " множеству ", name, " = ", q * 100, "%")
            trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"], fuzzy_colors=fuzzy_colors,
                                universal_set=universal_set)
        if f == "tr":
            q = triangular.predict(
                x=x,
                universal_set=universal_set,
                fuzzy_sets=fuzzy_sets["triangular"],
                name=name
            )
            color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
            plt.plot(x, q, 'ro', label=split[1], color=color)
            print("\t\t->Принадлежность объкта ", x, " множеству ", name, " = ", q * 100, "%")
            triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"], fuzzy_colors=fuzzy_colors,
                                 universal_set=universal_set)
    return
Esempio n. 4
0
def input_parser(input_string):
    split = input_string.split(";")
    com = split[0].split(":")[1]
    if com == "[show]":
        args = split[1].split(":")[1].replace("[", "").replace("]", "")
        if args == "all":
            trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"],
                                fuzzy_colors=fuzzy_colors,
                                universal_set=universal_set)
            triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"],
                                 fuzzy_colors=fuzzy_colors,
                                 universal_set=universal_set)
        if args == "td":
            trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"],
                                fuzzy_colors=fuzzy_colors,
                                universal_set=universal_set)
        if args == "tr":
            triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"],
                                 fuzzy_colors=fuzzy_colors,
                                 universal_set=universal_set)
    if com == "[update]" or com == "[add]":
        args = split[1].split(":")[1].replace("[", "").replace("]",
                                                               "").split(",")
        f = args[0]
        name = args[1]
        if com == "[update]":
            if f == "td":
                trapezoid.update_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    d=float(args[5]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["trapezoid"],
                    name=name)
                trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"],
                                    fuzzy_colors=fuzzy_colors,
                                    universal_set=universal_set)
            if f == "tr":
                triangular.update_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["triangular"],
                    name=name)
                triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"],
                                     fuzzy_colors=fuzzy_colors,
                                     universal_set=universal_set)
        if com == "[add]":
            if f == "td":
                trapezoid.add_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    d=float(args[5]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["trapezoid"],
                    name=name)
                color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
                fuzzy_colors[name] = color
                trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"],
                                    fuzzy_colors=fuzzy_colors,
                                    universal_set=universal_set)
            if f == "tr":
                triangular.add_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["triangular"],
                    name=name)
                color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
                fuzzy_colors[name] = color
                triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"],
                                     fuzzy_colors=fuzzy_colors,
                                     universal_set=universal_set)
    if com == "[predict]":
        args = split[1].split(":")[1].replace("[", "").replace("]",
                                                               "").split(",")
        f = args[0]
        name = args[1]
        x = float(args[2])
        if f == "td":
            q = trapezoid.predict(x=x,
                                  universal_set=universal_set,
                                  fuzzy_sets=fuzzy_sets["trapezoid"],
                                  name=name)
            color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
            plt.plot(x, q, 'ro', label=split[1], color=color)
            print("\t\t->Принадлежность объкта ", x, " множеству ", name,
                  " = ", q * 100, "%")
            trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"],
                                fuzzy_colors=fuzzy_colors,
                                universal_set=universal_set)
        if f == "tr":
            q = triangular.predict(x=x,
                                   universal_set=universal_set,
                                   fuzzy_sets=fuzzy_sets["triangular"],
                                   name=name)
            color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
            plt.plot(x, q, 'ro', label=split[1], color=color)
            print("\t\t->Принадлежность объкта ", x, " множеству ", name,
                  " = ", q * 100, "%")
            triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"],
                                 fuzzy_colors=fuzzy_colors,
                                 universal_set=universal_set)
    return
Esempio n. 5
0
def input_parser(input_string):
    global universal_set, \
        fuzzy_sets, scales, \
        fuzzy_colors, trapezoid_accessory_table, \
        trapezoid_fuzzy_time_series, \
        trapezoid_intensity, \
        trapezoid_series_trends, \
        clear_time_series, \
        triangular_accessory_table, \
        triangular_fuzzy_time_series, \
        triangular_series_trends, \
        triangular_intensity
    #
    split = input_string.split(";")
    com = split[0].split(":")[1]
    if com == "[show]":
        args = split[1].split(":")[1].replace("[", "").replace("]", "")
        if args == "all":
            trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"],
                                fuzzy_colors=fuzzy_colors,
                                universal_set=universal_set)
            triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"],
                                 fuzzy_colors=fuzzy_colors,
                                 universal_set=universal_set)
        if args == "td":
            trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"],
                                fuzzy_colors=fuzzy_colors,
                                universal_set=universal_set)
            series.show_fuzzy_time_series(
                fuzzy_time_series_table=trapezoid_fuzzy_time_series,
                clear_time_series_table=clear_time_series,
                fuzzy_sets=fuzzy_sets["trapezoid"])
            series.show_series_trends(
                series_trends_table=trapezoid_series_trends,
                clear_time_series_table=clear_time_series)
        if args == "tr":
            triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"],
                                 fuzzy_colors=fuzzy_colors,
                                 universal_set=universal_set)
            series.show_fuzzy_time_series(
                fuzzy_time_series_table=triangular_fuzzy_time_series,
                clear_time_series_table=clear_time_series,
                fuzzy_sets=fuzzy_sets["triangular"])
            series.show_series_trends(
                series_trends_table=triangular_series_trends,
                clear_time_series_table=clear_time_series)
    if com == "[update]" or com == "[add]":
        args = split[1].split(":")[1].replace("[", "").replace("]",
                                                               "").split(",")
        f = args[0]
        name = args[1]
        if com == "[update]":
            if f == "td":
                trapezoid.update_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    d=float(args[5]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["trapezoid"],
                    name=name)
                trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"],
                                    fuzzy_colors=fuzzy_colors,
                                    universal_set=universal_set)
                trapezoid_accessory_table = trapezoid.create_accessory_table(
                    fuzzy_sets["trapezoid"], clear_time_series, universal_set)
                trapezoid_fuzzy_time_series, trapezoid_series_trends, trapezoid_intensity = series.analysis_time_series(
                    trapezoid_accessory_table, fuzzy_sets["trapezoid"],
                    clear_time_series)
                series.show_fuzzy_time_series(
                    fuzzy_time_series_table=trapezoid_fuzzy_time_series,
                    clear_time_series_table=clear_time_series,
                    fuzzy_sets=fuzzy_sets["trapezoid"])
                series.show_series_trends(
                    series_trends_table=trapezoid_series_trends,
                    clear_time_series_table=clear_time_series)
            if f == "tr":
                triangular.update_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["triangular"],
                    name=name)
                triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"],
                                     fuzzy_colors=fuzzy_colors,
                                     universal_set=universal_set)
                triangular_accessory_table = triangular.create_accessory_table(
                    fuzzy_sets["triangular"], clear_time_series, universal_set)
                triangular_fuzzy_time_series, triangular_series_trends, triangular_intensity = series.analysis_time_series(
                    triangular_accessory_table, fuzzy_sets["triangular"])
                series.show_fuzzy_time_series(
                    fuzzy_time_series_table=triangular_fuzzy_time_series,
                    clear_time_series_table=clear_time_series,
                    fuzzy_sets=fuzzy_sets["triangular"])
                series.show_series_trends(
                    series_trends_table=triangular_series_trends,
                    clear_time_series_table=clear_time_series)
        if com == "[add]":
            if f == "td":
                trapezoid.add_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    d=float(args[5]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["trapezoid"],
                    name=name)
                color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
                fuzzy_colors[name] = color
                trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"],
                                    fuzzy_colors=fuzzy_colors,
                                    universal_set=universal_set)
                trapezoid_accessory_table = trapezoid.create_accessory_table(
                    fuzzy_sets["trapezoid"], clear_time_series, universal_set)
                trapezoid_fuzzy_time_series, trapezoid_series_trends, trapezoid_intensity = series.analysis_time_series(
                    trapezoid_accessory_table, fuzzy_sets["trapezoid"],
                    clear_time_series)
                series.show_fuzzy_time_series(
                    fuzzy_time_series_table=trapezoid_fuzzy_time_series,
                    clear_time_series_table=clear_time_series,
                    fuzzy_sets=fuzzy_sets["trapezoid"])
                series.show_series_trends(
                    series_trends_table=trapezoid_series_trends,
                    clear_time_series_table=clear_time_series)
            if f == "tr":
                triangular.add_rating_linguistic_scale(
                    a=float(args[2]),
                    b=float(args[3]),
                    c=float(args[4]),
                    universal_set=universal_set,
                    fuzzy_sets=fuzzy_sets["triangular"],
                    name=name)
                color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
                fuzzy_colors[name] = color
                triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"],
                                     fuzzy_colors=fuzzy_colors,
                                     universal_set=universal_set)
                triangular_accessory_table = triangular.create_accessory_table(
                    fuzzy_sets["triangular"], clear_time_series, universal_set)
                triangular_fuzzy_time_series, triangular_series_trends, triangular_intensity = series.analysis_time_series(
                    triangular_accessory_table, fuzzy_sets["triangular"])
                series.show_fuzzy_time_series(
                    fuzzy_time_series_table=triangular_fuzzy_time_series,
                    clear_time_series_table=clear_time_series,
                    fuzzy_sets=fuzzy_sets["triangular"])
                series.show_series_trends(
                    series_trends_table=triangular_series_trends,
                    clear_time_series_table=clear_time_series)
    if com == "[predict]":
        args = split[1].split(":")[1].replace("[", "").replace("]",
                                                               "").split(",")
        f = args[0]
        name = args[1]
        x = float(args[2])
        if f == "td":
            q = trapezoid.predict(x=x,
                                  universal_set=universal_set,
                                  fuzzy_sets=fuzzy_sets["trapezoid"],
                                  name=name)
            color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
            plt.plot(x, q, 'ro', label=split[1], color=color)
            print("\t\t->Принадлежность объкта ", x, " множеству ", name,
                  " = ", q * 100, "%")
            trapezoid.show_plot(fuzzy_sets=fuzzy_sets["trapezoid"],
                                fuzzy_colors=fuzzy_colors,
                                universal_set=universal_set)
        if f == "tr":
            q = triangular.predict(x=x,
                                   universal_set=universal_set,
                                   fuzzy_sets=fuzzy_sets["triangular"],
                                   name=name)
            color = "#" + "%06x" % random.randint(0, 0xFFFFFF)
            plt.plot(x, q, 'ro', label=split[1], color=color)
            print("\t\t->Принадлежность объкта ", x, " множеству ", name,
                  " = ", q * 100, "%")
            triangular.show_plot(fuzzy_sets=fuzzy_sets["triangular"],
                                 fuzzy_colors=fuzzy_colors,
                                 universal_set=universal_set)
    return