{"id":3506,"date":"2026-05-18T13:27:42","date_gmt":"2026-05-18T13:27:42","guid":{"rendered":"http:\/\/pstknu.local\/?page_id=3506"},"modified":"2026-08-05T15:07:00","modified_gmt":"2026-08-05T12:07:00","slug":"theses","status":"publish","type":"page","link":"https:\/\/pst.knu.ua\/en\/academics\/bachelor\/theses\/","title":{"rendered":"Topics of thesis \u2014 Bachelor"},"content":{"rendered":"<p style=\"font-size:17px;line-height:1.65;\">The list of topical topics of thesis topics \u2014 Bachelor. Topics are grouped by supervisors. The student can choose the proposed topic or agree his own with the supervisor.<\/p>\n<style>\n.tbs-wrapper { margin: 24px 0; }\n.tbs-group { background:#fff; border:1px solid #e6e3dd; border-radius:8px; padding:20px 24px; margin-bottom:18px; }\n.tbs-supervisor { display:flex; align-items:center; gap:16px; margin-bottom:14px; padding-bottom:14px; border-bottom:1px solid #f0ede5; }\n.tbs-photo { width:72px; height:72px; border-radius:50%; overflow:hidden; background:#fafaf7; flex-shrink:0; display:flex; align-items:center; justify-content:center; }\n.tbs-photo img { width:100%; height:100%; object-fit:cover; }\n.tbs-name { font-family:\"Fraunces\",Georgia,serif; font-size:18px; color:#0c0c0c; font-weight:600; margin:0 0 4px; }\n.tbs-count { font-size:13px; color:#888; font-family:\"JetBrains Mono\",monospace; }\n.tbs-topic { padding:10px 0; border-bottom:1px solid #f0ede5; }\n.tbs-topic:last-child { border-bottom:0; }\n.tbs-topic-title { font-weight:600; color:#0c0c0c; font-size:14.5px; }\n.tbs-topic-desc { font-size:13.5px; color:#666; margin-top:4px; line-height:1.55; }\n.tbs-topic-tags { display:inline-block; font-size:12px; color:#666; margin-top:6px; padding:3px 9px; background:#fafaf7; border-radius:4px; font-family:\"JetBrains Mono\",monospace; }\n.tbs-orphan-title { color:#b85c00 !important; }\n<\/style><div class=\"tbs-wrapper\"><div class=\"tbs-group\"><div class=\"tbs-supervisor\"><div class=\"tbs-photo\"><svg width=\"40\" height=\"40\" viewbox=\"0 0 24 24\" fill=\"#d0cbc0\"><path d=\"M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z\"\/><\/svg><\/div><div><h3 class=\"tbs-name\"><a href=\"https:\/\/pst.knu.ua\/en\/staff\/bychkov-oleksii\/\" style=\"text-decoration:none;color:inherit;\">Bychkov Oleksii Serhiiovych<\/a><\/h3><div class=\"tbs-count\">12 topics<\/div><\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">Dr.Case rest client for the Android\/iOS mobile platform on Flutter<\/div><div class=\"tbs-topic-desc\"><p>Cross-platform mobile client of the Dr.Case system with minimal functionality: quick diagnosis, review of the symptom base, session history. Localization of Ukr+Eng.<\/p>\n<\/div><div class=\"tbs-topic-tags\">Flutter, Dr.Case, mobile<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">Telegram bot for initial differential diagnostics on the Dr.Case API<\/div><div class=\"tbs-topic-desc\"><p>Implementation of the bot on the python-telegram-bot. The user describes the symptoms in free text \u2192 bot extracts the symptoms through \/api\/symptoms\/extract \u2192 gives the top 5 hypotheses \u2192 offers clarification. Disclaimer about non-clinical prescription.<\/p>\n<\/div><div class=\"tbs-topic-tags\">Telegram, bot, Dr.Case<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">Dr.Case React Interactive Diagnostic Session Web Interface<\/div><div class=\"tbs-topic-desc\"><p>Development of a spa application: entering symptoms through autocomplete, obtaining hypotheses from the Dr.Case rest API, displaying progress bars of probabilities, interactive questions (Yes\/No\/Don't know). React + TanStack Query + Tailwind CSS.<\/p>\n<\/div><div class=\"tbs-topic-tags\">React, Dr.Case API<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">Dr.Case statistics web dashboard<\/div><div class=\"tbs-topic-desc\"><p>Display usage statistics: distribution of diagnoses, average session length, success rate. Data from the Dr.Case rest API. Chart.js or Recharts.<\/p>\n<\/div><div class=\"tbs-topic-tags\">Dashboard, analytics<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">Dr.Case Diagnostic Session Report Export Module in PDF<\/div><div class=\"tbs-topic-desc\"><p>Generation of a PDF report with the results of the diagnostic session: symptoms, question history, final rating of hypotheses with graphs, disclaimer. Using WeasyPrint or ReportLab.<\/p>\n<\/div><div class=\"tbs-topic-tags\">PDF export, Dr.Case<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">A simple UAV swarm simulator program with base agents and behavior trees<\/div><div class=\"tbs-topic-desc\"><p>Pygame 2D simulator with 10-20 agents managed by behavior trees (Sequence\/Selector\/Parallel). Scenarios: patrol, search, follow leader. Visualization of the state of the tree.<\/p>\n<\/div><div class=\"tbs-topic-tags\">Behavior trees, swarm<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">Software module for analyzing simple radiographs based on pre-trained CNN<\/div><div class=\"tbs-topic-desc\"><p>Classification: normal vs pneumonia on chest X-ray. Transfer learning from ResNet50 on the ChestX-ray14 dataset. Let's go to Streamlit and upload the snapshot.<\/p>\n<\/div><div class=\"tbs-topic-tags\">X-ray, transfer learning<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">Prototype of Dr.Case agent-secretary with transcription of doctor's vocal notes<\/div><div class=\"tbs-topic-desc\"><p>Integration of Whisper API\/OpenAI for voice transcription in Ukrainian. Parsing decrypted text through the Dr.Case NLP module. Demo scenario of the full session.<\/p>\n<\/div><div class=\"tbs-topic-tags\">Speech recognition, NLP<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">Dr.Case SOM-card visualization prototype in the browser<\/div><div class=\"tbs-topic-desc\"><p>Interactive 15\u00d715 grid som color-coded by disease category (infectious\/cardiac\/neurological). When pointing at a unit \u2014 a list of 5+ diseases. D3.js or React+Canvas.<\/p>\n<\/div><div class=\"tbs-topic-tags\">SOM visualization, D3.js<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">The prototype of the classification of blood parameters into \"norm \/ deviation\" according to the full CBC<\/div><div class=\"tbs-topic-desc\"><p>Binary classifier on gradient boosting (XGBoost\/LightGBM) for CBC parameters. Experimental accuracy assessment, ROC curve. Let's go web to Streamlit.<\/p>\n<\/div><div class=\"tbs-topic-tags\">Blood analysis, ML<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">Multiagent drug consilium simulator prototype<\/div><div class=\"tbs-topic-desc\"><p>2D simulator in Pygame:agents- \"doctors\" with different specializations, exchange \"hypotheses\" (rules), agree on solutions. Inspiration is a microcosm of Dr.Case multi-agent diagnostics.<\/p>\n<\/div><div class=\"tbs-topic-tags\">Multi-agent, simulation<\/div><\/div><div class=\"tbs-topic\"><div class=\"tbs-topic-title\">Implementation of raft consensus algorithm for network of 5 agents<\/div><div class=\"tbs-topic-desc\"><p>Basic implementation of Raft in Python with messages via ZeroMQ or gRPC. Experimental study of behavior in case of loss of messages and node failures.<\/p>\n<\/div><div class=\"tbs-topic-tags\">Raft, consensus<\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>The list of topical topics of thesis topics \u2014 Bachelor. Topics are grouped by supervisors. The student can choose the proposed topic or agree his own with the supervisor.<\/p>","protected":false},"author":1,"featured_media":0,"parent":3500,"menu_order":5,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-3506","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/pst.knu.ua\/en\/wp-json\/wp\/v2\/pages\/3506","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pst.knu.ua\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/pst.knu.ua\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/pst.knu.ua\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pst.knu.ua\/en\/wp-json\/wp\/v2\/comments?post=3506"}],"version-history":[{"count":1,"href":"https:\/\/pst.knu.ua\/en\/wp-json\/wp\/v2\/pages\/3506\/revisions"}],"predecessor-version":[{"id":7623,"href":"https:\/\/pst.knu.ua\/en\/wp-json\/wp\/v2\/pages\/3506\/revisions\/7623"}],"up":[{"embeddable":true,"href":"https:\/\/pst.knu.ua\/en\/wp-json\/wp\/v2\/pages\/3500"}],"wp:attachment":[{"href":"https:\/\/pst.knu.ua\/en\/wp-json\/wp\/v2\/media?parent=3506"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}