diff --git a/Code/generate_claimed_results.py b/Code/generate_claimed_results.py new file mode 100644 index 0000000..0df4c88 --- /dev/null +++ b/Code/generate_claimed_results.py @@ -0,0 +1,69 @@ +import logging +import pathlib +import configparser +from tabulate import tabulate +from pathlib import Path + +from Code.S_run_aifeynman import run_aifeynman + + + +class RunAll: + """ + Run the solver on all the whole dataset + """ + + def __init__(self, *, cfg_path: Path): + logging.basicConfig(filename="output.log", level=logging.DEBUG) + self.config = configparser.ConfigParser() + self.config.read(cfg_path) + self.cfg = self.config["Default"] + self.print_results() + self.results = {} + + + self.run_solver() + + def log_results(self): + pass + + def print_results(self): + table = [ + ["foo", 696000, 1989100000], + ["bar", 6371, 5973.6], + ["baz", 1737, 73.5], + ["qux", 3390, 641.85], + ] + print(tabulate( + table, + headers=[ + "Average error", + "Cumulative error", + "Error", + "Symbolic expression", + ], + ) + ) + + def run_solver(self): + path = Path(self.cfg["dataset_path"]) + for child in path.iterdir(): + self.results[str(child).split("/")[-1]] = run_aifeynman( + pathdir="/home/aziz/lambda_lab/AI-Feynman/example_data/",#str(path.resolve()) + "/", + filename="example2.txt",#str(child).split("/")[-1], + BF_try_time=int(self.cfg["bruteforce_time"]), + BF_ops_file_type=Path(self.cfg["operations_file"]), + polyfit_deg=int(self.cfg["polynomial_degree"]), + NN_epochs=int(self.cfg["number_of_epochs"]), + vars_name=[], + test_percentage=int(self.cfg["test_percentage"]), + ) + logging.info(self.results) + break + +if __name__ == "__main__": + cfg_path = pathlib.Path("/home/aziz/lambda_lab/AI-Feynman/configs.cfg") + if cfg_path.exists(): + RunAll(cfg_path=cfg_path) + else: + print(f"No such a file {cfg_path}")