Back to home page

EIC code displayed by LXR

 
 

    


Warning, /AID2E-framework/examples/epic/b0/configurations/b0_ax_slurm.yml is written in an unsupported language. File is not indexed.

0001 # ============================================================================
0002 # ePIC B0 Far-Forward Tracker Optimization with Ax and Slurm
0003 # ============================================================================
0004 # This example shows:
0005 #   B0 tracker geometry optimization with Ax
0006 #   Four longitudinal tracker positions as design parameters
0007 #   ePIC geometry preparation for each design point
0008 #   Distributed execution using Slurm
0009 # ============================================================================
0010 
0011 # SECTION 1: PROBLEM DEFINITION
0012 # ============================================================================
0013 problem:
0014   name: "ePIC B0 Geometry Optimization with Ax and Slurm"
0015   problem_type: "EPIC_B0"
0016 
0017   output_location: "./output/ax_slurm"
0018   work_location: "./work/ax_slurm"
0019 
0020   # eic-shell and ePIC paths to be adapted to environment
0021   epic_environment:
0022     eic_shell: "/path/to/my/eic-shell"
0023     epic_install: "./epic"
0024     epic_config: "epic"
0025     geometry_mode: "build"
0026 
0027   inline_design:
0028     epic_design_space:
0029       epic_design_parameters:
0030 
0031         b0_tracker:
0032           file_path: "$EPIC_INSTALL/compact/far_forward/B0_tracker.xml"
0033 
0034           parameters:
0035 
0036             z1:
0037               value: -50.0
0038               bounds: [-50.0, -30.0]
0039               xml_path: ".//constant[@name='B0TrackerLayer1_zstart']"
0040               attribute: "value"
0041               unit: "cm"
0042 
0043             z2:
0044               value: -20.0
0045               bounds: [-20.0, -5.0]
0046               xml_path: ".//constant[@name='B0TrackerLayer2_zstart']"
0047               attribute: "value"
0048               unit: "cm"
0049 
0050             z3:
0051               value: 0.0
0052               bounds: [0.0, 20.0]
0053               xml_path: ".//constant[@name='B0TrackerLayer3_zstart']"
0054               attribute: "value"
0055               unit: "cm"
0056 
0057             z4:
0058               value: 30.0
0059               bounds: [30.0, 40.0]
0060               xml_path: ".//constant[@name='B0TrackerLayer4_zstart']"
0061               attribute: "value"
0062               unit: "cm"
0063 
0064       optimization_groups:
0065         default:
0066           - "b0_tracker.z1"
0067           - "b0_tracker.z2"
0068           - "b0_tracker.z3"
0069           - "b0_tracker.z4"
0070 
0071   objectives:
0072     - name: "lever_arm"
0073       direction: "maximize"
0074 
0075 
0076 # SECTION 2: OPTIMIZER CONFIGURATION
0077 # ============================================================================
0078 optimizer:
0079   name: "ax"
0080   type: "bayesian"
0081 
0082   parameters:
0083     initialization_strategy: "sobol"
0084     generator: "BOTORCH_MODULAR"
0085 
0086     n_initial_samples: 1
0087     n_iterations: 2
0088     batch_size: 1
0089     seed: 42
0090 
0091 
0092 # SECTION 3: SCHEDULER CONFIGURATION (iFarm)
0093 # ============================================================================
0094 scheduler:
0095   runner_type: "SlurmRunner"
0096 
0097   parameters:
0098     partition: "production"
0099     ntasks: 1
0100     cpus_per_task: 1
0101     mem: "4GB"
0102     time: "02:00:00"
0103 
0104     job_name_prefix: "aid2e_b0"
0105     runtime_working_dir: "."
0106 
0107     poll_interval: 5
0108 
0109   max_retries: 3
0110   output_location: "./slurm_output"
0111   monitor_interval: 60
0112 
0113 
0114 # SECTION 4: WORKFLOW EXECUTION
0115 # ============================================================================
0116 workflows:
0117   workflows:
0118 
0119     - name: "b0_geometry_validation"
0120       description: "Validate distributed B0 geometry modification with Slurm"
0121 
0122       stack_type: "epic"
0123 
0124       branches:
0125 
0126         - name: "main"
0127 
0128           stages:
0129 
0130             # --------------------------------------------------------------
0131             # Stage 1: prepare and validate the modified ePIC geometry
0132             # --------------------------------------------------------------
0133             - name: "geo"
0134               description: "Prepare and validate modified B0 geometry"
0135 
0136               jobs:
0137 
0138                 - name: "geo_job"
0139 
0140                   payload:
0141                     evaluator_type: "stack"
0142                     stack_type: "epic"
0143                     job_id: "geo"
0144 
0145                   layers:
0146 
0147                     - name: "geo"
0148                       layer: "geo"
0149 
0150                       inputs:
0151                         - "{{geometry_dir}}/install/share/epic/epic.xml"
0152 
0153                       outputs:
0154                         - "{{output_dir}}/geo.overlaps.txt"
0155 
0156               parallelism:
0157                 max_concurrent: 1
0158                 retry_max: 1
0159                 timeout_sec: 300
0160 
0161 
0162             # --------------------------------------------------------------
0163             # Stage 2: evaluate the B0 objective
0164             # --------------------------------------------------------------
0165             - name: "evaluate"
0166 
0167               objective_plan:
0168                 steps:
0169                   stages:
0170 
0171                     - name: "evaluate_b0"
0172 
0173                       inline:
0174                         entrypoint: "examples.epic.b0.b0_evaluator:objective_payload"
0175 
0176                       produces_objective: true
0177 
0178 
0179 # SECTION 5: METADATA
0180 # ============================================================================
0181 metadata:
0182   project: "AID2E"
0183   detector: "ePIC B0 Far-Forward Tracker"
0184   description: "B0 geometry optimization using Ax and Slurm"
0185   version: "0.0.1"