Witaj!
Do projektu pet. należy przeanalizować API i odpowiedzieć na pytania.
Wymóg obowiązkowy - doświadczenie w systemie budowy tras.
https://openrouteservice.org/
Kontekst:
Celem projektu jest budowa trasy po wcześniej określonych punktach. Punkty mogą być pojedyncze (lokalizacja) lub tablicą punktów (droga, po której system rekomenduje budowę trasy).
Na przykład: należy zbudować trasę Winnica - Jaremcze. Google Maps buduje tę trasę klasycznie dla nawigacji (Winnica - Chmielnicki - Tarnopol - Lwów - Iwano-Frankiwsk - Jaremcze).
Dla projektu potrzebne jest, aby system zaproponował następującą trasę (Winnica - Chmielnicki - Kamieniec Podolski - Chocim - Czerniowce - Kołomyja - Jaremcze).
Punkty będą zwracane z wewnętrznej bazy danych. To znaczy, że istnieje lista "interesujących" punktów, przez które warto poprowadzić trasę. Sortowanie (priorytetowość) po stronie już istniejącego backendu. Także w bazie danych są jsony z różnymi drogami, przez które warto przejechać.
Więc pytanie:
1. Czy framework, mając startowe i końcowe współrzędne, może zwrócić tablicę współrzędnych (obszar), w których należy szukać miejsc do odwiedzenia? (Na przykład, trasa Winnica - Jaremcze. System musi zrozumieć, jakie punkty proponować, utrzymując właściwy kierunek. To znaczy, aby trasa nie była budowana w przeciwną stronę, typu najpierw do Umania, a potem już w stronę Jaremcze).
2. Ile punktów może przyjąć API do budowy trasy?
3. Jak będzie działać, jeśli dodamy json z drogą. To znaczy, że jest tablica współrzędnych, która formuje drogę. Problem Google API polega na tym, że tam jest limit na 10 punktów. W związku z tym niemożliwe jest zmuszenie do prowadzenia po konkretnej drodze (ponieważ obok jest szosa i nawigacja Google zawsze skieruje na "główną" drogę).
4. Jak działa ich system POI. Rozumiem, że to wyszukiwanie interesu wokół współrzędnej. Czy można używać własnej bazy danych jako punktów interesu wokół współrzędnej?
5. Czy pozwala na ustalenie czasu odwiedzin dla każdego z punktów? To znaczy, że jest 5 punktów. Ograniczenie w czasie trasy ogółem - 8 godzin. Każdy z punktów ma w bazie danych czas odwiedzin (od 30 min. do 2 godz.). Jeśli system rozumie, że niemożliwe jest odwiedzenie wszystkich 5 punktów i przejechanie samej trasy w 8 godzin - zwraca hook, że należy skrócić liczbę punktów. Nasz backend zwraca nową listę z 4 punktami i trasa jest przebudowywana.
6. Ekstra zadanie. Opisz inne elementy API, o których warto wiedzieć.
Wynikiem ma być:
- Google Docs z dostępem do komentarzy, dopóki praca nie zostanie zaakceptowana.
- Opis twojego doświadczenia istotnego dla projektu. To ważne, ponieważ to tylko pierwsze zadanie. W ciągu następnego roku będą kolejne zadania, implementacja tego API lub innego silnika budowy tras. Dlatego zadanie jest częściowo jak testowe zadanie.
- W odpowiedzi na pytania od 1 do 5 - pisemna odpowiedź w otwartej formie. Jeśli odpowiedź jest pozytywna - podaj dowody, aby przekonać, że odpowiedź ma sens.
- 6. Otwarte pytanie. Liczę na techniczną ekspertyzę wykonawcy, aby podkreślić przydatne funkcje tego API. Jeśli potrzebne są szczegóły dotyczące projektu - jestem gotów do komunikacji.