Randomization & Run Sheet

Domain: Desain Eksperimen · SQalytics · Fisher-Yates algorithm + printable run sheet + reproducible seed untuk DOE multi-day

1 Introduksi

1.1 Latar Belakang

Randomization adalah prinsip ketiga dari R-R-B Fisherian (Randomization–Replication–Blocking) yang melindungi eksperimen dari systematic bias dan time-confounding: drift kalibrasi instrumen, fatigue operator, ambient temperature gradient selama hari, atau urutan batch bahan baku (Fisher, 1935; Montgomery, 2017). Tanpa randomization, time-based nuisance masuk ke treatment effect.

Randomization & Run Sheet bertugas mengkonversi design matrix (Plackett-Burman, Factorial, RSM, dst.) menjadi printable run sheet dengan urutan random — siap dibawa ke laboratorium atau dikirim ke production floor.

1.2 Tujuan Modul

Modul Randomization & Run Sheet di SQalytics ditujukan untuk:

1.3 Posisi di Antara Alternatif

Pilih Randomization & Run Sheet setelah design matrix sudah dibuat di modul DOE lain. Untuk design generation, pakai Screening Design Builder, Factorial Design Builder, atau RSM Studio. Untuk blocking dengan restricted randomization, pakai Blocking / Batch Design. Untuk replication study, pakai Replicate & Center Point Checker.

2 Metode

2.1 Dasar Teoretis

Complete randomization: shuffle semua $N$ runs dengan Fisher-Yates algorithm (Knuth, 1997):

  1. For $i$ dari $N-1$ ke $1$:
  2. Pilih $j$ uniformly dari $0$ ke $i$.
  3. Swap $a[i]$ dengan $a[j]$.

Property: setiap permutasi memiliki probability $1/N!$.

Restricted randomization (within-block): shuffle hanya dalam block. Pakai pada RCBD, Latin Square.

Pseudo-random seed: pakai reproducible seed (mis. unix timestamp atau experiment ID) supaya randomization dapat di-replicate untuk audit trail. Modul SQalytics default pakai cryptographic-quality PRNG (Mersenne Twister atau PCG64).

Run sheet template (Box, Hunter, & Hunter, 2005, Appendix):

Col Content Catatan
Run IDUnique identifier (mis. R001)Tracking
Random order1, 2, 3, ... $N$Eksekusi order
Factor levelsDecoded to actual unitsMis. T = 65 °C bukan "0"
Date / Time startTimestampDrift audit
Date / Time endTimestampDuration calculation
Response 1, 2, ...Empty fieldsRecording
OperatorInitialPersonnel audit
NotesCommentsAnomalies

Stratified randomization untuk multi-day: pisahkan $N$ runs ke $k$ blok harian, randomize within day dan randomize day order.

2.2 Persamaan Inti

Fisher-Yates shuffle: $O(N)$ algorithm dengan uniform permutation probability $1/N!$.

Block size: $N_{\text{block}} = N / k$ untuk balanced.

Reproducibility: $\text{seed} = f(\text{experiment ID, date})$ untuk audit replay.

2.3 Asumsi & Batas Validitas

Asumsi Konsekuensi jika dilanggar Cara cek di SQalytics
Randomization actually executed in labTime-based biasOperator training + audit
Seed disimpan untuk reproducibilityCannot replicateModul auto-save seed
Within-block randomization untuk RCBDBlock × order confoundedPakai restricted mode
Run sheet printable + lab-friendlyOperator skip atau mis-recordTabel jelas + space cukup
Long-running experiments di-resume tepatInconsistent randomizationSave state per session

3 Cara Kerja

3.1 Step-by-Step di SQalytics

  1. Buka Randomization & Run Sheet.
  2. Muat design matrix (CSV dari modul DOE atau manual upload).
  3. Pilih randomization type: Complete (default), Within-block (untuk RCBD), Per-day stratified (multi-day).
  4. (Opsional) Atur random seed untuk reproducibility.
  5. (Opsional) Tambahkan kolom kustom (Operator, Response, Notes).
  6. Klik Generate Run Sheet.
  7. Tinjau hasil: Tab Run Sheet — full table dengan randomized order; Tab Decoded Values — factor levels in actual units; Tab Print Preview — formatted untuk PDF.
  8. Ekspor PDF atau CSV.

3.2 Template Tabel Input + Contoh Data Sintetis

Input dari Factorial Design (2³ = 8 run):

Run ID A (T °C) B (Time min) C (Ratio mL/g)
R00150155
R00280155
R00350455
R00480455
R005501520
R006801520
R007504520
R008804520

3.3 Contoh Luaran

Generated run sheet (random seed = 42):

Run order Run ID A (T °C) B (Time min) C (Ratio mL/g) Start End Response Operator Notes
1R005501520__________
2R008804520__________
3R00280155__________
4R007504520__________
5R00150155__________
6R00480455__________
7R006801520__________
8R00350455__________
Kesimpulan ringkas: "Run sheet untuk 8-run factorial dengan seed = 42 (reproducible). Order randomized completely, decoded ke unit aktual (°C, min, mL/g) untuk mudah dibaca operator. Modul juga menyediakan batch resume: bila lab pause setelah run 5 (hari 1), lanjut hari 2 dengan run 6–8 tanpa re-randomize. Audit trail: seed + design matrix saved ke metadata project."
Perbandingan urutan eksperimen unrandomized vs randomized (Fisher-Yates) dengan run sheet printable — grid cells warna gradasi teal-to-amber per faktor level, nomor run italic abu-abu di pojok kiri-atas tiap sel, legend bottom-center
Gambar 1. Visualisasi proses randomization untuk 8-run factorial 2³ (T × Time × Ratio) dengan random seed = 42 (data sintetis). (a) Grid urutan unrandomized (standard order R001–R008): tiap sel menampilkan Run ID dan factor levels; nomor run kecil italic abu-abu di pojok kiri-atas tiap sel tidak mengganggu treatment label utama; warna gradasi teal→amber merepresentasikan level faktor rendah→tinggi. (b) Grid urutan randomized (Fisher-Yates, seed = 42): urutan acak R005, R008, R002, ... — sama persis sel visualization tetapi posisi berubah mengikuti permutasi; gradasi warna memperlihatkan bahwa level faktor terdistribusi merata di seluruh urutan (tidak ada systematic drift). Legend color scale ditempatkan di bottom-center di bawah kedua grid. Audit trail: seed 42 + design matrix tersimpan di metadata project untuk replay. Reproduced via SQalytics Randomization & Run Sheet dari design matrix design_factorial (Fisher, 1935; Knuth, 1997).

4 Kesimpulan

4.1 Relevansi Real-World

4.2 Where to Go from Here

Troubleshooting Cepat

Run sheet panjang sulit dibaca. Pakai PDF landscape orientation; split per page bila > 30 runs.
Operator skip random order. Training + supervisor sign-off; modul auto-flag bila Start time tidak monoton.
Seed lupa disimpan. Modul default save ke metadata; cek Project / Settings.

i Riwayat Revisi

TanggalRevisiPenulis
2026-05-12Migrasi MD v2 → HTML final dengan figure publikasi + caption Elsevier-style (W2 batch 12 Mei)Claude
2026-05-12Draft v2 publikasi (Fisher-Yates + run sheet template + APA Fisher/Montgomery/Knuth)Claude

4 Referensi

  • Fisher, R. A. (1935). The design of experiments. Oliver and Boyd.
  • Montgomery, D. C. (2017). Design and analysis of experiments (9th ed.). John Wiley & Sons.
  • Box, G. E. P., Hunter, J. S., & Hunter, W. G. (2005). Statistics for experimenters: Design, innovation, and discovery (2nd ed.). John Wiley & Sons.
  • Knuth, D. E. (1997). The art of computer programming, Volume 2: Seminumerical algorithms (3rd ed.). Addison-Wesley.