.. _Interface: Interface for Python ================================================ The following section contains the documentation for using the Python interface that allows to set up, run studies and analyze their results. The interface consists of the following Python classes .. currentmodule:: jcmoptimizer .. csv-table:: :header: "Class", "Purpose" :widths: 50, 150 :class:`Server`, "Class for for starting and stopping the optimization server." :class:`Client`, "Class for connecting to server, creating studies, and creating benchmarks." :class:`Study`, "Class for configuring, running and analyzing results of a study" :class:`Observation`, "Container for observations to be sent to the server." :class:`Suggestion`, "Suggestion retrieved by a study to be evaluated." :class:`Driver`, "Interface to driver-specific methods." :class:`Benchmark`, "Class for benchmarking different studies against each other" Benchmark ------------------------------ .. autoclass:: Benchmark add_study ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Benchmark.add_study add_study_results ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Benchmark.add_study_results get_data ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Benchmark.get_data run ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Benchmark.run set_evaluator ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Benchmark.set_evaluator studies ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. autoproperty:: Benchmark.studies Client ------------------------------ .. autoclass:: Client check_server ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Client.check_server create_benchmark ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Client.create_benchmark create_study ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Client.create_study shutdown_server ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Client.shutdown_server shutdown_server_at ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Client.shutdown_server_at Driver ------------------------------ .. autoclass:: Driver describe ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Driver.describe get_state ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Driver.get_state historic_parameter_values ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Driver.historic_parameter_values Observation ------------------------------ .. autoclass:: Observation add ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Observation.add Server ------------------------------ .. autoclass:: Server host ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. autoproperty:: Server.host id ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. autoproperty:: Server.id pid ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. autoproperty:: Server.pid port ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. autoproperty:: Server.port shutdown ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Server.shutdown Study ------------------------------ .. autoclass:: Study add_many ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.add_many add_observation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.add_observation add_observation_data ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.add_observation_data clear_all_suggestions ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.clear_all_suggestions clear_suggestion ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.clear_suggestion configuration ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. autoproperty:: Study.configuration configure ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.configure describe ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.describe driver ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. autoproperty:: Study.driver get_observation_data ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.get_observation_data get_state ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.get_state get_suggestion ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.get_suggestion historic_parameter_values ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.historic_parameter_values is_done ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.is_done new_observation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.new_observation run ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.run set_evaluator ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.set_evaluator start_clock ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. automethod:: Study.start_clock Suggestion ------------------------------ .. autoclass:: Suggestion id ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. autoproperty:: Suggestion.id kwargs ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .. autoproperty:: Suggestion.kwargs