Algoritma Carian Rawak (Random Search) dalam PHP: Diterangkan dengan Contoh

Algoritma Carian Rawak ialah pendekatan penting dalam pengaturcaraan PHP, digunakan untuk meneroka ruang carian dengan memilih penyelesaian secara rawak dan menilainya. Matlamat algoritma ini adalah untuk mencari penyelesaian yang berpotensi dalam ruang carian.

Bagaimana Algoritma Carian Rawak Berfungsi

Algoritma Carian Rawak bermula dengan memilih satu set penyelesaian secara rawak daripada ruang carian. Ia kemudian menilai kualiti penyelesaian menggunakan fungsi penilaian. Algoritma mungkin mengulangi proses ini beberapa kali untuk mencari penyelesaian yang berpotensi lebih baik.

Kelebihan dan Kelemahan Algoritma Carian Rawak

Kelebihan:

  • Ruang Penerokaan Luas: Algoritma ini mempunyai keupayaan untuk meneroka pelbagai ruang carian dengan menilai pelbagai penyelesaian.
  • Mudah Dilaksanakan: Algoritma Carian Rawak secara amnya mudah dilaksanakan dan tidak memerlukan kepakaran yang meluas.

Kelemahan:

  • Kekurangan Jaminan Pengoptimuman Global: Algoritma ini mungkin tidak menemui penyelesaian optimum secara global dan cenderung memfokuskan pada penyelesaian yang lebih dekat dengan kedudukan awal.
  • Memakan Masa: Algoritma Carian Rawak boleh memakan masa kerana ia perlu menilai pelbagai penyelesaian.

Contoh dan Penerangan

Pertimbangkan contoh mencari nombor perdana dalam julat tertentu menggunakan Algoritma Carian Rawak dalam PHP.

function randomSearch($min, $max, $numTrials) {  
    for($i = 0; $i < $numTrials; $i++) {  
        $randomNumber = rand($min, $max);  
        if(isPrime($randomNumber)) {  
            return $randomNumber;  
        }  
    }  
    return "No prime found in the given range.";  
}  
  
function isPrime($num) {  
    if($num <= 1) {  
        return false;  
    }  
    for($i = 2; $i <= sqrt($num); $i++) {  
        if($num % $i === 0) {  
            return false;  
        }  
    }  
    return true;  
}  
  
$min = 100;  
$max = 1000;  
$numTrials = 50;  
  
$primeNumber = randomSearch($min, $max, $numTrials);  
echo "Random prime number found: $primeNumber";  

Dalam contoh ini, kami menggunakan Algoritma Carian Rawak untuk mencari nombor perdana dalam julat dari 100 hingga 1000. Algoritma secara rawak memilih nombor daripada julat ini dan menyemak sama ada nombor perdana menggunakan fungsi tersebut isPrime. Hasilnya ialah nombor perdana yang ditemui secara rawak dalam julat yang ditentukan.

Walaupun contoh ini menunjukkan cara Algoritma Carian Rawak boleh digunakan untuk meneroka ruang carian yang luas, ia juga boleh digunakan untuk masalah pengoptimuman lain dalam PHP.