Skip to content

ocotpi/OptiCore

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 

Repository files navigation

OptiCore Logo

OptiCore

⚙️Smart CPU Scheduling Optimizer


Overview

OptiCore is an interactive tool that optimizes CPU scheduling using a Genetic Algorithm (GA).
It benchmarks traditional scheduling algorithms such as FCFS, SJF, Priority, and Round Robin,
then evolves optimized hybrids that minimize average waiting time, turnaround time, and context switching.


Features

  • Compare baseline algorithms: FCFS, SJF, Priority, and Round Robin
  • Optimize dynamically using a Genetic Algorithm
  • Visualize results with Gantt charts and performance graphs
  • Interactive process and GA parameter controls
  • Analyze performance metrics:
    • Average Waiting Time
    • Average Turnaround Time
    • Context Switch Count
    • Fairness Standard Deviation

Tech Stack

Component Description
Language Python 3
Libraries Matplotlib, NumPy, ipywidgets
Algorithm Genetic Algorithm
Environment Jupyter / Google Colab

How to Run

  1. Open the OptiCore notebook in Google Colab.
  2. Run all cells in sequence.
  3. Adjust the sliders to set:
    • Number of processes
    • GA population size
    • Generations
    • Mutation rate
  4. Click Run GA Optimizer to evolve the best schedule.
  5. Use Compare Baselines to benchmark traditional algorithms.

Visualization

  • Bar Chart: Compare average waiting and turnaround times.
  • Gantt Chart: Visualize process execution timelines.
  • Convergence Plot: Track optimization progress per generation.

Project Media

Add visuals such as:

  • OptiCore Interface — interactive dashboard view
  • Gantt Chart Visualization — optimized CPU schedule
  • Performance Comparison Graph — baseline vs optimized performance

Try It Out

Open in Google Colab


OptiCore — Optimizing CPU scheduling through intelligent algorithms.
Crafted for clarity, built for efficiency.

About

Adaptive CPU scheduler optimizer using genetic algorithms.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published