def get_angles(self) -> Tuple[List[float], List[float]]:
        """
        Finds optimal angles with the quantum variational eigensolver method.

        Stored VQE result

        :returns: A tuple of the beta angles and the gamma angles for the optimal solution.
        """
        stacked_params = np.hstack((self.betas, self.gammas))
        vqe = VQE(self.minimizer, minimizer_args=self.minimizer_args,
                  minimizer_kwargs=self.minimizer_kwargs)
        cost_ham = reduce(lambda x, y: x + y, self.cost_ham)
        # maximizing the cost function!
        param_prog = self.get_parameterized_program()
        result = vqe.vqe_run(param_prog, cost_ham, stacked_params, qc=self.qc,
                             **self.vqe_options)
        self.result = result
        betas = result.x[:self.steps]
        gammas = result.x[self.steps:]
        return betas, gammas
Finds optimal angles with the quantum variational eigensolver method.

        Stored VQE result

        :returns: A tuple of the beta angles and the gamma angles for the optimal solution.