--- title: Workforce Optimization AI emoji: 📞 colorFrom: blue colorTo: green sdk: streamlit sdk_version: 1.56.0 app_file: app.py pinned: false --- # 📞 Workforce Optimization AI / İş Gücü Optimizasyonu This project is an AI-driven decision support system designed to optimize staffing levels based on historical call/demand data. It uses Long Short-Term Memory (LSTM) networks to predict future demand and suggests actionable staffing strategies. Bu proje, geçmiş çağrı/talep verilerine dayanarak personel seviyelerini optimize etmek için tasarlanmış yapay zeka destekli bir karar destek sistemidir. Gelecekteki talebi tahmin etmek için LSTM ağlarını kullanır ve uygulanabilir personel stratejileri önerir. ## 🚀 Features / Özellikler - **AI Demand Forecasting:** Predicts future call volumes using deep learning. - **Strategic Recommendations:** Automatically identifies "High Intensity" (Risk) and "Saving Area" (Opportunity) periods. - **Cost Optimization:** Helps managers balance service quality and labor costs. - **Interactive Visualization:** Dynamic charts showing demand vs. staff capacity. ## 🛠️ Tech Stack / Teknolojiler - **Python** (Core Logic) - **TensorFlow/Keras** (LSTM Model) - **Streamlit** (Web Interface) - **Plotly** (Interactive Graphics) - **Scikit-Learn** (Data Scaling) ## 📖 How to Use / Nasıl Kullanılır? 1. **Upload Data:** Upload a CSV file containing a column named `calls`. 2. **Set Parameters:** Adjust hourly wage and staff capacity per hour from the sidebar. 3. **Analyze:** - View the **Decision Logic** to understand AI suggestions. - Check the **Strategic Recommendations** for peak and low-demand periods. - Download the **Detailed Schedule** for operational planning. --- ### 🧠 Strategic Logic / Stratejik Mantık - **High Intensity (🔥):** When predicted demand exceeds capacity. Action: Increase staff to prevent customer loss. - **Saving Area (💰):** When demand is significantly lower than capacity. Action: Reduce staff or plan breaks to minimize labor waste. **Note:** Each "Slot" in the analysis represents a sequential row from your uploaded data (e.g., Slot 0 = 08:00 AM, Slot 1 = 09:00 AM). ---