Logo PTIK UNIMA

PTIK UNIMA

Memuat halaman...

Latar Belakang Hero

Algoritma Pencarian

Penjelasan teknik dan algoritma yang digunakan dalam sistem pencarian

Total Pencarian

200

Pencarian Hari Ini

0

Kategori Data

8

Total Data

241

1. Pattern Matching dengan LIKE Query

Algoritma Utama

Menggunakan operator SQL LIKE dengan wildcard %query% untuk mencari substring pada setiap kolom yang dapat ditelusuri.

foreach ($searchableColumns as $column) {
  $q->orWhere($column, 'like', '%' . $query . '%');
}

Kompleksitas

O(n × m)
n = jumlah records, m = jumlah kolom

Kasus Penggunaan

Substring search dalam multiple kolom dengan OR logic

Contoh:

Query: "mahasiswa"

  • ✓ "Program untuk mahasiswa baru"
  • ✓ "Mahasiswa PTIK juara"
  • ✓ "Pertukaran mahasiswa"

2. Relevance Scoring Algorithm

Sistem Penilaian Bertingkat

Setiap hasil pencarian diberi skor berdasarkan tingkat kesesuaian dengan query.

Kondisi Match Score Contoh
Exact Match +100 Query: "ptik" → "ptik"
Starts With +50 Query: "prog" → "program"
Contains +25 Query: "ram" → "program"
Word Match % +(n/total × 10) Query: "mahasiswa ptik" → 2/2 words = +10

Contoh Perhitungan:

Query: "workshop ptik"

Data: "Workshop Web Development PTIK"


  • • Exact match: 0
  • • Starts with "workshop": +50
  • • Contains "ptik": +25
  • • Word match: 2/2 words = +10

Total Score: 85

3. Fuzzy Search (Levenshtein Distance)

Toleransi Kesalahan Ketik

Menggunakan algoritma Levenshtein Distance untuk mengukur jarak edit minimum antara 2 string.

✏️

Sisip

Tambah karakter

🗑️

Hapus

Hapus karakter

🔄

Ganti

Ganti karakter

Contoh Typo Correction:

mahasisw mahasiswa Jarak: 1
progam program Jarak: 1
acra acara Jarak: 1

Threshold: Sistem menerima hasil dengan distance <= 2, artinya maksimal 2 operasi edit untuk mengoreksi typo.

4. "Did You Mean" Suggestions

Smart Query Correction

Memberikan saran alternatif pencarian ketika hasil rendah atau tidak ditemukan, menggunakan kombinasi 3 algoritma similarity untuk akurasi maksimal.

Multi-Algorithm Similarity:

1. Similar Text Algorithm 40% bobot

Menghitung persentase kesamaan karakter antar string

2. Levenshtein Distance 40% bobot

Mengukur jarak edit minimum (normalized)

3. Word Overlap Score 20% bobot

Menghitung kata yang sama dalam kedua query

Contoh "Did You Mean":

progam studi program studi 95% kecocokan

Typo detection: 1 karakter salah

mahasisw mahasiswa 92% kecocokan

Missing character: a di akhir

pendftaran pendaftaran 88% kecocokan

Missing character: a di tengah

Sumber Data

  • • Pencarian populer (riwayat)
  • • Konten dari database
  • • Difilter berdasarkan hasil > 0

Threshold

  • • Populer: kesamaan > 60%
  • • Konten: kesamaan > 65%
  • • Maksimal saran: 3

Kapan muncul: Saran "Did You Mean" ditampilkan ketika hasil pencarian < 3 atau tidak ada hasil sama sekali, membantu user menemukan apa yang mereka cari meskipun ada typo.

5. Penemuan Pencarian Terkait

Query Expansion & Discovery

Menemukan pencarian terkait yang memiliki kata kunci yang sama dengan query user, membantu discovery dan eksplorasi konten.

Algoritma Related Searches:

  1. 1
    Word Extraction: Extract words dari query user explode(' ', $query)
  2. 2
    Search History: Query searches dengan results > 0 dan count > 1
  3. 3
    Pencocokan Kata: Hitung common words dengan array_intersect()
  4. 4
    Peringkat: Urutkan berdasarkan jumlah kata umum -> popularitas pencarian

Contoh Related Searches:

User mencari: "pendaftaran"

pendaftaran mahasiswa baru 45x dicari
syarat pendaftaran s1 32x dicari
jadwal pendaftaran 28x dicari

User mencari: "dosen ptik"

dosen ptik unima 38x dicari
profil dosen ptik 25x dicari

Manfaat

  • • Penemuan konten
  • • Penyempurnaan query
  • • Peningkatan keterlibatan pengguna
  • • Mengurangi bounce rate

Konfigurasi

  • • Minimal kata umum: >= 1
  • • Minimal jumlah pencarian: > 1
  • • Maksimal hasil: 5
  • • Harus memiliki hasil > 0

6. Trending Topics Analysis

Real-time Trending Detection

Menganalisis pola pencarian dalam periode waktu tertentu untuk menemukan topik yang sedang trending dan populer di kalangan users.

Trending Algorithm:

Time Window

Analisis pencarian dalam 7 hari terakhir (configurable)

Frequency Analysis

GROUP BY query + COUNT(*) untuk menghitung frekuensi

Quality Filter

Minimal 3x searches dengan results > 0

Ranking

ORDER BY search_count DESC

Contoh Trending This Week:

1

wisuda 2025

45 searches • ~12 avg results

2

beasiswa

38 searches • ~8 avg results

3

program pertukaran mahasiswa

29 searches • ~15 avg results

Time Window

7 hari

Min Frequency

Top Results

10

Use Case: Trending topics membantu users discover konten populer, meningkatkan engagement, dan memberikan insight tentang apa yang sedang dicari users saat ini.

7. Autocomplete (Prefix Matching)

Real-time Suggestions

Menggunakan pola prefix matching untuk mencari kata yang dimulai dengan input user.

Sumber 1: Search History

Saran berdasarkan pencarian sebelumnya (user behavior)

Sumber 2: Actual Content

Saran dari konten yang ada di database

Contoh Autocomplete:

Input: "prog"

program studi ptik riwayat
programming competition berita
program kerja sama acara

8. Voice Search (Web Speech API)

Hands-Free Search Experience

Menggunakan Web Speech API untuk mengkonversi suara user menjadi text query, memberikan pengalaman pencarian yang lebih accessible dan modern.

Teknologi & API:

Web Speech API

SpeechRecognition atau webkitSpeechRecognition

Language Support

Configured for Indonesian language: lang: 'id-ID'

Real-time Processing

Instant speech-to-text conversion dengan visual feedback

Cara Kerja Voice Search:

1
Pengguna klik ikon mikrofon

Tombol berubah merah dan mulai mendengarkan

2
Pengenalan Suara aktif

Sistem menangkap audio dari mikrofon

3
Konversi Suara ke Teks

Audio dikonversi menjadi transkrip teks

4
Mengisi kotak pencarian otomatis

Transkrip teks masuk ke kolom input

5
Memicu pelengkapan otomatis

Saran muncul secara otomatis

Penanganan Error:

no-speech

Tidak ada suara terdeteksi

not-allowed

Akses mikrofon ditolak

network

Kesalahan koneksi internet

Dukungan Browser

Chrome, Edge, Safari

Aksesibilitas

Pencarian bebas genggam

Performa

Pemrosesan real-time

Benefits: Voice search meningkatkan accessibility untuk users dengan disabilities, memberikan pengalaman mobile yang lebih baik, dan mempercepat proses pencarian tanpa perlu mengetik.

Cakupan Data Pencarian

News

9

records

Blogs

5

records

Events

5

records

Announcements

9

records

Lecturers

35

records

Testimonials

4

records

Student Works

9

records

Kerja Sama

165

records

Total: Sistem mencari di 241 records dari 8 kategori yang berbeda.

Ringkasan Performa

Fitur Algoritma Kompleksitas Use Case
Pencarian Utama Pattern Matching (LIKE) O(n×m) Pencarian substring
Relevansi Weighted Scoring O(n×m×k) Peringkat hasil
Fuzzy Search Levenshtein Distance O(n×m²) Toleransi typo
Did You Mean Multi-Similarity (3 algos) O(n×m) Koreksi query
Related Searches Word Overlap + Ranking O(n×k) Ekspansi query
Trending Topics Frequency Analysis O(n log n) Pelacakan popularitas
Autocomplete Prefix Matching O(log n) Saran real-time
Voice Search Web Speech API O(1) Ucapan-ke-teks

Kelebihan Sistem

  • User-Friendly dengan toleransi typo
  • Hasil relevan dengan scoring algorithm
  • Smart suggestions dengan "Did You Mean"
  • Content discovery via Related Searches
  • Real-time trending topics tracking
  • Voice search untuk accessibility
  • Hands-free search experience
  • Cepat dengan database optimization
  • Scalable dan mudah dikembangkan

Analytics & Tracking

  • Logging setiap pencarian
  • Popular & trending searches
  • Zero result tracking
  • User behavior analysis

Coba Fitur Pencarian

Jelajahi sistem pencarian kami yang powerful dengan berbagai algoritma untuk hasil terbaik

Mulai Mencari

PTIK Assistant

Online • Siap membantu

Halo! 👋

Saya asisten virtual PTIK. Ada yang bisa saya bantu?

Percakapan Anda aman