A verifiable quantum advantage towards real world applications: Quantum Echoes 
Learn more
         
     
  
  
  
  
  
    
      cirq_google.workflow.RandomDevicePlacer
  
      
    
  
  
  
  
  
    
  
  
    
    
Inherits From: QubitPlacer
cirq_google.workflow.RandomDevicePlacer(
    topo_node_to_qubit_func: Callable[[Any], cirq.Qid] = cirq_google.workflow.qubit_placement.default_topo_node_to_qubit
)
| Args | 
|---|
| topo_node_to_qubit_func | A function that maps from cirq.NamedTopologynodes
tocirq.Qid. There is a correspondence between nodes and the "abstract" Qids
used to construct the un-placed circuit.cirq.get_placementsreturns a dictionary
mapping from node to Qid. We use this function to transform it into a mapping
from "abstract" Qid to device Qid. By default: nodes which are tuples correspond
tocirq.GridQubits; otherwisecirq.LineQubit. | 
Methods
place_circuit
View source
place_circuit(
    circuit: cirq.AbstractCircuit,
    problem_topology: cirq.NamedTopology,
    shared_rt_info: cg.SharedRuntimeInfo,
    rs: np.random.RandomState
) -> tuple[cirq.FrozenCircuit, dict[Any, cirq.Qid]]
Place a circuit with a given topology onto a device via cirq.get_placements with randomized selection of the placement each time.
This requires device information to be present in shared_rt_info.
| Args | 
|---|
| circuit | The circuit. | 
| problem_topology | The topologies (i.e. connectivity) of the circuit. | 
| shared_rt_info | A cg.SharedRuntimeInfoobject that contains adeviceattribute
of typecirq.Deviceto enable placement. | 
| rs | A RandomStateas a source of randomness for random placements. | 
| Returns | 
|---|
| A tuple of a new frozen circuit with the qubits placed and a mapping from input
qubits or nodes to output qubits. | 
| Raises | 
|---|
| ValueError | If shared_rt_infodoes not have a device field. | 
__eq__
View source
__eq__(
    other
)
Return self==value.
  
  
 
  
    
    
      
    
    
  
       
    
    
  
  
  Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
  Last updated 2025-08-14 UTC.
  
  
  
    
      [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-14 UTC."],[],[]]