1. Heuristik AI-Pacman : Dalam Proyek Pacman 1, agen Pacman akan mencari jalur dari labirin untuk tiba di tujuan tertentu dan mengumpulkan makanan secara efisien. Algoritme pencarian umum diterapkan untuk memenuhi berbagai jenis skenario Pacman. Kami menggunakan permainan ini sebagai model untuk memahami cara kerja berbagai algoritma pencarian. Dalam tugas ini, agen Pacman akan menemukan jalan melalui dunia labirinnya, baik untuk mencapai lokasi tertentu maupun mengumpulkan makanan secara efisien... Menerapkan tugas ini di python3.
2. Mekanisme Bit-Torrent : Program mengunduh semua potongan file yang berbeda dari rekan yang berbeda, menggabungkannya dan menyimpan file di direktori laptop/lokal kita. Tujuan dari tugas ini adalah untuk memahami mekanisme BitTorrent. BitTorrent memperoleh file torrent yang berisi daftar rekan yang menghosting file tersebut, dan mengunduh potongan file yang berbeda dari rekan yang berbeda. Perangkat lunak yang digunakan di sini adalah lingkungan python3 dan linux.
3. Jaringan-klien-server : Server mendengarkan port, program server dijalankan dengan nomor port sebagai input dan klien membuat koneksi TCP dan server mengirim file ke klien Selain bertindak sebagai server, server juga dapat bertindak seperti proxy. Baik program klien dan server diimplementasikan dalam python3 dan menggunakan pemrograman soket, multi threading untuk mendukung koneksi bersamaan di server.
4. Prototipe sistem manajemen Maskapai Penerbangan Dummy : Dalam proyek ini kami telah mengembangkan sistem manajemen maskapai penerbangan tiruan. Yang menyimpan dan mengambil data terkait bandara, maskapai penerbangan, dan penerbangan. Pada dasarnya motivasi di balik pemilihan ide ini adalah untuk mengembangkan sistem yang menarik secara visual dan mudah digunakan. Ada dua jenis pengguna dalam sistem ini: 1) Pelanggan dan 2) Halaman Admin dan admin telah memberikan akses untuk memodifikasi penerbangan baru, dll. Sumber data utama yang kami gunakan dalam proyek ini hanya kumpulan data penerbangan tahun 2015, yang dapat ditemukan di Perangkat lunak kaggle yang digunakan dalam proyek ini adalah meja kerja MY SQL untuk kueri, kerangka web Python yang menyediakan alat dan fitur berguna untuk membuat aplikasi web dan html untuk halaman web frontend
5. Estimasi kepadatan lalu lintas-opencv : Terutama ada dua bagian dalam kode ini: Hal dasar yang kita perlukan untuk memantau lalu lintas adalah umpan kamera yang ditempatkan di jalan sebenarnya, tetapi kita tidak dapat memastikan bahwa itu ditempatkan pada posisi yang baik sehingga jalan tersebut untuk ditonton berada dalam bentuk persegi panjang sempurna dan kamera menerima tampilan atas. Mungkin ada banyak hal lain dalam gambar yang harus dihilangkan agar algoritma bekerja secara efisien. Opencv berfungsi paling baik untuk bingkai persegi panjang, jadi Untuk pekerjaan seperti perkiraan kepadatan lalu lintas, penting untuk terlebih dahulu memperbaiki sudut kamera dalam perangkat lunak dan memotong gambar untuk menghilangkan item tambahan. Salah satu repositori berisi koreksi sudut kamera dan kode pemotongan bingkai.
subtugas2 :Gambar yang diekstrak dari video yang digunakan sebagai latar belakang. Pada bagian selanjutnya analisis trade off utilitas runtime telah dilakukan.
6. Proyek Cloud Computing : Menjelaskan secara sederhana : Proyek ini tentang menciptakan alat yang membantu orang-orang yang menggunakan mesin virtual. Mesin virtual seperti komputer yang dijalankan di dalam komputer lain. Mereka berguna karena memungkinkan orang menjalankan sistem operasi atau perangkat lunak yang berbeda tanpa memerlukan komputer terpisah untuk masing-masing sistem.
Alat yang kami buat disebut API snapshotting. Ini seperti kamera yang mengambil gambar mesin virtual pada titik waktu tertentu. Gambar ini disebut snapshot. Snapshot berguna karena memungkinkan orang menyimpan status mesin virtual dan kembali lagi nanti. Misalnya, jika seseorang sedang mengerjakan sebuah proyek di mesin virtual dan ingin istirahat, mereka dapat mengambil snapshot dan kembali lagi nanti tanpa kehilangan kemajuan apa pun.
Kami menggunakan bahasa pemrograman yang disebut Rust untuk membuat API snapshotting. Rust adalah bahasa yang baik untuk proyek semacam ini karena aman dan cepat. Artinya, kecil kemungkinan API memiliki bug atau masalah keamanan, dan bekerja dengan cepat.
Kami membagi proyek ini menjadi lima tahap utama. Tahap pertama adalah pembuatan mesin virtual dasar yang dapat kita gunakan untuk pengujian. Tahap kedua adalah menambahkan fitur yang memungkinkan orang menjeda dan melanjutkan mesin virtual. Tahap ketiga adalah membuat snapshotting API menjadi program yang lebih kecil dan efisien. Tahap keempat adalah pembuatan web server yang dapat menjalankan beberapa mesin virtual sekaligus. Tahap terakhir adalah membuat API snapshotting lebih efisien dengan menggunakan teknik yang disebut deduplikasi. Artinya jika dua snapshot sangat mirip, kita hanya perlu menyimpan bagian yang berbeda saja.
API snapshotting yang kami buat digunakan oleh berbagai bagian proyek. Misalnya, penyeimbang beban menggunakannya untuk memindahkan mesin virtual, frontend menggunakannya untuk membuat mesin virtual baru dari gambar dasar, dan sistem anti-cheat menggunakannya untuk memantau siapa yang menggunakan mesin virtual tersebut.
Secara keseluruhan, proyek ini berhasil. Kami menyelesaikan semua tujuan kami sebelum tenggat waktu, dan kami menciptakan API snapshotting yang aman, cepat, dan efisien. Untuk informasi lebih lanjut lihat ke dalam repositori.