Στην προσπάθεια εξοικείωσης με την τεχνητή νοημοσύνη AI, δοκίμασα να συμβουλευτώ το Chat gpt ώστε να κατασκευάσουμε μια προσομοίωση για το μάθημα της βιολογίας. Συγκεκριμένα, κινηθήκαμε γύρω από την τοξικολογία και την τοξικότητα ουσιών όπως το αλκοόλ και πόσο χρόνο χρειάζονται για να μεταβολισθούν και ποιά δόση θεωρείτε “άνω του ορίου”.
Προσομοίωση: “Τοξικές Ουσίες και Ομοιόσταση στον Ανθρώπινο Οργανισμό”

Περιγραφή περιβάλλοντος εφαρμογής
Α) Διάταξη Εφαρμογής
Το παράθυρο της εφαρμογής χωρίζεται σε 3 βασικές περιοχές:
- Ρυθμίσεις εισαγωγής (πάνω μέρος)
Εδώ ο χρήστης μπορεί να επιλέξει την ποσότητα της ουσίας που “εισάγει” στον οργανισμό. - Κουμπιά ελέγχου (κέντρο)
Περιλαμβάνει λειτουργίες όπως έναρξη της προσομοίωσης. - Παρακολούθηση αποτελεσμάτων (κάτω μέρος)
Εδώ εμφανίζεται η γραφική παράσταση της συγκέντρωσης στο αίμα με την πάροδο του χρόνου.
Β) Στοιχεία και Λειτουργίες
- Ρυθμιστές (Slider):
- Ετικέτα: “Ποσότητα Ουσίας (ml)”
- Ο χρήστης μετακινεί το ρυθμιστικό για να επιλέξει την ποσότητα (π.χ. 0-100 ml).
- Εμφανίζει την τιμή της επιλογής (π.χ. “50 ml”).
- Κουμπί “Έναρξη Προσομοίωσης”:
- Με το πάτημα του κουμπιού:
- Υπολογίζεται η αρχική συγκέντρωση της ουσίας.
- Ξεκινά η πτώση της συγκέντρωσης με βάση τον χρόνο.
- Ενημερώνεται το γράφημα σε πραγματικό χρόνο.
- Με το πάτημα του κουμπιού:
- Γράφημα Συγκέντρωσης:
- Οριζόντιος Άξονας (Χ): Χρόνος (σε λεπτά).
- Κάθετος Άξονας (Υ): Συγκέντρωση της ουσίας στο αίμα (mg/L).
- Η καμπύλη δείχνει:
- Άνοδο όταν εισάγεται η ουσία.
- Σταδιακή πτώση με τον χρόνο λόγω αποβολής.
- Μήνυμα Προειδοποίησης:
- Αν η συγκέντρωση ξεπεράσει ένα κρίσιμο όριο (π.χ. 80 mg/L), εμφανίζεται ένα προειδοποιητικό μήνυμα (π.χ. “Προσοχή: Επικίνδυνο Επίπεδο Τοξικότητας!”).
Γ) Ροή Χρήσης
- Ο χρήστης ανοίγει την εφαρμογή.
- Επιλέγει την ποσότητα της ουσίας από το ρυθμιστικό.
- Πατά το κουμπί “Έναρξη Προσομοίωσης”.
- Βλέπει στο γράφημα:
- Άμεση αύξηση της συγκέντρωσης μόλις εισάγεται η ουσία.
- Σταδιακή πτώση καθώς ο οργανισμός την αποβάλλει.
- Αν ξεπεραστεί το όριο, εμφανίζεται προειδοποίηση.
Για την απλή έκδοση του κώδικα που περιγράψαμε, θα χρησιμοποιήσουμε Python και τα παρακάτω εργαλεία:
- Tkinter για το γραφικό περιβάλλον.
- Matplotlib για τη δημιουργία του γραφήματος.
Ο κώδικας θα περιλαμβάνει:
- Ένα ρυθμιστή (Slider) για την επιλογή ποσότητας ουσίας.
- Ένα κουμπί για την έναρξη της προσομοίωσης.
- Ένα γράφημα που δείχνει την αλλαγή στη συγκέντρωση της ουσίας με τον χρόνο.
- Ένα μήνυμα προειδοποίησης αν ξεπεραστεί το όριο τοξικότητας.
Κώδικας Python
import tkinter as tk
from tkinter import messagebox
import matplotlib.pyplot as plt
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
import numpy as np
# Σταθερές
CRITICAL_LEVEL = 80 # Επικίνδυνο επίπεδο τοξικότητας
REMOVAL_RATE = 0.05 # Ρυθμός αποβολής της ουσίας
# Συνάρτηση που προσομοιώνει τη συγκέντρωση στο αίμα
def simulate_concentration(dose):
time = np.linspace(0, 120, 500) # 0 έως 120 λεπτά
concentration = dose * np.exp(-REMOVAL_RATE * time)
return time, concentration
# Συνάρτηση για την έναρξη της προσομοίωσης
def start_simulation():
dose = dose_slider.get()
time, concentration = simulate_concentration(dose)
# Ενημέρωση γραφήματος
ax.clear()
ax.plot(time, concentration, label=”Συγκέντρωση Ουσίας”)
ax.set_xlabel(“Χρόνος (λεπτά)”)
ax.set_ylabel(“Συγκέντρωση (mg/L)”)
ax.set_title(“Συγκέντρωση Ουσίας στο Αίμα”)
ax.axhline(CRITICAL_LEVEL, color=”red”, linestyle=”–“, label=”Επικίνδυνο Επίπεδο”)
ax.legend()
canvas.draw()
# Έλεγχος για κρίσιμο επίπεδο
if dose > CRITICAL_LEVEL:
messagebox.showwarning(“Προειδοποίηση”, “Προσοχή: Επικίνδυνο Επίπεδο Τοξικότητας!”)
# Δημιουργία παραθύρου
root = tk.Tk()
root.title(“Προσομοίωση Τοξικότητας”)
# Ρυθμιστικό για τη δόση
dose_slider = tk.Scale(root, from_=0, to=100, orient=”horizontal”, label=”Ποσότητα Ουσίας (ml)”)
dose_slider.pack(pady=10)
# Κουμπί για την έναρξη της προσομοίωσης
start_button = tk.Button(root, text=”Έναρξη Προσομοίωσης”, command=start_simulation)
start_button.pack(pady=10)
# Γράφημα Matplotlib
fig, ax = plt.subplots(figsize=(5, 4))
canvas = FigureCanvasTkAgg(fig, master=root)
canvas.get_tk_widget().pack()
# Εκτέλεση εφαρμογής
root.mainloop()
Τι Κάνει ο Κώδικας
- Δημιουργεί το παράθυρο της εφαρμογής:
- Περιλαμβάνει ένα ρυθμιστικό για την επιλογή ποσότητας (0-100 ml).
- Ένα κουμπί για να ξεκινήσει η προσομοίωση.
- Ένα γραφικό που δείχνει τη συγκέντρωση της ουσίας στο αίμα.
- Υπολογίζει τη συγκέντρωση της ουσίας:
- Με βάση την εξίσωση C(t)=C0⋅e−ktC(t) = C_0 \cdot e^{-kt}C(t)=C0⋅e−kt, όπου C0C_0C0 είναι η ποσότητα ουσίας που επιλέγει ο χρήστης.
- Ενημερώνει το γράφημα:
- Εμφανίζει την καμπύλη συγκέντρωσης σε σχέση με τον χρόνο.
- Προσθέτει μια κόκκινη γραμμή για το κρίσιμο επίπεδο (80 mg/L).
- Προειδοποιεί:
- Αν η αρχική ποσότητα ξεπεράσει το κρίσιμο επίπεδο, εμφανίζεται προειδοποιητικό μήνυμα.
Η εικόνα αυτή κατασκευάστηκε από το AI για να προσομοιώσει την εφαρμογή