Enhance AI and simulation components with presence management and routing capabilities
ci / server (push) Failing after 3m39s
ci / client (push) Successful in 14s

- Introduced the `HSchool.Ai` project, responsible for routing, day plans, and presence management.
- Updated the `HSchool.Simulation` project to integrate with the new AI functionalities, improving decision-making and presence tracking.
- Added `travelMinutes` to room and territory definitions, ensuring accurate movement calculations within the simulation.
- Enhanced the `School` class to manage presence and implement empty-time skipping functionality.
- Updated documentation to reflect the new AI features and their impact on school simulation.
- Added tests for presence management and routing to ensure robust functionality and reliability.
This commit is contained in:
Leonid Pershin
2026-08-19 16:33:52 +03:00
parent c16c34a83c
commit 4137400621
50 changed files with 1978 additions and 57 deletions
+30
View File
@@ -35,6 +35,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HSchool.Schedule", "src\HSc
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HSchool.Schedule.Tests", "tests\HSchool.Schedule.Tests\HSchool.Schedule.Tests.csproj", "{85FF85BD-F572-4F0A-A11E-FA855D480C1D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HSchool.Ai", "src\HSchool.Ai\HSchool.Ai.csproj", "{C21FB23F-F131-4651-8236-4F3E076B40BF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HSchool.Ai.Tests", "tests\HSchool.Ai.Tests\HSchool.Ai.Tests.csproj", "{C355307C-D7D3-48C7-9615-CB5FBCF83D49}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -213,6 +217,30 @@ Global
{85FF85BD-F572-4F0A-A11E-FA855D480C1D}.Release|x64.Build.0 = Release|Any CPU
{85FF85BD-F572-4F0A-A11E-FA855D480C1D}.Release|x86.ActiveCfg = Release|Any CPU
{85FF85BD-F572-4F0A-A11E-FA855D480C1D}.Release|x86.Build.0 = Release|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Debug|x64.ActiveCfg = Debug|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Debug|x64.Build.0 = Debug|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Debug|x86.ActiveCfg = Debug|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Debug|x86.Build.0 = Debug|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Release|Any CPU.Build.0 = Release|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Release|x64.ActiveCfg = Release|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Release|x64.Build.0 = Release|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Release|x86.ActiveCfg = Release|Any CPU
{C21FB23F-F131-4651-8236-4F3E076B40BF}.Release|x86.Build.0 = Release|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Debug|x64.ActiveCfg = Debug|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Debug|x64.Build.0 = Debug|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Debug|x86.ActiveCfg = Debug|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Debug|x86.Build.0 = Debug|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Release|Any CPU.Build.0 = Release|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Release|x64.ActiveCfg = Release|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Release|x64.Build.0 = Release|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Release|x86.ActiveCfg = Release|Any CPU
{C355307C-D7D3-48C7-9615-CB5FBCF83D49}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -232,6 +260,8 @@ Global
{E3A79C5F-FDD4-4DC8-9D3F-13962C6FC27E} = {0AB3BF05-4346-4AA6-1389-037BE0695223}
{734AC2F7-B243-4211-95CF-3E662D2E20C9} = {827E0CD3-B72D-47B6-A68D-7590B98EB39B}
{85FF85BD-F572-4F0A-A11E-FA855D480C1D} = {0AB3BF05-4346-4AA6-1389-037BE0695223}
{C21FB23F-F131-4651-8236-4F3E076B40BF} = {827E0CD3-B72D-47B6-A68D-7590B98EB39B}
{C355307C-D7D3-48C7-9615-CB5FBCF83D49} = {0AB3BF05-4346-4AA6-1389-037BE0695223}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {DD14EF4D-167E-4AC7-953A-AF606CC34829}