Kisah Unik Matematikawan Dodgson – Dodgson Condensation

Membaca tulisan yang membahas seorang ahli matematika abad 19, Reverend Charles Lutwidge Dodgson (1832-1898) cukup menarik juga. Ahli matematika ini ternyata menulis cerita terkenal “Alice in Wonderland” dan “Through the Looking Glass” dengan nama samaran Lewis Carroll. Dikisahkan bahwa Ratu Victoria ternyata kagum dengan cerita “Alice in Wonderland” sehingga ketika selesai membaca dia meminta bawahannya untuk membawakan buku karangan Lewis Carroll (yang nama aslinya Dodgson) yang lain. Tidak berapa lama kemudian tibalah bawahannya tersebut dengan membawa buku Dodgson yang berjudul “Elementary Theorems Relating to Determinants” yang ternyata buku matematika .. haha.

Metode Kondensasi Dodgson

Metode terkenal ini sangat ampuh untuk menghitung determinan matriks dengan jumlah baris dan kolom yang banyak. Tentu saja penting di jaman dulu ketika komputer (atau minimal kalkulator) belum ditemukan. Postingan ini sedikit banyak membahas metode ini, sebagai kelanjutan post terdahulu tentang invers matriks 4×4.

Misal sebuah matriks A dengan ukuran lebih besar atau sama dengan 3×3 dengan matriks dalam (interior matrix) menyatakan matriks (n-2)x(n-2) hasil penghilangan baris awal, akhir dan kolom awal serta akhir (kalau pusing, langsung loncat ke contoh kasus di bawah ya). Metode kondensasi Dodgson terdiri dari empat langkah/tahap antara lain:

  • Gunakan metode operasi baris dan kolom untuk menghilangkan nol dari matriks dalam (interior).
  • Cari determinan matriks 2×2 untuk tiap-tiap empat elemen untuk membentuk matriks baru berukuran lebih kecil (n-1)x(n-1), misalnya diberi nama matriks B.
  • Ulangi langkah sebelumnya untuk matriks (n-2)x(n-2) lalu bagi tiap elemen menurut interior original matriks A, untuk memperoleh matriks C.
  • Lanjutkan terus “kondensasi” di atas sampai hasil satuan ditemukan. Nilai ini merupakan determinan dari matriks A.

Sebagai ilustrasi ada baiknya menggunakan contoh kasus. Lebih mudah khususnya orang teknik yang suka praktis-praktis seperti saya, hehe. Diketahui matriks A.

Karena tidak ada nol di interior, langsung ke langkah 2 untuk mencari matriks B hasil penentuan determinan. Misalnya untuk sisi kiri atas serta sampingnya.

Lanjutkan hingga seluruh matriks A sehingga matriks B dari tahap kedua adalah sebagai berikut:

Tampak matriks A berukuran 5×5 menjadi (5-1)x(5-1) di atas. Tahap ketiga selanjutnya meneruskan kondensasi menghasilkan matriks 3×3, misalnya untuk bagian kiri atas.

Teruskan untuk sisi-sisi lainnya sehingga diperoleh matriks C

Lanjutkan dengan cara yang sama hingga menjadi matriks D. Di sini istilah kondensasi sepertinya ada benarnya. Ibarat embun yang timbul dari uap air yang terkumpul di udara.

Nah berikutnya adalah membagi matriks terakhir D ini (terkecil) dengan interior dari Matriks B yakni:

Tiap elemen matriks D dibagi mengikuti posisi int B, misalnya -84 dibagi -6, -580 dibagi 2, dan seterusnya hingga diperoleh matriks E:

Dengan mudah kita menghitung determinan matriks E ini dengan cara biasa det=14*(-109)-421*(-290) yang menghasilkan 120564. Apakah sudah selesai? Belum, dikit lagi yaitu membagi nilai tersebut dengan interion matriks C yang bernilai 36. Dan hasil akhirnya adalah 3349. Sekian semoga bermanfaat.

 

Iklan

Mengubah Text Box Pada Form Ms Access 2013 menjadi Combo Box

[basis.data|akuntansi|lab.soft|u.t.s]

Form merupakan salah satu aplikasi untuk berinteraksi dengan basis data. Dalam penerapannya, pengguna tidak seharusnya mengisi data lewat Database Management System (DBMS) yang memang hanya level administrator yang boleh membukanya. Oleh karena itu perancangan Graphic User Interface (GUI) dalam bentuk form sangat menentukan tingkat user friendly dari aplikasi yang dibuat. Postingan ini kelanjutan dari post sebelumnya tentang pembuatan FORM. Di sini ada sedikit tambahan bagaimana dalam menginput data, khususnya isian berupa primary key harus sesuai dengan yang ada di basis data. Di bawah ini merupakan relasi mahasiswa yang mengambil perkuliahan pada tabel jadwal. Ketika mengisi KRS maka mahasiswa menjadwalkan perkuliahan lebih dari satu kelas.

Membuat Form

Anggap kita sudah membuat form transaksi KRS lewat Form Wizard yang disediakan oleh Ms Access. Pastikan mahasiswa menjadi form utama sementara kelas-kelas yang harus diambil adalah sub-formnya.

Mengkonversi Text Box Menjadi Combo Box

Pada bagian text box yang akan dirubah menjadi combo box klik kanan dan pilih Change to – pilih Combo box. Jika dijalankan lewat mode View (di pojok kiri atas pada menu home) akan tampak combo box di salah satu field, misalnya dalam contoh ini kode. Hanya saja masih kosong dan perlu diset lebih lanjut.

 

Mengeset Row Source

Untuk mengeset isian dari combo box dengan cara mengisi field pada tabel yang sesuai lewat Property. Jalankan property dengan mengklik kanan pada text box dan pilih form property. Cara yang lebih cepat adalah dengan menekan alt + enter.

Jalankan form yang baru saja dirancang, lalu coba combo box yang baru saja dibuat. Pastikan seluruh kode kelas yang ada di tabel tampak di combo box. Berbeda dengan List Box, combo box bisa mengisi tanpa memilih, alias menambah baru. Dengan combo box, kode kelas yang diisi pasti sudah terdaftar di tabel kelas. Demikian pula informasi tentang kelas tersebut langsung muncul di isian, misalnya nama dosen pengampu mata kuliah dan lain-lainnya. Sekian semoga bermanfaat.

 

Membuat Sitasi dan Daftar Pustaka Otomatis pada MS Word

[komputer.1|manajemen|lab.sainstech|pert.7]

Saat ini Mendeley merupakan alat sitasi otomatis yang banyak digunakan oleh peneliti-peneliti di seluruh dunia. Tetapi jika tidak sempat membuat akun Mendeley, gunakan saja fasilitas yang ada di Microsoft Word. Perhatikan menu RERENCES di bawah ini, khususnya pada bagian Citation.

Manage Sources

Langkah pertama untuk membuat sumber sitasi adalah mengisi sumber sitasi pada Manage Sources. Isi jenis sitasinya: buku, jurnal, laporan, dan lain-lain. Untuk pengarang, gunakan format <last_name>, <first_name>, <middle_name>.

Tekan New jika ingin menambahkan satu sumber (1). Pastikan tipe sumber sesuai (2), jika tidak pilih yang sesuai. Isi data-data tulisan secara lengkap (3). Tekan OK jika sudah selesai. Berikut cara menyisipkan sitasi di tulisan.

Arahkan kursor di lokasi tempat sitasi berada, misalnya setelah kata “Menurut”. Pilih References Insert Citation – pilih nama pengarang yang akan disitasi. Maka secara otomatis Word akan mengisi (Sunandar, 2017). Praktis bukan? Bahkan jika ingin merubah Style (defaultnya APA), format akan berubah juga. Coba ganti style menjadi IEEE, maka format akan berubah seperti di bawah ini (format angka).

Membuat Reference Otomatis

Jika sudah selesai mensitasi, di akhir tulisan dapat ditambahkan daftar pustaka. Caranya adalah dengan meletakan kursor di bagian bawah tulisan lalu tekan References Bibliography dan pilih yang sesuai/diinginkan.

Pastikan muncul daftar pustakan yang diinginkan beserta formatnya. Selamat mencoba. Tapi sangat disarankan menggunakan Mendeley.

Deteksi Warna Komposit dengan Matlab

[peng.citra|t.kom|lab.hardware|pert.7]

Warna dasar RGB adalah Red, Green, dan Blue yang masing-masing menyatakan nilai maksimal komposisinya yaitu 255. Misalnya warna merah, maka matriks-nya sebesar [255 0 0], begitu juga untuk warna hijau dan biru, masing-masing [0 255 0] dan [0 0 255]. Bagaimana cara mendeteksi warna-warna komposit yang bukan merupakan warna dasar seperti kuning, jingga, dan lain-lain? Postingan kali ini sedikit menjelaskan cara mendeteksinya dengan menggunakan jarak Euclidean.

Standar Warna RGB

Standar warna RGB banyak diterapkan pada image processing. Standar ini menggunakan warna merah, hijau dan biru sebagai patokan warna-warna lainnya. Warna lainnya dapat dibuat dengan menggabungkan proporsi warna merah, hijau, dan biru tersebut. Berikut standar warna selain merah, hijau, dan biru.

Tabel di atas juga menyertakan paduan standar Cyan, Magenta, Yelow, dan Black (CMYK) dan HSV. Sebagai kelanjutan Pert 6 yang lalu, di sini kita menerapkan deteksi warna dengan jarak Euclidean.

Praktek dengan GUI

Tambahkan kode tambahan di tombol deteksi warna (Euclidean) karena bukan hanya R, G, dan B, melainkan beberapa warna lain misalnya kuning, oranye, dan hitam.

Tambahkan tiga jarak baru yaitu dY, dO, dan dK untuk jarak terhadap kuning, oranye dan hitam. Untuk memudahkan penentuan jarak terdekat gunakan fungsi min disertai dengan indeksnya. Indeks dapat diketahui dengan membuat sebuah vektor berisi warna-warna dari merah hingga hitam. Sehingga ketika nilai minimum diketahui, diketahui pula indeksnya. Warna dapat diketahui berdasarkan indeks-nya dari vektor warna.


  • dR=norm(warna-[255 0 0])
  • dH=norm(warna-[0 255 0])
  • dB=norm(warna-[0 0 255])
  • dY=norm(warna-[255 255 0])
  • dO=norm(warna-[255 127 0])
  • dK=norm(warna-[0 0 0])
  • hasil=[dR dH dB dY dO dK]
  • % mencari jarak terkecil
  • strwarna={‘merah’
    ‘hijau’
    ‘biru’
    ‘kuning’
    ‘jingga’
    ‘hitam’}

  • [minimum,indeks]=min(hasil)
  • outwarna=strwarna(indeks)
  • set(handles.edit4,‘String’,outwarna)

Coba uji dengan memasukan data sesuai warnanya, misalnya kuning, oranye dan hitam. Coba uji pula dengan warna yang tidak terlalu hitam (abu-abu), atau tidak terlalu kuning. Sistem akan mencoba mendekati dengan warna-warna standar yang ada (R,G,B, plus kuning, orange dan hitam). Semoga bermanfaat.

Mail Merge Untuk Surat Berantai

[komp.1|manajemen|lab.sainstech|pert.6]

Surat berantai adalah surat yang ditujukan untuk beberapa orang dengan isi yang sama. Biasanya surat undangan atau pemberitahuan. Surat tersebut hanya diketik sekali, tetapi Microsoft Word akan memberikan kepada/tujuan yang berbeda tiap kali surat tersebut dicetak. Misalnya akan dibuat surat undangan ke seluruh ketua jurusan sebanyak enam orang, maka dengan layanan mail merge dengan satu surat dihasilkan enam surat dengan tujuan yang berbeda. Postingan ini membahas bagaimana membuatnya.

Membuat Surat

Pertama-tama siapkan terlebih dahulu surat yang akan dikirim berantai (lihat pert 5 untuk jenis-jenis surat). Di bawah ini kosongkan tujuan, jabatan, serta alamatnya.

Membuat Daftar Penerima

Daftar penerima dapat dibuat dengan aplikasi Microsoft Excel. Buat daftar enam penerima tersebut berisi kolom panggilan, nama, jabatan, dan alamat. Di sini panggilan untuk membedakan bapak/ibu atau Dr/Prof.

Selanjutnya file Excel yang berisi nama penerima tersebut disimpan di folder yang sama dengan file word surat. Jika sudah, masuk ke menu Mailings Start Mail Merge Step-by-Step MM Wizard.

Perhatikan sisi kanan bawah. Tampak indikator langkah ke berapa. Lanjutkan hingga langkah ke enam, dimulai dari pemilihan file excel berisi penerima.

Di langkah ketiga Anda akan diminta memilih list. Arahkan ke file Excel yang baru saja kita buat.

Silahkan pilih siapa saja yang akan dikirim file-nya. Atau centang semua jika memang semua orang akan dikirim surat.

Tahap berikutnya mengisi field yang dituju dengan data penerima. Perhatikan penempatan mouse/kursor di tempat yang sesuai dilanjutkan menekan data isian.

Tahap kelima adalah memastikan tujuan surat sudah sesuai dengan yang diinginkan. Selamat mencoba.

Gaya Surat Menyurat

[komp.1|manajemen|lab.sainstech|pert.5]

Ada beragam style surat-menyurat dari yang jadul hingga yang modern. Namun demikian ada komponen yang sama antara lain: Kop Surat, no-lamp-hal, tanggal surat, tujuan/kepada, isi, dan penandatangan, serta tembusan dan inisial pembuat surat. Postingan sederhana ini membahas gaya-gaya surat yang biasa diterapkan di beberapa kantor/institusi.

Lurus Penuh (Full Block Style)

Bentuk ini paling mudah karena semua komponen diawali dari sisi kiri.

Lurus (Block Style)

Gaya surat ini mirip lurus penuh tetapi tanggal dan penandatangan berada di kanan seperti gambar di bawah ini.

Bentuk Paragraf Menggantung (Hanging Paragraf Style)

Bentuk ini mirip bentuk lurus, hanya saja paragraf isi menggantung (hanging) mirip dengan daftar pustaka sebuah jurnal.

Bentuk Lekuk (Indented Style)

Bentuk ini mirip gaya menggantung, hanya saja isi tiap paragraf maju beberapa spasi, mirip paragraf sebuah tulisan di buku. NOTE: Perhatikan format penulisan kepada/tujuan yang tiap baris menjorok beberapa spasi dari sebelumnya.

Bentuk Gaya Resmi Indonesia (Official Style)

Bentuk ini biasa diterapkan di departemen-departemen. Ada jenis yang lama, ada juga yang baru. Bentuk yang lama (kiri) di salam penutup dan NIP menjorok, sementara yang baru (kanan) rata sama dengan salam penutup dan nama penandatangan. Kepada/tujuan surat juga sedikit berbeda penempatannya. Salah satu yang membedakan dengan gaya surat-menyurat yang lain adalah margin kiri rata dengan awal isian no, lamp, dan hal, termasuk juga kepada/tujuan. Kecuali tembusan rata dengan no, lamp, dan hal. Sekian semoga bermanfaat.

Referensi:

  • surat.porosilmu.com

Deteksi Warna dengan Jarak Euclidean

[peng.citra|t.kom|lab.hardware|pert.6]

Sistem cerdas membutuhkan teknik agar peralatan dapat membedakan satu warna dengan warna lainnya. Teknik termurah dan termudah adalah dengan jarak Euclidean. Perhitungannya menggunakan rumus jarak dua titik koordinat (dua, tiga, dan dimensi-n) yang mirip garis miring Phytagoras. Sebagai kelanjutan dari pertemuan 5 yang lalu, tambahkan tombol pushbutton disertai edit text untuk melihat komposisi RGB sebuah citra.

Agar ukuran dan format sama dengan tombol-tombol yang lain, kita boleh meng-copy paste tombol dan isian lainnya. Jika sudah simpan dan tambahkan tiga buah warna yang akan diuji. Buat saja dengan menggunakan paint pada Windows. Simpan dalam format JPG agar lebih mudah karena kebanyakan citra dibuat dalam format ini.

Mencari Nilai Terbesar RGB

Salah satu teknik termudah menebah warna sebuah citra adalah dengan mencari nilai terbesar. Cara ini tentu banyak kelemahannya, khususnya untuk warna komposit (gabungan) seperti kuning, ungu, orange, dan lain-lain. Namun, teknik ini tetap digunakan ketika menggunakan jarak Euclidean, tetapi menggunakan fungsi mencari nilai terkecil (kebalikannya). Kode berikut diletakan di Callback deteksi warna.

  • fR=handles.y(:,:,1);
  • fG=handles.y(:,:,2);
  • fB=handles.y(:,:,3);
  • fr=mean(mean(fR));
  • fg=mean(mean(fG));
  • fb=mean(mean(fB));
  • % mencari terbesar
  • warna=[fr fg fb]
  • strwarna={‘merah’ ‘hijau’ ‘biru’}
  • [maks,indeks]=max(warna)
  • outwarna=strwarna(indeks)
  • set(handles.edit4,’String’,outwarna)
  • set(handles.edit5,’String’,fr)
  • set(handles.edit6,’String’,fg)
  • set(handles.edit7,’String’,fb)

fR, fG dan fB adalah berturut-turut matriks citra merah, hijau dan biru. Sementara fr, fg, dan fb nilai rata-rata ekstrak warna dari citra. Perhatikan bagian % mencari nilai terbesar b di atas. Di sini digunakan fungsi max. Fungsi set di akhir fungsi mengirim jawaban yang merupakan warna yang ditebak oleh sistem ke edit text4 dalam contoh ini.

Menggunakan Jarak Euclidean

Jarak Euclidean lebih “ampuh” karena mampu mendeteksi warna komposit dengan menghitung jaraknya dari warna-warna yang jadi patokan/kelas. Sebagai latihan, patokannya misal dianggap sama yaitu merah, hijau dan biru. Pada prakteknya bisa saja merah, kuning dan hijau seperti lampu lalu-lintas.

Tambahkan satu tombol pushbutton “Deteksi Warna (Euclidean)” untuk membedakan dengan tombol sebelumnya yang hanya menggunakan nilai maksimal RGB.

Sebagai ilustrasi, nilai X tentu saja dengan nilai terbesar akan ditebak masuk kategori R. Tetapi di sini kita menghitung terlebih dahulu jaraknya terhadap R, G, dan B lalu dibandingkan mana jarak terkecilnya. Rumus Euclidean adalah mirip sisi miring Phytagoras:

Silahkan menggunakan rumus di atas, atau bisa menggunakan fasilitas fungsi norm pada Matlab yang artinya “normal Euclidean”. Berbeda dengan fungsi max untuk mencari nilai maksimum, untuk mencari nilai minimum dapat menggunakan fungsi min. Ok, masukan kode ini pada tombol “Deteksi Warna (Euclidean)”.

  • warna=[fr fg fb]
  • dR=norm(warna-[255 0 0])
  • dH=norm(warna-[0 255 0])
  • dB=norm(warna-[0 0 255])
  • hasil=[dR dH dB]
  • % mencari jarak terkecil
  • strwarna={‘merah’ ‘hijau’ ‘biru’}
  • [minimum,indeks]=min(hasil)
  • outwarna=strwarna(indeks)
  • set(handles.edit4,’String’,outwarna)
  • set(handles.edit5,’String’,fr)
  • set(handles.edit6,’String’,fg)
  • set(handles.edit7,’String’,fb)

Uji dengan me-run GUI yang baru saja diisi kode-nya. Pastikan sistem bisa menebak warna. Selamat Ber-praktikum.