ОФИЦИАЛЬНЫЙ ФОРУМ ГРУППЫ КОМПАНИЙ «ТЕХНОКОМ»

ОФИЦИАЛЬНЫЙ ФОРУМ ГРУППЫ КОМПАНИЙ «ТЕХНОКОМ» (https://forum.tk-chel.ru/index.php)
-   Система «АвтоГРАФ»: Программное обеспечение (https://forum.tk-chel.ru/forumdisplay.php?f=4)
-   -   Автоматическое формирование путевых листов на основании трека движения и полигонов (https://forum.tk-chel.ru/showthread.php?t=1797)

NickolaDed 03.04.2012 13:45

Автоматическое формирование путевых листов на основании трека движения и полигонов
 
Я не еще не очень разбирался в ПО автограф, но хотелось бы получить ответ на следующий вопрос.

Может ли ПО автограф автоматически формировать ездки (они же ходки или рейсы, кому как удобнее) на основании уже имеющихся от рисованных полигонов, при условии, что заранее не известно в какие именно полигоны поедет транспорт.

1. Допустим у нас есть список полигонов, объем списка от нескольких десятков до двух - трех тысяч полигонов, которые однозначно определяют производственные объекты, поставщиков, потребителей, населенных пунктов и прочих объектов нужных для нормальной отчетности в бухгалтерии.

2. После того как ТС завершила работу, диспетчеру необходимо будет выбрать ТС, назначить ему полигоны для просчета. Однако, диспетчер не знает точное количество полигонов и их последовательность посещения ТС, она может знать только приблизительно, допустим, Она знает, что ТС работал в Перевозском районе, Нижегородской области. Соответственно она выбирает все полигоны производственных объектов, поставщиков и потребителей, при необходимости дополнительные полигоны (поселки, деревни, города) и запускает расчет.

3. Программа автоматически просчитывает порядок прохождения этих полигонов и выдает отчет в виде:
1) Наименование ТС
2) Наименование Полигона 1
3) Время прибытия (первая стоянка после входа)
4) Время отбытия (Время окончания последней стоянки в полигоне)
5) Время нахождения в полигоне 1 от момента прибытия до момента отбытия
6) Время стоянки в Полигоне 1
7) Пробег от момента прибытия до момента отбытия в полигоне 1
8) Объем топлива на момент прибытия
9) Объем топлива на момент отбытия
10) Заправки топлива в полигоне 1
11) Время от момента отбытия из полигона 1 до прибытия в полигон 2
12) Время движения от момента отбытия из полигона 1 до прибытия в полигон 2
13) Время стоянок от момента отбытия из полигона 1 до прибытия в полигон 2
14) Пробег от момента отбытия из полигона 1 до прибытия в полигон 2
15) Заправка топлива от момента отбытия из полигона 1 до прибытия в полигон 2
16) Наименование Полигона 2
17) Время прибытия (первая стоянка после входа)
18) Время отбытия (Время окончания последней стоянки в полигоне)
19) Время нахождения в полигоне 2 от момента прибытия до момента отбытия
20) Время стоянки в Полигоне 2
21) Пробег от момента прибытия до момента отбытия в полигоне 2
22) Объем топлива на момент прибытия
23) Объем топлива на момент отбытия
24) Заправки топлива в полигоне 2

Если есть возможность, то можно еще дополнительно обозначит был ли груз на этой ходке.

4. После завершения просчета, данные экспортируются в Excel или в базы данных.

SK 03.04.2012 15:08

Отчет по контрольным точкам и отрезкам.

Время прибытия/отбытия - время пересечения границы КТ, точнее, первая точка внутри/снаружи КТ (здесь и далее - КТ - может быть круглой или полигональной).
По первой стоянке - нельзя - это может запросто оказаться светофор, остановка перед шлагбаумом на стоянке около здания или еще что (зависит от размера КТ).

NickolaDed 03.04.2012 19:58

Цитата:

Сообщение от SK (Сообщение 28233)
Отчет по контрольным точкам и отрезкам.
По первой стоянке - нельзя - это может запросто оказаться светофор, остановка перед шлагбаумом на стоянке около здания или еще что (зависит от размера КТ).

Ну тут ситуация следующая. Если полигон, он же КТ обозначает производственный объект, поставщика, потребителя, то эти полигоны малых размеров, где первая стоянка соответствует прибытию, а начало движения после последней стоянки соответствует отбытию. Если полигон определяет населенный пункт или большой город который является просто случайно попавшим в отчет, то время прибытия и отбытия в нем принципиально не важны. Во вторых, обязательным условием для полигонов это , то что каждый объект на карте определяется только одним полигоном (он же КТ). Допустим, есть у нас город Нижний Новгород, этот город был у нас от рисован одним полигоном, и внутри него мы от рисовали поставщиков и производственные объекты, корректный отчет не получался, в итоге нам пришлось избавиться от общего полигона под название нижний новгород, фактически мы разбили его на более мелкие, так, чтобы каждый полигон однозначно определял только одну область на карте. Это понятно, что работа скрупулезная и долгая, но таким образом мы обработали нижегородскую и ульяновскую области, скажу сразу игра стоила свечь.

Вообще у нас так и было, что время прибытия это время вхождения в полигон, а время выбытия это выход из полигона, однако, для того, что бы получать расстояние ездки из пункта А в пункт Б, приходилось делить пройденные расстояния в полигонах на 2 и прибавлять к пробегу между полигонами, именно из за этого я предположил, что было бы удобнее брать время первой стоянки и время окончания последней стоянки, и для них искать остальные составляющие отчета, это было бы намного точнее.


Да и еще один момент, в сельском хозяйстве, полигоны имею количество точек от пары сотен до десяти тысяч, как ПО справиться с этим, по опыту скажу, что это серьезная нагрузка для компа, когда этих полигонов несколько сотен, или тысяча штук, это относиться к полям.

SK 03.04.2012 21:56

Цитата:

Сообщение от NickolaDed (Сообщение 28259)
Вообще у нас так и было, что время прибытия это время вхождения в полигон, а время выбытия это выход из полигона, однако, для того, что бы получать расстояние ездки из пункта А в пункт Б, приходилось делить пройденные расстояния в полигонах на 2 и прибавлять к пробегу между полигонами, именно из за этого я предположил, что было бы удобнее брать время первой стоянки и время окончания последней стоянки, и для них искать остальные составляющие отчета, это было бы намного точнее.

Да ничем это не точнее. Машина по заводской территории может километрами колесить после отбытия из нужного цеха или со склада. И останавливаться после этого еще 17 раз внутри заводской территории, на которую, кстати, можно въехать и выехать - десятью разными путями. Это все равно гадание на кофейной гуще получится.

Цитата:

Сообщение от NickolaDed (Сообщение 28259)
Допустим, есть у нас город Нижний Новгород, этот город был у нас от рисован одним полигоном, и внутри него мы от рисовали поставщиков и производственные объекты, корректный отчет не получался, в итоге нам пришлось избавиться от общего полигона под название нижний новгород, фактически мы разбили его на более мелкие, так, чтобы каждый полигон однозначно определял только одну область на карте. Это понятно, что работа скрупулезная и долгая, но таким образом мы обработали нижегородскую и ульяновскую области, скажу сразу игра стоила свечь.

Ну... для этого и есть два списка полигонов. Условно: КТ и геозоны.
Многие помещают большие полигоны типа "город" в геозоны, а клиентские зоны, находящиеся внутри больших полигонов - в КТ.

Далее, мы поддерживаем полигоны с вырезами. Очень даже можно вырезать из большого полигона дырки, соответствующие малым полигонам. Ну и сами малые полигоны оставить внутри этих дырок. Это достаточно быстро делается в редакторе...

Цитата:

Сообщение от NickolaDed (Сообщение 28259)
Да и еще один момент, в сельском хозяйстве, полигоны имею количество точек от пары сотен до десяти тысяч, как ПО справиться с этим, по опыту скажу, что это серьезная нагрузка для компа, когда этих полигонов несколько сотен, или тысяча штук, это относиться к полям.

Логично. Это же не волшебство, а точный математический расчет.
Формульная обработка в Excel таблиц на 100 строк и 50000 строк - тоже весьма сильно отличаются по времени обработки, но это же нормально.
Вопрос зачастую в том, нужно ли вести расчет по всей тысяче полигонов-полей ? Ведь ПО не знает, затронет ли их данный трек в данном расчете или нет и будет честно обсчитывать каждый, тратя время и ресурсы процессора.

NickolaDed 04.04.2012 05:23

Да кстати, я думаю это будет хорошее сокращение времени работы обсчета, если допустим, к каждому полигону добавить два параметра, центральные координаты (Среднее всех координат) и максимально удаленная координата (или радиус), и при общете, большое количество массивных полигонов отсеяться, когда ТС не попадут в эту окружность. Если попадут, то проводить честный общет полигона

SK 04.04.2012 06:23

Цитата:

Сообщение от NickolaDed (Сообщение 28281)
Да кстати, я думаю это будет хорошее сокращение времени работы обсчета, если допустим, к каждому полигону добавить два параметра, центральные координаты (Среднее всех координат) и максимально удаленная координата (или радиус), и при общете, большое количество массивных полигонов отсеяться, когда ТС не попадут в эту окружность. Если попадут, то проводить честный общет полигона

Вот что ответил на это главный программер (цитирую):
 
Отвечу цитатой из анекдота: "Абрам, они нас что? Коммерции учат?"
P.S. Вообще-то, проверка границ - это первое, что делается при выполнении данного алгоритма, я уже не говорю про другое моё ноу-хау, про которое никто не знает и которое увеличивает скорость обработки в 5 раз.
 

NickolaDed 04.04.2012 07:15

Ага, понял).

csistra 05.04.2012 10:06

Нажатие одной кнопки "запупуск" и получение "хочу чтобы отчет делалася сам" врятли возможно в АГ

SK 05.04.2012 14:34

Это к чему ?


Текущее время: 07:03. Часовой пояс GMT.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot