Skip to main content

Haiqu.pretrain(problem, *, max_time=60, seed=42, initial_parameters=None, name=None, description=None)

Pretrain parameters for a variational quantum circuit to minimize the expectation value of input observable.
  • Parameters:
    • problem (VariationalProblem) — problem instance containing the ansatz circuit and observable.
    • max_time (float) — maximal time (in seconds) the pretraining can take. If this time exceeds (not counting initialization and other overheads), then the current best result is returned. Defaults to 1 minute. Current maximal pretraining time is 15 minutes.
    • seed (int *|*None) — a seed for initial random initialization of weights. They are chosen from uniform distribution in the interval [-π,π). Defaults to 42.
    • initial_parameters (list *[*float ] *|*None) — if specified, then these weights are used instead of random ones. Defaults to None.
    • name (str *|*None) — optional name of the job. If not set, then automatic will be generated.
    • description (str *|*None) — optional description of the job. If not set, then automatic will be generated.
  • Returns: Job handle to track pretraining progress and retrieve results. : Call job.result() to retrieve the pretrained ansatz parameters as a list[float] (one entry per parameter in the input VariationalProblem.ansatz), suitable for use as parameters in run() or as initial_parameters in variational_optimization(). Run help(job.result) for the full description of result and info contents.
  • Return type: PretrainingJobModel

Examples