Summer Precollege Scholars Program for High School Students

The UF Center for Precollegiate Education and Training (CPET) Precollege Scholars program allows students to take non-credit courses in special topics taught by University of Florida graduate students. We offer a wide variety of courses in STEM, the humanities, and more. Precollege Scholars courses are taught by graduate students who are as passionate about your learning as they are the topic they are teaching. We encourage you to challenge yourself to the experience of taking college-level courses, while not having to feel the pressure and demand of formal grades. With over 40 courses offered this summer, you are likely to find a course in your area of interest!

All Precollege Scholars courses will be online for 2022. Courses will have a minimum of 10 and a maximum of 20 students. Courses not meeting the minimum number of students are subject to cancellation. Students may enroll in as many courses as they would like, provided that the meeting times for the courses do not overlap. The cost for each course is $200. Financial aid may be available – to apply for a scholarship, please visit our How to Pay Fees page and click on the link for the Financial Aid Application.

Please visit the CPET website for course availability and scheduling.

Application Deadline: May 15, 2022

Eligible Students:  Entering 11th or 12th Grade



Sessions offered are as follows:

  • Session 1:  June 20th – July 1st        Monday-Friday
  • Session 2:  July 6th – July 22nd        Monday, Wednesday, Friday
  • Session 3:  July 18th – July 29th      Monday-Friday


There are a number of AI, IoT, computer science, and engineering-focused courses available:

Demystifying the Object-Oriented Programming Paradigm:

The software engineering field demands effective programming professionals that provide optimal solutions to real-life situations. The Object-Oriented Programming (OOP) paradigm offers an authentic toolset to design and develop programs that mimic real-world problems through code. This course will provide high-school students with an overview of OOP techniques they can, in the future, apply in their projects of interest. This course is “demystifying” the OOP concept because we will reveal in two weeks that OOP is not the complex paradigm that some try to blur.

Security and Privacy in IoT Era:

Security and privacy are probably among the most discussed topics in the modern connected world. While we prioritize too much about how powerful our gaming laptops are or how better-quality cameras our cellphones have, we merely care about the security protocols or mechanisms installed in our smart devices to protect our privacy, e.g., the digital wallet that stores our credit card information, the selfies we take, our biometric data, etc. The security threats don’t necessarily contain individuals but rather impact adversely when posed towards institutions of national importance, e.g., last year’s cyber-attacks on Florida water treatment plants. Aside from the security threats, cryptography possesses a crucial role in our day-to-day life, from storing private data in our smart devices to web browsing. Are you eager to know how allied power (united nations) defeated axis power (led by Germans) in WWII by cracking Enigma (an encryption device to deliver military radio signals)? Are you interested to know the micro-architectural attack that can gain privileged access to any Intel CPU architecture? Do you dream of being the first person who can envision developing countermeasure against these security threats? As a fresh high school grad and future leader, this course could be enlightened you with all the basics of cryptography, security, and privacy vulnerabilities.

Computer Simulations:

Using Molecular Dynamics to Create Virtual Polymer Experiments: This purpose of the course is to introduce participants to computers as a tool to create and design better materials. Specifically, participants will learn about polymers and how we use computers to model and predict their properties. Polymers are big molecules consisting of smaller building blocks known as monomers. Another name for polymers is plastics, and these are materials that are everyday life materials! The technique we will be using to understand polymers or plastics is called molecular dynamics. Molecular dynamics is a type of computer simulation in which small particles (atoms and molecules) are allowed to interact for some time through certain realistic approximations. This kind of simulation is frequently used in the study of systems such as polymers, proteins and biomolecules, as well as in materials science. Additionally, we will see how we can use simple concepts from artificial intelligence (AI) to predict and accelerate the discovery of new material properties in general.

Graduate Research Topics in Biotechnology:

We work in a collaborative lab space with several different labs from various engineering departments. We plan to have different labs teach short courses over the 2 week span to cover each of the main engineering branches (mechanical, biomedical, material science, and chemical) so that students can get an introduction into the different branches of engineering, and see how they can all be applied to biotechnology (we all do some sort of bio research, but in different fields). Aakanksha and Amanda will lead the class, but will have help from other members of our organization (Wertheim Engineer’s Biotechology Organization, WEBiO).

Introduction to Machine Learning Methods and Artificial Intelligence:

What is artificial intelligence (AI) ? How do machines learn? How do companies like Amazon and Netflix use machine learning to generate recommendations? These are all big questions in the field of machine learning (ML) and AI and this course will explore such topics like Deep Learning, Natural Language Processing, and Computer Vision. After this course, students will be more acquainted with ML and AI principles as well as be able to design and structure a problem, learn how to clean and prepare data, create and train a ML model, and how to effectively communicate their results. Learn basic Python skills, Jupyter notebook and how to set up a PC to do machine learning, Be able to design and set up an experiment for analyzing a simple machine learning problem

Introduction of Self-Driving Cars:

Become a pioneer in the field of autonomous driving. Market analysts forecast a $42-billion market by 2025, with more than 20 million self-driving cars on the road. This course will provide you with a thorough overview of current engineering methods in the self-driving car business.


Are you interested in solving global and environmental challenges? Are you interested in learning a programming language? Are you interested in computational and statistical skills? This course is just for you. You will learn to apply computational modeling and statistics in environmental datasets of your choice to solve real-world problems. At the end of the course, you will have a good introduction command of your computer language, statistics knowledge, research skills, and a possible publishable research paper. We are excited to teach and learn with you. See you soon in class.

How Do Computers Add?:

Have you ever wondered how computers add? It’s not magic. In this short course, you’ll learn about how computers treat numbers at a fundamental level. You will be introduced to foundational theories, applications, and tools for computer science, computer engineering, electrical engineering, math, and logic. Topics covered in this course include logic gates, Boolean algebra, and number systems. This course culminates with a college-level project that you can list on your resume when you apply for colleges, internships, or careers. Prerequisites: Algebra II

Programming Autonomous Decision-Making Agents in Python:

This class will first teach the basics required of programming in the most popular programming language, Python 3. With that programming basis, I will then teach the necessary math and solution methodologies for optimal decision making, a branch of engineering called “Reinforcement Learning” (RL). The main method of RL that will be taught is called Tabular Q-learning. Once Python and RL has been learned, we will progress to the course project that will feature a game-like competition, where you will program your own agent, to compete against a separately trained autonomous agent in a video-game like environment. The environment will be a grid world, with obstacles that cannot be moved through; Your autonomous agent will navigate the environment with up, down, left, and right controls, but environment noise may cause you to drift to unintended cells. Additionally, your autonomous agent must learn to avoid the mobile adversarial agent (another adversarial agent in the game). If your agent touches the adversarial agent, the episode will end. If your agent makes it past the adversarial agent and into the goalzone, you will win some reward. Your agent will be simulated for a hundred trials, and the average reward will be computed. All students’ trained agents final average reward performance will be compared; In the end, they will all be ranked from highest average reward to lowest; results will be presented in a leaderboard type fashion.