Commit Β·
675f070
1
Parent(s): 4ed5f26
Standardization: Final validator-compatible structure and inference standardization
Browse files- Dockerfile +1 -1
- README.md +22 -23
- drone_env/__init__.py β __init__.py +0 -0
- drone_env/client.py β client.py +0 -0
- {drone_env/core β core}/__init__.py +0 -0
- {drone_env/core β core}/drone.py +0 -0
- {drone_env/core β core}/graders.py +0 -0
- {drone_env/core β core}/grid_generator.py +0 -0
- {drone_env/core β core}/obstacles.py +0 -0
- {drone_env/core β core}/state_manager.py +0 -0
- {drone_env/core β core}/tasks.py +0 -0
- drone_env/models.py β models.py +0 -0
- openenv.yaml +1 -1
- pyproject.toml +2 -1
- {drone_env/rl β rl}/__init__.py +0 -0
- {drone_env/rl β rl}/model.py +0 -0
- {drone_env/rl β rl}/policy.py +0 -0
- {drone_env/rl β rl}/trainer.py +0 -0
- {drone_env/server β server}/Dockerfile +0 -0
- {drone_env/server β server}/__init__.py +0 -0
- {drone_env/server β server}/app.py +1 -1
- {drone_env/server β server}/drone_env_environment.py.bak +0 -0
- {drone_env/server β server}/grid_world_environment.py +0 -0
- {drone_env/server β server}/map_generator.py +0 -0
- {drone_env/server β server}/static/index.html +0 -0
- {drone_env/server β server}/static/script.js +0 -0
- {drone_env/server β server}/static/style.css +0 -0
Dockerfile
CHANGED
|
@@ -27,4 +27,4 @@ ENV HF_HOME=/tmp/.cache
|
|
| 27 |
|
| 28 |
# Command to run the FastAPI server
|
| 29 |
# This calls the main function in server/app.py which starts uvicorn
|
| 30 |
-
CMD ["python", "
|
|
|
|
| 27 |
|
| 28 |
# Command to run the FastAPI server
|
| 29 |
# This calls the main function in server/app.py which starts uvicorn
|
| 30 |
+
CMD ["python", "server/app.py", "--host", "0.0.0.0", "--port", "8000"]
|
README.md
CHANGED
|
@@ -82,38 +82,37 @@ The codebase follows a clean separation-of-concerns architecture across four dis
|
|
| 82 |
|
| 83 |
```
|
| 84 |
.
|
| 85 |
-
βββ
|
| 86 |
-
β βββ
|
| 87 |
-
β
|
| 88 |
-
β
|
| 89 |
-
β
|
| 90 |
-
β
|
| 91 |
-
β
|
| 92 |
-
|
| 93 |
-
β βββ
|
| 94 |
-
β
|
| 95 |
-
β
|
| 96 |
-
|
| 97 |
-
β βββ
|
| 98 |
-
β
|
| 99 |
-
β
|
| 100 |
-
β
|
| 101 |
-
β β βββ static/ # Dashboard Assets
|
| 102 |
-
β βββ models.py # Unified Pydantic data models
|
| 103 |
-
β βββ client.py # CLI client for testing
|
| 104 |
-
β βββ __init__.py # Package initialization
|
| 105 |
βββ data/ # Persistence Layer
|
| 106 |
β βββ memory.json # Historical episode logs (JSON)
|
| 107 |
β βββ train.log # Neural training logs
|
| 108 |
βββ tests/ # Validation Layer
|
| 109 |
β βββ test_api.py # Endpoint integration tests
|
| 110 |
β βββ test_env.py # Physics & Grading unit tests
|
| 111 |
-
βββ
|
| 112 |
-
βββ
|
|
|
|
|
|
|
|
|
|
| 113 |
βββ openenv.yaml # Mission Manifest (Tasks & Graders)
|
| 114 |
βββ pyproject.toml # Python project & dependency config
|
| 115 |
βββ Dockerfile # Deployment container manifest
|
| 116 |
-
βββ
|
| 117 |
```
|
| 118 |
|
| 119 |
### Component Interaction Flow
|
|
|
|
| 82 |
|
| 83 |
```
|
| 84 |
.
|
| 85 |
+
βββ core/ # Simulation Logic Layer
|
| 86 |
+
β βββ drone.py # Movement physics & battery drain
|
| 87 |
+
β βββ graders.py # Unified scoring logic (0.01 - 0.99)
|
| 88 |
+
β βββ grid_generator.py # Map generation logic
|
| 89 |
+
β βββ obstacles.py # Collision & terrain detection
|
| 90 |
+
β βββ state_manager.py # Episodic state management
|
| 91 |
+
β βββ tasks.py # Mission difficulty configurations
|
| 92 |
+
βββ rl/ # Intelligence Layer
|
| 93 |
+
β βββ model.py # Neural network architecture (DQN)
|
| 94 |
+
β βββ policy.py # Action selection policies
|
| 95 |
+
β βββ trainer.py # Path analytics & learning engine
|
| 96 |
+
βββ server/ # Interface Layer
|
| 97 |
+
β βββ app.py # FastAPI server & Grader discovery
|
| 98 |
+
β βββ grid_world_environment.py # Main simulation environment
|
| 99 |
+
β βββ map_generator.py # Procedural map generation
|
| 100 |
+
β βββ static/ # Dashboard Assets
|
|
|
|
|
|
|
|
|
|
|
|
|
| 101 |
βββ data/ # Persistence Layer
|
| 102 |
β βββ memory.json # Historical episode logs (JSON)
|
| 103 |
β βββ train.log # Neural training logs
|
| 104 |
βββ tests/ # Validation Layer
|
| 105 |
β βββ test_api.py # Endpoint integration tests
|
| 106 |
β βββ test_env.py # Physics & Grading unit tests
|
| 107 |
+
βββ models.py # Unified Pydantic data models
|
| 108 |
+
βββ client.py # CLI client for testing
|
| 109 |
+
βββ __init__.py # Package marker (Root as drone_env)
|
| 110 |
+
βββ train.py # Neural training entry point
|
| 111 |
+
βββ inference.py # LLM-guided inference entry point
|
| 112 |
βββ openenv.yaml # Mission Manifest (Tasks & Graders)
|
| 113 |
βββ pyproject.toml # Python project & dependency config
|
| 114 |
βββ Dockerfile # Deployment container manifest
|
| 115 |
+
βββ validate-submission.sh # Submission validation script
|
| 116 |
```
|
| 117 |
|
| 118 |
### Component Interaction Flow
|
drone_env/__init__.py β __init__.py
RENAMED
|
File without changes
|
drone_env/client.py β client.py
RENAMED
|
File without changes
|
{drone_env/core β core}/__init__.py
RENAMED
|
File without changes
|
{drone_env/core β core}/drone.py
RENAMED
|
File without changes
|
{drone_env/core β core}/graders.py
RENAMED
|
File without changes
|
{drone_env/core β core}/grid_generator.py
RENAMED
|
File without changes
|
{drone_env/core β core}/obstacles.py
RENAMED
|
File without changes
|
{drone_env/core β core}/state_manager.py
RENAMED
|
File without changes
|
{drone_env/core β core}/tasks.py
RENAMED
|
File without changes
|
drone_env/models.py β models.py
RENAMED
|
File without changes
|
openenv.yaml
CHANGED
|
@@ -2,7 +2,7 @@ spec_version: 1
|
|
| 2 |
name: drone_env
|
| 3 |
type: space
|
| 4 |
runtime: fastapi
|
| 5 |
-
app:
|
| 6 |
port: 8000
|
| 7 |
tasks:
|
| 8 |
- id: easy_delivery
|
|
|
|
| 2 |
name: drone_env
|
| 3 |
type: space
|
| 4 |
runtime: fastapi
|
| 5 |
+
app: server.app:app
|
| 6 |
port: 8000
|
| 7 |
tasks:
|
| 8 |
- id: easy_delivery
|
pyproject.toml
CHANGED
|
@@ -34,4 +34,5 @@ server = "drone_env.server.app:main"
|
|
| 34 |
|
| 35 |
[tool.setuptools]
|
| 36 |
include-package-data = true
|
| 37 |
-
packages = ["drone_env", "drone_env.server", "drone_env.core", "drone_env.rl"]
|
|
|
|
|
|
| 34 |
|
| 35 |
[tool.setuptools]
|
| 36 |
include-package-data = true
|
| 37 |
+
packages = ["drone_env", "drone_env.server", "drone_env.core", "drone_env.rl"]
|
| 38 |
+
package-dir = { "drone_env" = ".", "drone_env.server" = "server", "drone_env.core" = "core", "drone_env.rl" = "rl" }
|
{drone_env/rl β rl}/__init__.py
RENAMED
|
File without changes
|
{drone_env/rl β rl}/model.py
RENAMED
|
File without changes
|
{drone_env/rl β rl}/policy.py
RENAMED
|
File without changes
|
{drone_env/rl β rl}/trainer.py
RENAMED
|
File without changes
|
{drone_env/server β server}/Dockerfile
RENAMED
|
File without changes
|
{drone_env/server β server}/__init__.py
RENAMED
|
File without changes
|
{drone_env/server β server}/app.py
RENAMED
|
@@ -17,7 +17,7 @@ import time
|
|
| 17 |
import json
|
| 18 |
|
| 19 |
# Add root to sys.path for local imports
|
| 20 |
-
BASE_DIR = Path(__file__).parent.parent
|
| 21 |
if str(BASE_DIR) not in sys.path:
|
| 22 |
sys.path.insert(0, str(BASE_DIR))
|
| 23 |
|
|
|
|
| 17 |
import json
|
| 18 |
|
| 19 |
# Add root to sys.path for local imports
|
| 20 |
+
BASE_DIR = Path(__file__).parent.parent
|
| 21 |
if str(BASE_DIR) not in sys.path:
|
| 22 |
sys.path.insert(0, str(BASE_DIR))
|
| 23 |
|
{drone_env/server β server}/drone_env_environment.py.bak
RENAMED
|
File without changes
|
{drone_env/server β server}/grid_world_environment.py
RENAMED
|
File without changes
|
{drone_env/server β server}/map_generator.py
RENAMED
|
File without changes
|
{drone_env/server β server}/static/index.html
RENAMED
|
File without changes
|
{drone_env/server β server}/static/script.js
RENAMED
|
File without changes
|
{drone_env/server β server}/static/style.css
RENAMED
|
File without changes
|