⚾ Genetic Programming in Baseball Season Planning

👋 Welcome to the app!

This interactive system seeks to optimally solve the organization and logistics of a calendar for a full baseball season. To achieve this, we implemented an advanced artificial intelligence technique directly inspired by the natural evolution of species. 🌿

Genetic programming involves automatically creating, evaluating, and modifying solutions from an initial population of programs. This is accomplished by executing bioinspired operations such as natural selection, crossing, and mutation. In this environment, each generated program is internally structured as an expression tree that represents a potential solution to our calendar.

The algorithm continuously evaluates each tree using a strict quality criterion (fitness function) with the goal of inheriting key characteristics and generating new trees that are increasingly promising. 📈 This process is repeated in an evolutionary loop until the optimal and most efficient solution is found!

🛠️ Control Panel: Active Settings (ID: 4)

⚙️ Algorithm Settings

100
20
0.8
0.2

📅 Active Calendar: 4T2S6G (ID: 4)

Date Local Away
11/05/2026 CHA ARI
11/05/2026 PIT WAS
12/05/2026 CHA ARI
12/05/2026 PIT WAS
13/05/2026 CHA ARI
13/05/2026 PIT WAS
14/05/2026 WAS ARI
14/05/2026 CHA PIT
16/05/2026 ARI CHA
16/05/2026 WAS ARI
16/05/2026 CHA PIT
18/05/2026 PIT ARI
18/05/2026 CHA WAS
18/05/2026 WAS PIT
18/05/2026 ARI CHA

🏆 Optimization results

Press the button below to activate the genetic algorithm and display the syntactic solution tree. 🚀

🚀 Run optimization

📖 System Operational Guide

🔹 Quick Start Instructions

To start successfully interacting with the demo, follow these sequential steps:

  1. Create a team, league, and tournament in your administrative panels. Important note: The total number of participating teams must be even. 👥
  2. Once you have the participants defined, head to the panel above, select your active tournament and click on the green "Run Optimization" button to structure the automated schedule.

⚙️ Internal logic and algorithmic flow of AI

What happens internally when the software goes live? Here's a step-by-step look at the evasive life cycle based on genetic programming:

1. Base configuration and hyperparameters

Panel variables that will define generations, initial population size, as well as probability rates associated with crossover and genomic mutation are loaded.

2. Definition of operators and structural blocks (grammar)

3. Initialization, evolutionary cycle and convergence

📍 Live Execution Phase: The system generates a random initial population and converts each proposal into a hierarchical tree structure (syntax tree). This is where the computational magic happens! ✨
  1. Visualization and sampling: The initial population is processed and the trees are rendered using the syntax generator.
  2. Aptitude Assessment: Each individual's fitness value is calculated based on cumulative distance in kilometers and regulatory compliance.
  3. Natural selection: The best individuals from the previous round are chosen to act as biological parents of the new generation.
  4. Crossbreeding, mutation and inheritance: New individuals are created by mixing branches of prominent trees and applying mutations in random nodes.
  5. Iterative loop: The evaluation, selection, and playback steps are repeated sequentially until the total number of generations configured in the interface is completed.
  6. Official Results: The best individual obtained in the last iteration is validated and its internal structure is stored as the definitive baseball tournament schedule. 🏆🎉