{"id":23672760,"url":"https://github.com/e19166/tlbo_cloud_optimization","last_synced_at":"2025-10-07T06:51:50.423Z","repository":{"id":269999747,"uuid":"905862345","full_name":"e19166/tlbo_cloud_optimization","owner":"e19166","description":"he application of the Teaching-Learning-Based Optimization (TLBO) algorithm to optimize cloud resource allocation in virtual machine environments","archived":false,"fork":false,"pushed_at":"2024-12-27T18:14:53.000Z","size":41011,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-27T19:18:16.288Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/e19166.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-19T17:08:46.000Z","updated_at":"2024-12-27T18:14:57.000Z","dependencies_parsed_at":"2024-12-27T19:28:23.906Z","dependency_job_id":null,"html_url":"https://github.com/e19166/tlbo_cloud_optimization","commit_stats":null,"previous_names":["e19166/tlbo_cloud_optimization"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e19166%2Ftlbo_cloud_optimization","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e19166%2Ftlbo_cloud_optimization/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e19166%2Ftlbo_cloud_optimization/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/e19166%2Ftlbo_cloud_optimization/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/e19166","download_url":"https://codeload.github.com/e19166/tlbo_cloud_optimization/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239699420,"owners_count":19682537,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-29T11:19:20.309Z","updated_at":"2025-10-07T06:51:45.390Z","avatar_url":"https://github.com/e19166.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🧠 Cloud Resource Optimization Using TLBO Algorithm\n\nOptimizing cloud resources is a critical task in managing modern applications. This project demonstrates how to use the Teaching-Learning-Based Optimization (TLBO) algorithm to optimize CPU resource allocation for virtual machines in a cloud environment, ensuring cost efficiency and performance.\n\n\n## 🚀 Features\n\n* Optimization Algorithm: Implements the TLBO algorithm for resource optimization.\n* Real-World Use Case: Focuses on CPU allocation in cloud environments with latency constraints.\n* Easy to Extend: Modular code structure for custom optimization scenarios.\n* Visualization: Graphical insights into resource allocation and workloads.\n* Comprehensive Testing: Unit tests for all core functionalities.\n\n\n## 🛠️ Project Structure\n\n```bash\ncloud-resource-optimization-tlbo/\n├── src/\n│   ├── tlbo.py                # TLBO Algorithm implementation\n│   ├── problem_definition.py  # Defines the optimization problem\n│   ├── utils.py               # Helper functions\n├── tests/\n│   ├── test_tlbo.py           # Unit tests for the TLBO class\n│   ├── test_utils.py          # Tests for utility functions\n│   ├── test_validation.py     # Validation tests for workloads and constraints\n├── data/\n│   └── vm_workloads.json      # Example VM workloads (optional)\n├── notebooks/\n│   └── visualization.ipynb    # Jupyter notebook for visualization\n├── requirements.txt           # Python dependencies\n├── README.md                  # Project documentation\n└── LICENSE                    # License file\n```\n\n\n## 🧑‍💻 Getting Started\n\n### Prerequisites\n\n* Python 3.8+\n* Pipenv or a similar dependency manager\n\n### Installation\n\nClone the repository:\n\n```bash\ngit clone https://github.com/your-username/cloud-resource-optimization-tlbo.git\ncd cloud-resource-optimization-tlbo\n```\n\nInstall dependencies:\n\n```bash\npip install -r requirements.txt\n```\n\n## ⚙️ Usage\n\n### Running the Optimization\n\n1. Define your VM workloads in src/problem_definition.py.\n2. Run the main script to execute the TLBO algorithm:\n```bash\npython main.py\n```\n\n## 📊 Example Results\n\n![alt text](image.png)\n\n## 🔍 How It Works\n\n1. Input: VM workloads and constraints.\n2. TLBO Algorithm:\n    * Teacher Phase: The best solution (teacher) improves the mean performance.\n    * Learner Phase: Solutions are refined through pairwise interactions.\n3. Output: Optimal CPU allocations that minimize cost and satisfy latency requirements.\n\n## 🧪 Running Tests\n\nTo ensure everything works as expected:\n\n```bash\npython -m unittest discover -s tests\n```\n\n## 🤝 Contributing\n\nI welcome contributions! To get started:\n\n1. Fork the repository.\n2. Create a new branch for your feature:\n```bash\ngit checkout -b feature-name\n```\n3. Commit your changes and push:\n```bash\ngit push origin feature-name\n```\n4. Open a pull request.\n\n## 🛡️ Acknowledgments\n* Inspired by the TLBO algorithm in optimization.\n* Special thanks to the open-source community for tools and libraries.\n\n## 🌟 Support\nIf you found this project useful, please ⭐ the repository and share it with your peers!","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fe19166%2Ftlbo_cloud_optimization","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fe19166%2Ftlbo_cloud_optimization","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fe19166%2Ftlbo_cloud_optimization/lists"}