pub struct HardwareAwareQMLOptimizer { /* private fields */ }
Expand description
Main hardware-aware QML optimizer
Implementations§
Source§impl HardwareAwareQMLOptimizer
impl HardwareAwareQMLOptimizer
Sourcepub fn new(config: HardwareAwareConfig) -> Result<Self>
pub fn new(config: HardwareAwareConfig) -> Result<Self>
Create new hardware-aware QML optimizer
Sourcepub fn optimize_qml_circuit(
&mut self,
circuit: &InterfaceCircuit,
training_data: Option<&Array2<f64>>,
) -> Result<HardwareOptimizedCircuit>
pub fn optimize_qml_circuit( &mut self, circuit: &InterfaceCircuit, training_data: Option<&Array2<f64>>, ) -> Result<HardwareOptimizedCircuit>
Optimize QML circuit for target hardware
Sourcepub fn generate_hardware_efficient_ansatz(
&self,
num_qubits: usize,
num_layers: usize,
target_expressivity: f64,
) -> Result<InterfaceCircuit>
pub fn generate_hardware_efficient_ansatz( &self, num_qubits: usize, num_layers: usize, target_expressivity: f64, ) -> Result<InterfaceCircuit>
Generate hardware-efficient ansatz for QML
Sourcepub fn optimize_qml_training(
&mut self,
training_config: &mut QMLIntegrationConfig,
training_data: &Array2<f64>,
) -> Result<()>
pub fn optimize_qml_training( &mut self, training_config: &mut QMLIntegrationConfig, training_data: &Array2<f64>, ) -> Result<()>
Optimize QML training for hardware characteristics
Sourcepub fn monitor_and_adapt(
&mut self,
current_performance: &PerformanceMetrics,
) -> Result<Option<AdaptationAction>>
pub fn monitor_and_adapt( &mut self, current_performance: &PerformanceMetrics, ) -> Result<Option<AdaptationAction>>
Monitor and adapt QML performance in real-time
Sourcepub fn get_cross_device_compatibility(
&self,
source_arch: HardwareArchitecture,
target_arch: HardwareArchitecture,
) -> f64
pub fn get_cross_device_compatibility( &self, source_arch: HardwareArchitecture, target_arch: HardwareArchitecture, ) -> f64
Get cross-device compatibility score
pub fn check_adaptation_trigger( trigger: &AdaptationTrigger, performance: &PerformanceMetrics, ) -> Result<bool>
Sourcepub fn analyze_circuit_public(
&self,
circuit: &InterfaceCircuit,
) -> Result<CircuitAnalysis>
pub fn analyze_circuit_public( &self, circuit: &InterfaceCircuit, ) -> Result<CircuitAnalysis>
Analyze circuit (public version)
Sourcepub fn optimize_qubit_mapping_public(
&self,
circuit: &InterfaceCircuit,
analysis: &CircuitAnalysis,
) -> Result<HashMap<usize, usize>>
pub fn optimize_qubit_mapping_public( &self, circuit: &InterfaceCircuit, analysis: &CircuitAnalysis, ) -> Result<HashMap<usize, usize>>
Optimize qubit mapping (public version)
Sourcepub fn is_gate_directly_executable_public(
&self,
gate_type: &InterfaceGateType,
qubits: &[usize],
) -> bool
pub fn is_gate_directly_executable_public( &self, gate_type: &InterfaceGateType, qubits: &[usize], ) -> bool
Check if gate is directly executable (public version)
Sourcepub fn decompose_or_route_gate_public(
&self,
gate_type: &InterfaceGateType,
qubits: &[usize],
) -> Result<Vec<InterfaceGate>>
pub fn decompose_or_route_gate_public( &self, gate_type: &InterfaceGateType, qubits: &[usize], ) -> Result<Vec<InterfaceGate>>
Decompose or route gate (public version)
Sourcepub fn apply_ibm_optimizations_public(
&self,
circuit: &mut InterfaceCircuit,
) -> Result<()>
pub fn apply_ibm_optimizations_public( &self, circuit: &mut InterfaceCircuit, ) -> Result<()>
Apply IBM optimizations (public version)
Sourcepub fn gates_cancel_public(
&self,
gate1: &InterfaceGate,
gate2: &InterfaceGate,
) -> bool
pub fn gates_cancel_public( &self, gate1: &InterfaceGate, gate2: &InterfaceGate, ) -> bool
Check if gates cancel (public version)
Sourcepub fn estimate_error_rate_public(
&self,
circuit: &InterfaceCircuit,
) -> Result<f64>
pub fn estimate_error_rate_public( &self, circuit: &InterfaceCircuit, ) -> Result<f64>
Estimate error rate (public version)
Sourcepub fn start_performance_monitoring_public(&mut self) -> Result<()>
pub fn start_performance_monitoring_public(&mut self) -> Result<()>
Start performance monitoring (public version)
Sourcepub fn get_performance_monitor(&self) -> &PerformanceMonitoringData
pub fn get_performance_monitor(&self) -> &PerformanceMonitoringData
Get performance monitor reference
Auto Trait Implementations§
impl Freeze for HardwareAwareQMLOptimizer
impl RefUnwindSafe for HardwareAwareQMLOptimizer
impl Send for HardwareAwareQMLOptimizer
impl Sync for HardwareAwareQMLOptimizer
impl Unpin for HardwareAwareQMLOptimizer
impl UnwindSafe for HardwareAwareQMLOptimizer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.