- JSON প্রতিনিধিত্ব
- চালান
- ভিজিট রিকোয়েস্ট
- LatLng
- ওয়েপয়েন্ট
- অবস্থান
- টাইম উইন্ডো
- যানবাহন
- ট্রাভেলমোড
- রুট মডিফায়ার
- আনলোডিং নীতি
- লোডসীমা
- ব্যবধান
- সময়সীমা
- দূরত্বসীমা
- BreakRule
- ব্রেক রিকোয়েস্ট
- ফ্রিকোয়েন্সি সীমাবদ্ধতা
- সময়কাল দূরত্ব ম্যাট্রিক্স
- সারি
- ট্রানজিশন অ্যাট্রিবিউট
- শিপমেন্ট টাইপ অসঙ্গতি
- অসঙ্গতি মোড
- চালানের প্রকারের প্রয়োজনীয়তা
- প্রয়োজন মোড
- অগ্রাধিকার নিয়ম
একটি চালান মডেলে চালানের একটি সেট থাকে যা যানবাহনের একটি সেট দ্বারা সঞ্চালিত হতে হবে, সামগ্রিক খরচ কমিয়ে, যার সমষ্টি:
- যানবাহন রুট করার খরচ (মোট সময় প্রতি খরচের যোগফল, ভ্রমণের সময় প্রতি খরচ, এবং সমস্ত যানবাহনের উপর নির্দিষ্ট খরচ)।
- অকার্যকর চালান জরিমানা.
- চালানের বিশ্বব্যাপী সময়কালের খরচ
JSON প্রতিনিধিত্ব |
---|
{ "shipments": [ { object ( |
ক্ষেত্র | |
---|---|
shipments[] | চালানের সেট যা অবশ্যই মডেলটিতে সম্পাদন করা উচিত। |
vehicles[] | যানবাহনের সেট যা পরিদর্শন করতে ব্যবহার করা যেতে পারে। |
global Start Time | মডেলের বিশ্বব্যাপী শুরু এবং শেষ সময়: এই পরিসরের বাইরে কোনো সময় বৈধ বলে বিবেচিত হবে না৷ মডেলের সময়কাল অবশ্যই এক বছরের কম হতে হবে, অর্থাৎ RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-সাধারণ করা হবে এবং 0, 3, 6 বা 9 ভগ্নাংশ সংখ্যা ব্যবহার করে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণ করা হয়। উদাহরণ: |
global End Time | সেট না থাকলে, 00:00:00 UTC, জানুয়ারী 1, 1971 (অর্থাৎ সেকেন্ড: 31536000, nanos: 0) ডিফল্ট হিসাবে ব্যবহৃত হয়। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-সাধারণ করা হবে এবং 0, 3, 6 বা 9 ভগ্নাংশ সংখ্যা ব্যবহার করে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণ করা হয়। উদাহরণ: |
global Duration Cost Per Hour | সামগ্রিক পরিকল্পনার "গ্লোবাল সময়কাল" হল প্রথমতম কার্যকর শুরুর সময় এবং সমস্ত যানবাহনের সর্বশেষ কার্যকরী শেষ সময়ের মধ্যে পার্থক্য। ব্যবহারকারীরা সেই পরিমাণে প্রতি ঘন্টায় একটি খরচ নির্ধারণ করতে পারে এবং প্রথম দিকে কাজ শেষ করার জন্য অপ্টিমাইজ করার জন্য, উদাহরণস্বরূপ। এই খরচ |
duration Distance Matrices[] | মডেলে ব্যবহৃত সময়কাল এবং দূরত্ব ম্যাট্রিক্স নির্দিষ্ট করে। যদি এই ক্ষেত্রটি খালি থাকে, তবে Google মানচিত্র বা জিওডেসিক দূরত্ব ব্যবহার করা হবে, ব্যবহারের উদাহরণ:
|
duration Distance Matrix Src Tags[] | সময়কাল এবং দূরত্ব ম্যাট্রিক্সের উত্স সংজ্ঞায়িত ট্যাগ; ট্যাগ |
duration Distance Matrix Dst Tags[] | সময়কাল এবং দূরত্ব ম্যাট্রিক্সের গন্তব্য সংজ্ঞায়িত ট্যাগ; ট্যাগ |
transition Attributes[] | রূপান্তর বৈশিষ্ট্য মডেল যোগ করা হয়েছে. |
shipment Type Incompatibilities[] | বেমানান শিপমেন্ট_টাইপের সেট ( |
shipment Type Requirements[] | |
precedence Rules[] | অগ্রাধিকার বিধিগুলির সেট যা মডেলে প্রয়োগ করা আবশ্যক৷ গুরুত্বপূর্ণ : অগ্রাধিকার নিয়মের ব্যবহার সমস্যার আকারকে সীমিত করে যা অপ্টিমাইজ করা যেতে পারে। অনেক চালান অন্তর্ভুক্ত অগ্রাধিকার নিয়ম ব্যবহার করে অনুরোধ প্রত্যাখ্যান করা হতে পারে. |
max Active Vehicles | সক্রিয় যানবাহনের সর্বাধিক সংখ্যা সীমাবদ্ধ করে। একটি যানবাহন সক্রিয় থাকে যদি এর রুটটি কমপক্ষে একটি চালান সম্পাদন করে। যেখানে যানবাহনের তুলনায় কম চালক আছে এবং যানবাহনের বহর ভিন্নধর্মী এমন ক্ষেত্রে রুটের সংখ্যা সীমিত করতে এটি ব্যবহার করা যেতে পারে। অপ্টিমাইজেশন তারপর ব্যবহার করার জন্য যানবাহনের সেরা উপসেট নির্বাচন করবে। কঠোরভাবে ইতিবাচক হতে হবে। |
চালান
একটি একক আইটেমের চালান, এটির একটি পিকআপ থেকে তার একটি ডেলিভারি পর্যন্ত। চালানটি সম্পাদিত হিসাবে বিবেচিত হওয়ার জন্য, একটি অনন্য যানবাহনকে অবশ্যই তার পিকআপ অবস্থানগুলির একটিতে যেতে হবে (এবং সেই অনুযায়ী তার অতিরিক্ত ক্ষমতা হ্রাস করতে হবে), তারপরে তার ডেলিভারি অবস্থানগুলির একটিতে যান (এবং সেই অনুযায়ী তার অতিরিক্ত ক্ষমতা পুনরায় বাড়াতে হবে)।
JSON প্রতিনিধিত্ব |
---|
{ "displayName": string, "pickups": [ { object ( |
ক্ষেত্র | |
---|---|
display Name | চালানের ব্যবহারকারী-নির্ধারিত প্রদর্শন নাম। এটি 63 অক্ষর পর্যন্ত লম্বা হতে পারে এবং UTF-8 অক্ষর ব্যবহার করতে পারে। |
pickups[] | চালানের সাথে যুক্ত পিকআপ বিকল্পের সেট। যদি নির্দিষ্ট করা না থাকে, তাহলে গাড়িটিকে শুধুমাত্র ডেলিভারির সাথে সম্পর্কিত একটি অবস্থান পরিদর্শন করতে হবে। |
deliveries[] | চালানের সাথে যুক্ত ডেলিভারি বিকল্পের সেট। নির্দিষ্ট না থাকলে, গাড়িটিকে শুধুমাত্র পিকআপগুলির সাথে সম্পর্কিত একটি অবস্থান পরিদর্শন করতে হবে৷ |
load Demands | চালানের লোড চাহিদা (উদাহরণস্বরূপ ওজন, আয়তন, প্যালেটের সংখ্যা ইত্যাদি)। মানচিত্রের কীগুলি অনুরূপ লোডের ধরন বর্ণনাকারী শনাক্তকারী হওয়া উচিত, আদর্শভাবে ইউনিটগুলিও সহ। উদাহরণস্বরূপ: "ওজন_কেজি", "ভলিউম_গ্যালন", "প্যালেট_কাউন্ট", ইত্যাদি। যদি একটি প্রদত্ত কী মানচিত্রে উপস্থিত না হয়, তাহলে সংশ্লিষ্ট লোডটিকে শূন্য হিসাবে বিবেচনা করা হয়। |
allowed Vehicle Indices[] | এই চালান সঞ্চালন করতে পারে যে যানবাহন সেট. খালি থাকলে, সমস্ত যানবাহন এটি সম্পাদন করতে পারে। |
costs Per Vehicle[] | প্রতিটি যানবাহন দ্বারা এই চালানটি বিতরণ করার সময় যে খরচ হয় তা নির্দিষ্ট করে৷ যদি নির্দিষ্ট করা থাকে, তবে এটি অবশ্যই থাকতে হবে:
এই খরচ অবশ্যই |
costs Per Vehicle Indices[] | যানবাহনের সূচকগুলি যেগুলির জন্য |
pickup To Delivery Absolute Detour Limit | পিকআপ থেকে ডেলিভারি পর্যন্ত সংক্ষিপ্ততম পথের তুলনায় সর্বাধিক নিখুঁত চক্কর সময় নির্দিষ্ট করে। নির্দিষ্ট করা থাকলে, এটি অবশ্যই নেতিবাচক হতে হবে এবং চালানে কমপক্ষে একটি পিকআপ এবং একটি ডেলিভারি থাকতে হবে। উদাহরণস্বরূপ, নির্বাচিত পিকআপ বিকল্প থেকে সরাসরি নির্বাচিত ডেলিভারি বিকল্পে যেতে সবচেয়ে কম সময় নেওয়া যাক। তারপরে
যদি একই চালানে আপেক্ষিক এবং পরম উভয় সীমা নির্দিষ্ট করা হয়, তবে প্রতিটি সম্ভাব্য পিকআপ/ডেলিভারি জোড়ার জন্য আরও সীমাবদ্ধ সীমা ব্যবহার করা হয়। 2017/10 অনুযায়ী, পথচলা শুধুমাত্র তখনই সমর্থিত যখন ভ্রমণের সময়কাল যানবাহনের উপর নির্ভর করে না। নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
pickup To Delivery Time Limit | পিকআপের শুরু থেকে চালানের ডেলিভারি শুরু পর্যন্ত সর্বোচ্চ সময়কাল নির্দিষ্ট করে। নির্দিষ্ট করা থাকলে, এটি অবশ্যই নেতিবাচক হতে হবে এবং চালানে কমপক্ষে একটি পিকআপ এবং একটি ডেলিভারি থাকতে হবে। এটি পিকআপ এবং ডেলিভারির জন্য কোন বিকল্পগুলি বেছে নেওয়া হয়েছে বা গাড়ির গতির উপর নির্ভর করে না। এটি সর্বাধিক চক্কর সীমাবদ্ধতার পাশাপাশি নির্দিষ্ট করা যেতে পারে: সমাধান উভয় স্পেসিফিকেশনকে সম্মান করবে। নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
shipment Type | এই চালানের জন্য একটি "প্রকার" নির্দিষ্ট করে অ-খালি স্ট্রিং। এই বৈশিষ্ট্যটি |
label | এই চালানের জন্য একটি লেবেল নির্দিষ্ট করে৷ এই লেবেলটি সংশ্লিষ্ট |
ignore | সত্য হলে, এই চালানটি এড়িয়ে যান, কিন্তু একটি একটি চালান উপেক্ষা করার ফলে মডেলটিতে কোনো একটি চালান উপেক্ষা করা যা |
penalty Cost | চালান সম্পন্ন না হলে, এই জরিমানা রুটগুলির সামগ্রিক খরচের সাথে যোগ করা হয়। একটি চালান সম্পন্ন বলে মনে করা হয় যদি এর পিকআপ এবং ডেলিভারি বিকল্পগুলির একটি পরিদর্শন করা হয়। মডেলের অন্যান্য খরচ-সম্পর্কিত ক্ষেত্রের জন্য ব্যবহৃত একই ইউনিটে খরচ প্রকাশ করা যেতে পারে এবং অবশ্যই ইতিবাচক হতে হবে। গুরুত্বপূর্ণ : এই জরিমানা নির্দিষ্ট করা না থাকলে, এটি অসীম হিসাবে বিবেচিত হয়, অর্থাত্ চালানটি সম্পূর্ণ করতে হবে৷ |
pickup To Delivery Relative Detour Limit | পিকআপ থেকে ডেলিভারি পর্যন্ত সংক্ষিপ্ত পথের তুলনায় সর্বাধিক আপেক্ষিক চক্কর সময় নির্দিষ্ট করে। নির্দিষ্ট করা থাকলে, এটি অবশ্যই নেতিবাচক হতে হবে এবং চালানে কমপক্ষে একটি পিকআপ এবং একটি ডেলিভারি থাকতে হবে। উদাহরণস্বরূপ, নির্বাচিত পিকআপ বিকল্প থেকে সরাসরি নির্বাচিত ডেলিভারি বিকল্পে যেতে সবচেয়ে কম সময় নেওয়া যাক। তারপর
যদি একই চালানে আপেক্ষিক এবং পরম উভয় সীমা নির্দিষ্ট করা হয়, তবে প্রতিটি সম্ভাব্য পিকআপ/ডেলিভারি জোড়ার জন্য আরও সীমাবদ্ধ সীমা ব্যবহার করা হয়। 2017/10 অনুযায়ী, পথচলা শুধুমাত্র তখনই সমর্থিত যখন ভ্রমণের সময়কাল যানবাহনের উপর নির্ভর করে না। |
ভিজিট রিকোয়েস্ট
একটি ভিজিটের জন্য অনুরোধ যা একটি যানবাহন দ্বারা করা যেতে পারে: এটির একটি ভূ-অবস্থান (বা দুটি, নীচে দেখুন), খোলার এবং বন্ধের সময়গুলি টাইম উইন্ডো দ্বারা উপস্থাপিত, এবং একটি পরিষেবার সময়কাল (যান একবার পণ্য পিকআপ বা নামানোর জন্য গাড়ির দ্বারা ব্যয় করা সময়)।
JSON প্রতিনিধিত্ব |
---|
{ "arrivalLocation": { object ( |
ক্ষেত্র | |
---|---|
arrival Location | এই |
arrival Waypoint | এই |
departure Location | ভৌগলিক অবস্থান যেখানে এই |
departure Waypoint | এই |
tags[] | পরিদর্শন অনুরোধের সাথে সংযুক্ত ট্যাগগুলি নির্দিষ্ট করে৷ খালি বা ডুপ্লিকেট স্ট্রিং অনুমোদিত নয়। |
time Windows[] | টাইম উইন্ডো যা ভিজিটে আসার সময়কে সীমাবদ্ধ করে। মনে রাখবেন যে একটি যানবাহন আগমনের সময় উইন্ডোর বাইরে চলে যেতে পারে, অর্থাৎ আগমনের সময় + সময়কাল একটি টাইম উইন্ডোর ভিতরে থাকার প্রয়োজন নেই। গাড়ি টাইম উইন্ডো অবশ্যই ডিসজয়েন্ট হতে হবে, অর্থাৎ কোন টাইম উইন্ডোকে অন্যের সাথে ওভারল্যাপ বা সংলগ্ন হতে হবে না এবং সেগুলি অবশ্যই ক্রমবর্ধমান ক্রমে হতে হবে। |
duration | পরিদর্শনের সময়কাল, অর্থাৎ আগমন এবং প্রস্থানের মধ্যে গাড়ির দ্বারা ব্যয় করা সময় (সম্ভাব্য অপেক্ষার সময় যোগ করতে হবে; নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
cost | একটি যানবাহন রুটে এই পরিদর্শন অনুরোধ পরিষেবার খরচ. এটি প্রতিটি বিকল্প পিকআপ বা চালানের ডেলিভারির জন্য বিভিন্ন খরচ দিতে ব্যবহার করা যেতে পারে। এই খরচ |
load Demands | এই ভিজিট অনুরোধ লোড চাহিদা. এটি |
visit Types[] | পরিদর্শনের প্রকারগুলি নির্দিষ্ট করে৷ এই পরিদর্শনটি সম্পূর্ণ করার জন্য একটি যানবাহনের জন্য প্রয়োজনীয় অতিরিক্ত সময় বরাদ্দ করতে এটি ব্যবহার করা যেতে পারে (দেখুন একটি প্রকার শুধুমাত্র একবার প্রদর্শিত হতে পারে। |
label | এই |
LatLng
একটি বস্তু যা একটি অক্ষাংশ/দ্রাঘিমাংশ জোড়া প্রতিনিধিত্ব করে। এটি ডিগ্রী অক্ষাংশ এবং ডিগ্রী দ্রাঘিমাংশের প্রতিনিধিত্ব করার জন্য এক জোড়া দ্বিগুণ হিসাবে প্রকাশ করা হয়। অন্যথায় নির্দিষ্ট করা না থাকলে, এই বস্তুটিকে অবশ্যই WGS84 মান মেনে চলতে হবে। মানগুলি অবশ্যই স্বাভাবিক সীমার মধ্যে থাকতে হবে৷
JSON প্রতিনিধিত্ব |
---|
{ "latitude": number, "longitude": number } |
ক্ষেত্র | |
---|---|
latitude | ডিগ্রী অক্ষাংশ. এটি অবশ্যই [-90.0, +90.0] এর মধ্যে হতে হবে। |
longitude | ডিগ্রী দ্রাঘিমাংশ. এটি অবশ্যই [-180.0, +180.0] পরিসরে হতে হবে। |
ওয়েপয়েন্ট
একটি ওয়েপয়েন্ট এনক্যাপসুলেট করে। ওয়েপয়েন্টগুলি ভিজিট রিকোয়েস্টের আগমন এবং প্রস্থানের অবস্থানগুলি এবং যানবাহনের শুরু এবং শেষের অবস্থানগুলি চিহ্নিত করে৷
JSON প্রতিনিধিত্ব |
---|
{ "sideOfRoad": boolean, // Union field |
ক্ষেত্র | |
---|---|
side Of Road | ঐচ্ছিক। ইঙ্গিত করে যে এই ওয়েপয়েন্টের অবস্থানটি রাস্তার একটি নির্দিষ্ট পাশে গাড়ি থামানোর জন্য একটি পছন্দকে বোঝানো হয়েছে৷ আপনি যখন এই মানটি সেট করবেন, তখন রুটটি লোকেশনের মধ্য দিয়ে যাবে যাতে গাড়িটি রাস্তার পাশে থামতে পারে যে অবস্থানটি রাস্তার মাঝখানের দিকে পক্ষপাতদুষ্ট। এই বিকল্পটি 'ওয়াকিং' ভ্রমণ মোডের জন্য কাজ করে না। |
ইউনিয়ন ক্ষেত্রের location_type । একটি অবস্থানের প্রতিনিধিত্ব করার বিভিন্ন উপায়। location_type নিম্নলিখিতগুলির মধ্যে একটি হতে পারে: | |
location | একটি ঐচ্ছিক শিরোনাম সহ ভৌগলিক স্থানাঙ্ক ব্যবহার করে নির্দিষ্ট করা একটি বিন্দু৷ |
place Id | POI প্লেস আইডি ওয়েপয়েন্টের সাথে যুক্ত। একটি ভিজিটরিকোয়েস্টের আগমন বা প্রস্থানের অবস্থান নির্দিষ্ট করার জন্য একটি স্থান আইডি ব্যবহার করার সময়, একটি স্থান আইডি ব্যবহার করুন যা স্থানটিতে নেভিগেশনের জন্য একটি LatLng অবস্থান নির্ধারণ করার জন্য যথেষ্ট নির্দিষ্ট। উদাহরণস্বরূপ, একটি বিল্ডিং প্রতিনিধিত্বকারী একটি স্থান আইডি উপযুক্ত, কিন্তু একটি রাস্তা প্রতিনিধিত্বকারী একটি স্থান আইডি নিরুৎসাহিত করা হয়। |
অবস্থান
একটি অবস্থান (একটি ভৌগলিক বিন্দু, এবং একটি ঐচ্ছিক শিরোনাম) এনক্যাপসুলেট করে।
JSON প্রতিনিধিত্ব |
---|
{
"latLng": {
object ( |
ক্ষেত্র | |
---|---|
lat Lng | ওয়েপয়েন্টের ভৌগলিক স্থানাঙ্ক। |
heading | কম্পাস শিরোনাম ট্র্যাফিক প্রবাহের দিকের সাথে যুক্ত। পিকআপ এবং ড্রপ-অফের জন্য ব্যবহার করার জন্য রাস্তার পাশে নির্দিষ্ট করতে এই মানটি ব্যবহার করা হয়। শিরোনামের মান 0 থেকে 360 পর্যন্ত হতে পারে, যেখানে 0 সঠিক উত্তরের একটি শিরোনাম নির্দিষ্ট করে, 90 পূর্বের পূর্বের শিরোনাম উল্লেখ করে ইত্যাদি। |
টাইম উইন্ডো
টাইম উইন্ডো একটি ইভেন্টের সময়কে সীমাবদ্ধ করে, যেমন একটি পরিদর্শনে আগমনের সময়, বা একটি গাড়ির শুরু এবং শেষের সময়।
হার্ড টাইম উইন্ডো বাউন্ডস, startTime
এবং endTime
, ইভেন্টের প্রথম এবং সর্বশেষ সময় প্রয়োগ করে, যেমন startTime <= event_time <= endTime
। সফ্ট টাইম উইন্ডো লোয়ার বাউন্ড, softStartTime
, softStartTime
এ বা পরে ঘটনা ঘটার জন্য একটি পছন্দ প্রকাশ করে যাতে softStartTime এর কতক্ষণ আগে ইভেন্টটি ঘটে তার সমানুপাতিক খরচ বহন করে৷ সফ্ট টাইম উইন্ডো আপার বাউন্ড, softEndTime
, softEndTime
বা তার আগে ইভেন্ট হওয়ার জন্য একটি পছন্দ প্রকাশ করে যাতে softEndTime
কতক্ষণ পরে ঘটনা ঘটে তার সমানুপাতিক খরচ বহন করে৷ startTime
, endTime
, softStartTime
এবং softEndTime
গ্লোবাল সময় সীমার মধ্যে হওয়া উচিত ( ShipmentModel.global_start_time
এবং ShipmentModel.global_end_time
দেখুন) এবং সম্মান করা উচিত:
0 <= `startTime` <= `endTime` and
0 <= `startTime` <= `softStartTime` and
0 <= `softEndTime` <= `endTime`.
JSON প্রতিনিধিত্ব |
---|
{ "startTime": string, "endTime": string, "softStartTime": string, "softEndTime": string, "costPerHourBeforeSoftStartTime": number, "costPerHourAfterSoftEndTime": number } |
ক্ষেত্র | |
---|---|
start Time | কঠিন সময় উইন্ডো শুরু সময়. অনির্দিষ্ট থাকলে এটি RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-সাধারণ করা হবে এবং 0, 3, 6 বা 9 ভগ্নাংশ সংখ্যা ব্যবহার করে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণ করা হয়। উদাহরণ: |
end Time | কঠিন সময় উইন্ডো শেষ সময়. অনির্দিষ্ট থাকলে এটি RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-সাধারণ করা হবে এবং 0, 3, 6 বা 9 ভগ্নাংশ সংখ্যা ব্যবহার করে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণ করা হয়। উদাহরণ: |
soft Start Time | টাইম উইন্ডোর নরম শুরুর সময়। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-সাধারণ করা হবে এবং 0, 3, 6 বা 9 ভগ্নাংশ সংখ্যা ব্যবহার করে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণ করা হয়। উদাহরণ: |
soft End Time | টাইম উইন্ডোর নরম শেষ সময়। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-সাধারণ করা হবে এবং 0, 3, 6 বা 9 ভগ্নাংশ সংখ্যা ব্যবহার করে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণ করা হয়। উদাহরণ: |
cost Per Hour Before Soft Start Time | সফ্টস্টার্টটাইমের আগে ইভেন্টটি ঘটলে মডেলের অন্যান্য খরচের সাথে প্রতি ঘন্টায় একটি খরচ যোগ করা হয়, এই হিসাবে গণনা করা হয়:
এই খরচটি অবশ্যই ইতিবাচক হতে হবে, এবং ক্ষেত্রটি তখনই সেট করা যেতে পারে যদি সফ্টস্টার্টটাইম সেট করা থাকে। |
cost Per Hour After Soft End Time |
এই খরচটি অবশ্যই ইতিবাচক হতে হবে এবং ক্ষেত্রটি কেবল তখনই সেট করা যেতে পারে যদি |
যানবাহন
একটি চালানের সমস্যায় একটি গাড়িকে মডেল করে। একটি চালানের সমস্যা সমাধান করা এই গাড়ির জন্য startLocation
থেকে শুরু করে endLocation
এ শেষ হওয়া একটি রুট তৈরি করবে। একটি রুট হল পরিদর্শনের একটি ক্রম ( ShipmentRoute
দেখুন)।
JSON প্রতিনিধিত্ব |
---|
{ "displayName": string, "travelMode": enum ( |
ক্ষেত্র | |
---|---|
display Name | গাড়ির ব্যবহারকারী-সংজ্ঞায়িত ডিসপ্লে নাম। এটি 63 অক্ষর পর্যন্ত লম্বা হতে পারে এবং UTF-8 অক্ষর ব্যবহার করতে পারে। |
travel Mode | ভ্রমণের মোড যা যানবাহনের দ্বারা ব্যবহারযোগ্য রাস্তা এবং এর গতিকে প্রভাবিত করে। এছাড়াও |
route Modifiers | প্রদত্ত গাড়ির জন্য রুট গণনা করার উপায়কে প্রভাবিত করে এমন শর্তগুলির একটি সেট। |
start Location | ভৌগলিক অবস্থান যেখানে কোনো চালান তোলার আগে গাড়িটি শুরু হয়। নির্দিষ্ট না থাকলে, গাড়িটি তার প্রথম পিকআপে শুরু হয়। চালান মডেলের সময়কাল এবং দূরত্ব ম্যাট্রিক্স থাকলে, |
start Waypoint | ওয়েপয়েন্ট একটি ভৌগলিক অবস্থানের প্রতিনিধিত্ব করে যেখানে কোনো চালান তোলার আগে গাড়িটি শুরু হয়। |
end Location | ভৌগলিক অবস্থান যেখানে গাড়িটি তার শেষ |
end Waypoint | ওয়েপয়েন্ট একটি ভৌগলিক অবস্থানের প্রতিনিধিত্ব করে যেখানে গাড়িটি তার শেষ |
start Tags[] | গাড়ির রুটের শুরুতে সংযুক্ত ট্যাগগুলি নির্দিষ্ট করে৷ খালি বা ডুপ্লিকেট স্ট্রিং অনুমোদিত নয়। |
end Tags[] | গাড়ির রুটের শেষে সংযুক্ত ট্যাগগুলি নির্দিষ্ট করে৷ খালি বা ডুপ্লিকেট স্ট্রিং অনুমোদিত নয়। |
start Time Windows[] | সময় জানালা যে সময় যানবাহন তার স্টার্ট অবস্থান ছেড়ে যেতে পারে. তাদের অবশ্যই বিশ্বব্যাপী সময় সীমার মধ্যে থাকতে হবে ( একই পুনরাবৃত্ত ক্ষেত্রের অন্তর্গত টাইম উইন্ডোগুলি অবশ্যই বিচ্ছিন্ন হতে হবে, অর্থাৎ কোনও টাইম উইন্ডো অন্যটির সাথে ওভারল্যাপ বা সংলগ্ন হতে পারে না এবং সেগুলি অবশ্যই কালানুক্রমিক ক্রমে হতে হবে৷ |
end Time Windows[] | সময় জানালা যেখানে যানবাহন তার শেষ অবস্থানে পৌঁছাতে পারে। তাদের অবশ্যই বিশ্বব্যাপী সময় সীমার মধ্যে থাকতে হবে ( একই পুনরাবৃত্ত ক্ষেত্রের অন্তর্গত টাইম উইন্ডোগুলি অবশ্যই বিচ্ছিন্ন হতে হবে, অর্থাৎ কোনও টাইম উইন্ডো অন্যটির সাথে ওভারল্যাপ বা সংলগ্ন হতে পারে না এবং সেগুলি অবশ্যই কালানুক্রমিক ক্রমে হতে হবে৷ |
unloading Policy | গাড়ির উপর আনলোডিং নীতি প্রয়োগ করা হয়েছে। |
load Limits | গাড়ির ক্ষমতা (উদাহরণস্বরূপ ওজন, আয়তন, # প্যালেট)। মানচিত্রের কীগুলি লোডের ধরন সনাক্তকারী, |
cost Per Hour | যানবাহনের খরচ: সমস্ত খরচ যোগ করা হবে এবং গাড়ির রুট প্রতি ঘন্টা খরচ. এই খরচ রুট দ্বারা নেওয়া মোট সময়ের উপর প্রযোজ্য, এবং ভ্রমণের সময়, অপেক্ষার সময় এবং দেখার সময় অন্তর্ভুক্ত করে। শুধু |
cost Per Traveled Hour | গাড়ির রুটের প্রতি ভ্রমণ ঘণ্টার খরচ। এই খরচ শুধুমাত্র রুট দ্বারা নেওয়া ভ্রমণ সময়ের জন্য প্রযোজ্য হয় (অর্থাৎ, যা |
cost Per Kilometer | গাড়ির রুটের কিলোমিটার প্রতি খরচ। এই খরচ |
fixed Cost | এই গাড়িটি চালান পরিচালনার জন্য ব্যবহার করা হলে নির্দিষ্ট খরচ প্রযোজ্য। |
used If Route Is Empty | এই ক্ষেত্রটি শুধুমাত্র যানবাহনের ক্ষেত্রে প্রযোজ্য যখন তাদের রুটে কোনো চালান সরবরাহ করা হয় না। এটি নির্দেশ করে যে এই ক্ষেত্রে গাড়িটিকে ব্যবহৃত হিসাবে বিবেচনা করা উচিত বা নয়। সত্য হলে, গাড়িটি তার শুরু থেকে শেষ অবস্থানে চলে যায় এমনকি এটি কোনো চালান না দিলেও, এবং সময় এবং দূরত্বের খরচ যা শুরু হয় --> শেষ ভ্রমণের জন্য বিবেচনা করা হয়। অন্যথায়, এটি তার শুরু থেকে শেষ অবস্থান পর্যন্ত ভ্রমণ করে না, এবং এই গাড়ির জন্য কোন |
route Duration Limit | গাড়ির রুটের মোট সময়কালের জন্য সীমা প্রযোজ্য। একটি প্রদত্ত |
travel Duration Limit | গাড়ির রুটের ভ্রমণের সময়সীমার উপর সীমা প্রযোজ্য। একটি প্রদত্ত |
route Distance Limit | গাড়ির রুটের মোট দূরত্বে সীমা প্রযোজ্য। একটি প্রদত্ত |
extra Visit Duration For Visit Type | visitTypes স্ট্রিং থেকে সময়কাল পর্যন্ত একটি মানচিত্র নির্দিষ্ট করে। সময়কাল হল ভিজিট রিকোয়েস্টের একাধিক প্রকার থাকলে ম্যাপে প্রতিটি ধরনের জন্য একটি সময়কাল যোগ করা হবে। |
break Rule | এই গাড়ির উপর প্রয়োগ করা বিরতির সময়সূচী বর্ণনা করে। খালি থাকলে, এই গাড়ির জন্য কোন বিরতি নির্ধারিত হবে না। |
label | এই গাড়ির জন্য একটি লেবেল নির্দিষ্ট করে৷ এই লেবেলটি সংশ্লিষ্ট |
ignore | সত্য হলে, যদি যদি |
travel Duration Multiple | এই গাড়ির ভ্রমণের সময় বাড়াতে বা কমাতে ব্যবহার করা যেতে পারে এমন একটি গুণিতক ফ্যাক্টর নির্দিষ্ট করে। উদাহরণস্বরূপ, এটিকে 2.0 তে সেট করার অর্থ হল এই গাড়িটি ধীরগতির এবং এতে ভ্রমণের সময় রয়েছে যা স্ট্যান্ডার্ড যানবাহনের তুলনায় দ্বিগুণ। এই একাধিক পরিদর্শন সময়কাল প্রভাবিত করে না. এটি খরচকে প্রভাবিত করে যদি সতর্কতা: এই মাল্টিপল প্রয়োগ করার পরে ভ্রমণের সময়গুলিকে নিকটতম সেকেন্ডে বৃত্তাকার করা হবে কিন্তু কোনো সংখ্যাসূচক ক্রিয়াকলাপ সম্পাদন করার আগে, এইভাবে, একটি ছোট মাল্টিপল নির্ভুলতা হারাতে পারে। এছাড়াও নিচে |
ট্রাভেলমোড
যানবাহন দ্বারা ব্যবহার করা যেতে পারে যা ভ্রমণ মোড.
এগুলি Google মানচিত্র প্ল্যাটফর্ম রুট API ভ্রমণ মোডগুলির একটি উপসেট হওয়া উচিত, দেখুন: https://developers.google.com/maps/documentation/routes/reference/rest/v2/RouteTravelMode
দ্রষ্টব্য: WALKING
রুটগুলি বিটাতে রয়েছে এবং কখনও কখনও পরিষ্কার ফুটপাথ বা পথচারী পথগুলি অনুপস্থিত থাকতে পারে৷ আপনি আপনার অ্যাপে প্রদর্শিত সমস্ত হাঁটার রুটের জন্য ব্যবহারকারীকে এই সতর্কতা প্রদর্শন করতে হবে।
Enums | |
---|---|
TRAVEL_MODE_UNSPECIFIED | অনির্দিষ্ট ভ্রমণ মোড, DRIVING এর সমতুল্য। |
DRIVING | ড্রাইভিং দিকনির্দেশের সাথে সম্পর্কিত ভ্রমণ মোড (গাড়ি, ...)। |
WALKING | হাঁটার দিকনির্দেশের সাথে সম্পর্কিত ভ্রমণ মোড। |
রুট মডিফায়ার
যানবাহনের রুট গণনা করার সময় সন্তুষ্ট করার জন্য ঐচ্ছিক অবস্থার একটি সেট এনক্যাপসুলেট করে। এটি Google Maps Platform Routes Preferred API-এর RouteModifiers
এর মতোই; দেখুন: https://developers.google.com/maps/documentation/routes/reference/rest/v2/RouteModifiers ।
JSON প্রতিনিধিত্ব |
---|
{ "avoidTolls": boolean, "avoidHighways": boolean, "avoidFerries": boolean, "avoidIndoor": boolean } |
ক্ষেত্র | |
---|---|
avoid Tolls | যেখানে যুক্তিসঙ্গত টোল রাস্তাগুলি এড়ানো উচিত তা নির্দিষ্ট করে৷ টোল রোড নেই এমন রুটে অগ্রাধিকার দেওয়া হবে। শুধুমাত্র মোটর চালিত ভ্রমণ মোডের জন্য প্রযোজ্য। |
avoid Highways | যেখানে যুক্তিসঙ্গত হাইওয়ে এড়াতে হবে তা নির্দিষ্ট করে। মহাসড়ক নেই এমন রুটে অগ্রাধিকার দেওয়া হবে। শুধুমাত্র মোটর চালিত ভ্রমণ মোডের জন্য প্রযোজ্য। |
avoid Ferries | যেখানে যুক্তিসঙ্গত ফেরিগুলি এড়াতে হবে তা নির্দিষ্ট করে৷ ফেরিতে যাতায়াত নেই এমন রুটে অগ্রাধিকার দেওয়া হবে। শুধুমাত্র মোটর চালিত ভ্রমণ মোডের জন্য প্রযোজ্য। |
avoid Indoor | ঐচ্ছিক। যুক্তিসঙ্গত হলে বাড়ির ভিতরে নেভিগেট করা এড়াতে হবে কিনা তা নির্দিষ্ট করে৷ ইনডোর নেভিগেশন নেই এমন রুটগুলিতে অগ্রাধিকার দেওয়া হবে। শুধুমাত্র |
আনলোডিং নীতি
একটি যানবাহন কিভাবে আনলোড করা যেতে পারে তার নীতি। শুধুমাত্র একটি পিকআপ এবং একটি ডেলিভারি উভয়ই চালানের ক্ষেত্রে প্রযোজ্য৷
অন্যান্য চালানগুলি unloadingPolicy
ব্যতীত রুটের যে কোনও জায়গায় বিনামূল্যে হতে পারে৷
Enums | |
---|---|
UNLOADING_POLICY_UNSPECIFIED | অনির্দিষ্ট আনলোডিং নীতি; ডেলিভারি শুধুমাত্র তাদের সংশ্লিষ্ট পিক আপ পরে ঘটতে হবে. |
LAST_IN_FIRST_OUT | ডেলিভারি পিকআপের বিপরীত ক্রমে ঘটতে হবে |
FIRST_IN_FIRST_OUT | ডেলিভারি পিকআপের মতো একই ক্রমে ঘটতে হবে |
লোডসীমা
একটি গাড়িতে প্রযোজ্য একটি লোড সীমা সংজ্ঞায়িত করে, যেমন "এই ট্রাকটি শুধুমাত্র 3500 কেজি পর্যন্ত বহন করতে পারে"। loadLimits
দেখুন।
JSON প্রতিনিধিত্ব |
---|
{ "softMaxLoad": string, "costPerUnitAboveSoftMax": number, "startLoadInterval": { object ( |
ক্ষেত্র | |
---|---|
soft Max Load | লোড একটি নরম সীমা. |
cost Per Unit Above Soft Max | যদি এই গাড়ির রুটে লোড কখনও |
start Load Interval | রুটের শুরুতে গাড়ির গ্রহণযোগ্য লোডের ব্যবধান। |
end Load Interval | রুটের শেষে গাড়ির গ্রহণযোগ্য লোডের ব্যবধান। |
max Load | লোড সর্বোচ্চ গ্রহণযোগ্য পরিমাণ. |
ব্যবধান
গ্রহণযোগ্য লোড পরিমাণের ব্যবধান।
JSON প্রতিনিধিত্ব |
---|
{ "min": string, "max": string } |
ক্ষেত্র | |
---|---|
min | একটি সর্বনিম্ন গ্রহণযোগ্য লোড. ≥ 0 হতে হবে। যদি তারা উভয়ই নির্দিষ্ট করে থাকে, তাহলে |
max | একটি সর্বোচ্চ গ্রহণযোগ্য লোড. ≥ 0 হতে হবে। অনির্দিষ্ট থাকলে, এই বার্তা দ্বারা সর্বাধিক লোড সীমাবদ্ধ নয়। যদি তারা উভয়ই নির্দিষ্ট করে থাকে, তাহলে |
সময়সীমা
একটি গাড়ির রুটের সর্বাধিক সময়কাল সংজ্ঞায়িত একটি সীমা৷ এটা শক্ত বা নরম হতে পারে।
যখন একটি নরম সীমা ক্ষেত্র সংজ্ঞায়িত করা হয়, তখন সফ্ট সর্বোচ্চ থ্রেশহোল্ড এবং এর সংশ্লিষ্ট খরচ উভয়ই একসাথে সংজ্ঞায়িত করা আবশ্যক।
JSON প্রতিনিধিত্ব |
---|
{ "maxDuration": string, "softMaxDuration": string, "quadraticSoftMaxDuration": string, "costPerHourAfterSoftMax": number, "costPerSquareHourAfterQuadraticSoftMax": number } |
ক্ষেত্র | |
---|---|
max Duration | একটি কঠিন সীমা যা সময়কালকে সর্বোচ্চ সর্বোচ্চ সময়সীমা হতে বাধা দেয়। নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
soft Max Duration | একটি নরম সীমা সর্বোচ্চ সময়সীমার সীমা বলবৎ করে না, কিন্তু লঙ্ঘন করলে রুটটিকে একটি খরচ বহন করতে হয়। এই খরচ একই ইউনিটের সাথে মডেলে সংজ্ঞায়িত অন্যান্য খরচ যোগ করে। যদি সংজ্ঞায়িত করা হয়, নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
quadratic Soft Max Duration | একটি নরম সীমা সর্বোচ্চ সময়সীমার সীমা বলবৎ করে না, কিন্তু লঙ্ঘন করলে রুটটিকে খরচ করতে হয়, সময়কালের মধ্যে দ্বিঘাত। এই খরচ একই ইউনিট সহ মডেলে সংজ্ঞায়িত অন্যান্য খরচ যোগ করে। যদি সংজ্ঞায়িত করা হয়, নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
cost Per Hour After Soft Max |
খরচ nonnegative হতে হবে. |
cost Per Square Hour After Quadratic Soft Max | অতিরিক্ত খরচ হল 0 যদি সময়কাল থ্রেশহোল্ডের নিচে থাকে, অন্যথায় খরচ নিম্নরূপ সময়কালের উপর নির্ভর করে:
খরচ nonnegative হতে হবে. |
দূরত্বসীমা
ভ্রমণ করা যেতে পারে এমন একটি সর্বোচ্চ দূরত্ব সংজ্ঞায়িত করে। এটা শক্ত বা নরম হতে পারে।
যদি একটি সফ্ট সীমা সংজ্ঞায়িত করা হয়, তাহলে softMaxMeters
এবং costPerKilometerAboveSoftMax
উভয়কেই সংজ্ঞায়িত করতে হবে এবং নেতিবাচক হতে হবে।
JSON প্রতিনিধিত্ব |
---|
{ "maxMeters": string, "softMaxMeters": string, "costPerKilometerBelowSoftMax": number, "costPerKilometerAboveSoftMax": number } |
ক্ষেত্র | |
---|---|
max Meters | একটি কঠিন সীমা যা দূরত্বকে সর্বাধিক সর্বোচ্চ মিটার হতে বাধা দেয়। সীমাটি অবশ্যই নেতিবাচক হতে হবে। |
soft Max Meters | একটি নরম সীমা সর্বোচ্চ দূরত্বের সীমা বলবৎ করে না, কিন্তু লঙ্ঘন করলে একটি খরচ হয় যা একই ইউনিটের সাথে মডেলে সংজ্ঞায়িত অন্যান্য খরচের সাথে যোগ করে। যদি সংজ্ঞায়িত করা হয় softMaxMeters অবশ্যই maxMeters থেকে কম হতে হবে এবং অবশ্যই nonnegative হতে হবে। |
cost Per Kilometer Below Soft Max | প্রতি কিলোমিটার খরচ,
এই খরচ |
cost Per Kilometer Above Soft Max | দূরত্ব
খরচ nonnegative হতে হবে. |
BreakRule
একটি যানবাহনের জন্য সময় বিরতি তৈরি করার নিয়ম (যেমন লাঞ্চ বিরতি)। একটি বিরতি হল একটি সংলগ্ন সময়কাল যেখানে যানবাহনটি তার বর্তমান অবস্থানে নিষ্ক্রিয় থাকে এবং কোনও পরিদর্শন করতে পারে না। একটি বিরতি ঘটতে পারে:
- দুটি ভিজিটের মধ্যে ভ্রমণের সময় (যার মধ্যে একটি ভিজিটের আগে বা ঠিক পরে সময় থাকে, তবে ভিজিটের মাঝখানে নয়), এই ক্ষেত্রে এটি ভিজিটের মধ্যে সংশ্লিষ্ট ট্রানজিট সময়কে প্রসারিত করে,
- বা যানবাহন শুরু হওয়ার আগে (একটি বিরতির মাঝখানে যানবাহন শুরু নাও হতে পারে), এই ক্ষেত্রে এটি গাড়ির শুরুর সময়কে প্রভাবিত করে না।
- বা যানবাহন শেষ হওয়ার পরে (এভাবে, গাড়ির শেষ সময় সহ)।
JSON প্রতিনিধিত্ব |
---|
{ "breakRequests": [ { object ( |
ক্ষেত্র | |
---|---|
break Requests[] | বিরতির ক্রম। |
frequency Constraints[] | বেশ কিছু |
ব্রেক রিকোয়েস্ট
বিরতির ক্রম (অর্থাৎ তাদের সংখ্যা এবং ক্রম) যা প্রতিটি গাড়ির জন্য প্রযোজ্য তা অবশ্যই আগে থেকেই জানা উচিত। পুনরাবৃত্ত BreakRequest
গুলি সেই ক্রমটিকে সংজ্ঞায়িত করে, যে ক্রমে সেগুলি ঘটতে হবে৷ তাদের সময় উইন্ডো ( earliestStartTime
/ latestStartTime
) ওভারল্যাপ হতে পারে, কিন্তু সেগুলি অবশ্যই অর্ডারের সাথে সামঞ্জস্যপূর্ণ হতে হবে (এটি চেক করা আছে)৷
JSON প্রতিনিধিত্ব |
---|
{ "earliestStartTime": string, "latestStartTime": string, "minDuration": string } |
ক্ষেত্র | |
---|---|
earliest Start Time | প্রয়োজন। বিরতির শুরুতে লোয়ার বাউন্ড (অন্তর্ভুক্ত)। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-সাধারণ করা হবে এবং 0, 3, 6 বা 9 ভগ্নাংশ সংখ্যা ব্যবহার করে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণ করা হয়। উদাহরণ: |
latest Start Time | প্রয়োজন। বিরতির শুরুতে আপার বাউন্ড (ইনক্লুসিভ)। RFC 3339 ব্যবহার করে, যেখানে উৎপন্ন আউটপুট সর্বদা Z-সাধারণ করা হবে এবং 0, 3, 6 বা 9 ভগ্নাংশ সংখ্যা ব্যবহার করে। "Z" ব্যতীত অন্যান্য অফসেটগুলিও গ্রহণ করা হয়। উদাহরণ: |
min Duration | প্রয়োজন। বিরতির ন্যূনতম সময়কাল। ইতিবাচক হতে হবে। নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
ফ্রিকোয়েন্সি সীমাবদ্ধতা
একটি ন্যূনতম বিরতির ফ্রিকোয়েন্সি প্রয়োগ করে উপরে উল্লেখিত বিরতির ফ্রিকোয়েন্সি এবং সময়কালকে আরও সীমাবদ্ধ করতে পারে, যেমন "প্রতি 12 ঘন্টায় কমপক্ষে 1 ঘন্টা বিরতি থাকতে হবে"। ধরে নিলাম যে এটিকে "12 ঘন্টার যেকোনো স্লাইডিং টাইম উইন্ডোর মধ্যে, কমপক্ষে এক ঘন্টার একটি বিরতি থাকতে হবে" হিসাবে ব্যাখ্যা করা যেতে পারে, এই উদাহরণটি নিম্নলিখিত FrequencyConstraint
অনুবাদ করবে:
{
minBreakDuration { seconds: 3600 } # 1 hour.
maxInterBreakDuration { seconds: 39600 } # 11 hours (12 - 1 = 11).
}
সমাধানে বিরতির সময় এবং সময়কাল এই ধরনের সমস্ত সীমাবদ্ধতাকে সম্মান করবে, BreakRequest
এ ইতিমধ্যে নির্দিষ্ট করা সময় উইন্ডো এবং ন্যূনতম সময়কাল ছাড়াও।
একটি FrequencyConstraint
অনুশীলনে অ-পরপর বিরতিতে প্রযোজ্য হতে পারে। উদাহরণস্বরূপ, নিম্নলিখিত সময়সূচী "প্রতি 12 ঘন্টা" উদাহরণকে সম্মান করে:
04:00 vehicle start
.. performing travel and visits ..
09:00 1 hour break
10:00 end of the break
.. performing travel and visits ..
12:00 20-min lunch break
12:20 end of the break
.. performing travel and visits ..
21:00 1 hour break
22:00 end of the break
.. performing travel and visits ..
23:59 vehicle end
JSON প্রতিনিধিত্ব |
---|
{ "minBreakDuration": string, "maxInterBreakDuration": string } |
ক্ষেত্র | |
---|---|
min Break Duration | প্রয়োজন। এই সীমাবদ্ধতার জন্য ন্যূনতম বিরতির সময়কাল। নেতিবাচক। নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
max Inter Break Duration | প্রয়োজন। রুটের যেকোনো সময়ের ব্যবধানের সর্বাধিক অনুমোদিত স্প্যান যা অন্তত আংশিকভাবে নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
সময়কাল দূরত্ব ম্যাট্রিক্স
পরিদর্শন এবং যানবাহন শুরুর অবস্থানগুলি এবং যানবাহনের শেষ অবস্থানগুলি থেকে একটি সময়কাল এবং দূরত্বের ম্যাট্রিক্স নির্দিষ্ট করে৷
JSON প্রতিনিধিত্ব |
---|
{
"rows": [
{
object ( |
ক্ষেত্র | |
---|---|
rows[] | সময়কাল এবং দূরত্ব ম্যাট্রিক্সের সারিগুলি নির্দিষ্ট করে। এটিতে |
vehicle Start Tag | এই সময়কাল এবং দূরত্ব ম্যাট্রিক্স কোন যানবাহনের জন্য প্রযোজ্য তা নির্ধারণ করে ট্যাগ৷ খালি থাকলে, এটি সমস্ত যানবাহনের ক্ষেত্রে প্রযোজ্য, এবং শুধুমাত্র একটি একক ম্যাট্রিক্স থাকতে পারে৷ প্রতিটি গাড়ির স্টার্ট অবশ্যই একটি ম্যাট্রিক্সের সাথে মিলতে হবে, অর্থাৎ তাদের সমস্ত ম্যাট্রিক্সের একটি আলাদা |
সারি
সময়কাল এবং দূরত্ব ম্যাট্রিক্সের একটি সারি নির্দিষ্ট করে।
JSON প্রতিনিধিত্ব |
---|
{ "durations": [ string ], "meters": [ number ] } |
ক্ষেত্র | |
---|---|
durations[] | একটি প্রদত্ত সারির সময়কালের মান। এটিতে নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
meters[] | একটি প্রদত্ত সারির জন্য দূরত্বের মান। যদি কোন খরচ বা সীমাবদ্ধতা মডেলের দূরত্ব উল্লেখ না করে, তাহলে এটি খালি রাখা যেতে পারে; অন্যথায় এটির |
ট্রানজিশন অ্যাট্রিবিউট
একটি রুটে পরপর দুটি ভিজিটের মধ্যে পরিবর্তনের বৈশিষ্ট্যগুলি নির্দিষ্ট করে৷ একই ট্রানজিশনে বেশ কিছু TransitionAttributes
প্রযোজ্য হতে পারে: সেই ক্ষেত্রে, সমস্ত অতিরিক্ত খরচ যোগ হয় এবং কঠোরতম সীমাবদ্ধতা বা সীমা প্রযোজ্য হয় (প্রাকৃতিক "AND" শব্দার্থবিদ্যা অনুসরণ করে)।
JSON প্রতিনিধিত্ব |
---|
{
"srcTag": string,
"excludedSrcTag": string,
"dstTag": string,
"excludedDstTag": string,
"cost": number,
"costPerKilometer": number,
"distanceLimit": {
object ( |
ক্ষেত্র | |
---|---|
src Tag | ট্যাগগুলি (src->dst) ট্রানজিশনের সেট সংজ্ঞায়িত করে এই বৈশিষ্ট্যগুলি প্রযোজ্য৷ একটি উৎস ভিজিট বা গাড়ির স্টার্ট মিলছে যদি এর |
excluded Src Tag | |
dst Tag | একটি গন্তব্য পরিদর্শন বা যানবাহনের সমাপ্তি মিলছে যদি এর |
excluded Dst Tag | |
cost | এই রূপান্তর সম্পাদনের জন্য একটি খরচ নির্দিষ্ট করে৷ এটি মডেলের অন্যান্য সমস্ত খরচের মতো একই ইউনিটে এবং নেতিবাচক হওয়া উচিত নয়৷ এটি অন্যান্য সমস্ত বিদ্যমান খরচের উপরে প্রয়োগ করা হয়। |
cost Per Kilometer | এই স্থানান্তরটি সম্পাদন করার সময় ভ্রমণ করা দূরত্বের জন্য প্রযোজ্য প্রতি কিলোমিটার খরচ নির্দিষ্ট করে৷ এটি যানবাহনে নির্দিষ্ট করা যেকোনো |
distance Limit | এই রূপান্তরটি সম্পাদন করার সময় ভ্রমণ করা দূরত্বের একটি সীমা নির্দিষ্ট করে৷ 2021/06 অনুযায়ী, শুধুমাত্র নরম সীমা সমর্থিত। |
delay | এই রূপান্তরটি সম্পাদন করার সময় যে বিলম্ব হয়েছে তা উল্লেখ করে। এই বিলম্ব সর্বদা উৎস পরিদর্শন শেষ করার পরে এবং গন্তব্য পরিদর্শন শুরু করার আগে ঘটে। নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
শিপমেন্ট টাইপ অসঙ্গতি
তাদের চালানের প্রকারের উপর নির্ভর করে চালানের মধ্যে অসঙ্গতিগুলি নির্দিষ্ট করে৷ অসঙ্গতি মোডের উপর ভিত্তি করে একই রুটে অসামঞ্জস্যপূর্ণ চালানের উপস্থিতি সীমাবদ্ধ।
JSON প্রতিনিধিত্ব |
---|
{
"types": [
string
],
"incompatibilityMode": enum ( |
ক্ষেত্র | |
---|---|
types[] | বেমানান প্রকারের তালিকা। তালিকাভুক্তদের মধ্যে আলাদা |
incompatibility Mode | অসঙ্গতিতে মোড প্রয়োগ করা হয়েছে। |
অসঙ্গতি মোড
একই রুটে অসামঞ্জস্যপূর্ণ চালানের উপস্থিতি কীভাবে সীমাবদ্ধ থাকে তা নির্ধারণ করে।
Enums | |
---|---|
INCOMPATIBILITY_MODE_UNSPECIFIED | অনির্দিষ্ট অসঙ্গতি মোড। এই মান ব্যবহার করা উচিত নয়. |
NOT_PERFORMED_BY_SAME_VEHICLE | এই মোডে, অসামঞ্জস্যপূর্ণ ধরনের দুটি চালান একই যানবাহন ভাগ করতে পারে না। |
NOT_IN_SAME_VEHICLE_SIMULTANEOUSLY |
|
চালানের প্রকারের প্রয়োজনীয়তা
তাদের চালানের প্রকারের উপর ভিত্তি করে চালানের মধ্যে প্রয়োজনীয়তা নির্দিষ্ট করে। প্রয়োজনীয়তার সুনির্দিষ্ট বৈশিষ্ট্য প্রয়োজন মোড দ্বারা সংজ্ঞায়িত করা হয়।
JSON প্রতিনিধিত্ব |
---|
{
"requiredShipmentTypeAlternatives": [
string
],
"dependentShipmentTypes": [
string
],
"requirementMode": enum ( |
ক্ষেত্র | |
---|---|
required Shipment Type Alternatives[] | |
dependent Shipment Types[] | দ্রষ্টব্য: প্রয়োজনীয়তার চেইন যেমন একটি |
requirement Mode | প্রয়োজনে মোড প্রয়োগ করা হয়েছে। |
প্রয়োজন মোড
একটি রুটে নির্ভরশীল চালানের উপস্থিতি সংজ্ঞায়িত করে।
Enums | |
---|---|
REQUIREMENT_MODE_UNSPECIFIED | অনির্দিষ্ট প্রয়োজনীয় মোড. এই মান ব্যবহার করা উচিত নয়. |
PERFORMED_BY_SAME_VEHICLE | এই মোডে, সমস্ত "নির্ভরশীল" চালানকে অবশ্যই তাদের "প্রয়োজনীয়" চালানের অন্তত একটির মতো একই গাড়ি ভাগ করতে হবে। |
IN_SAME_VEHICLE_AT_PICKUP_TIME | একটি "নির্ভরশীল" শিপমেন্ট পিকআপে তাই অবশ্যই থাকতে হবে:
|
IN_SAME_VEHICLE_AT_DELIVERY_TIME | আগের মতোই, "নির্ভরশীল" চালানগুলি ছাড়া তাদের ডেলিভারির সময় তাদের গাড়িতে একটি "প্রয়োজনীয়" চালান থাকতে হবে৷ |
অগ্রাধিকার নিয়ম
দুটি ইভেন্টের মধ্যে একটি অগ্রাধিকার নিয়ম (প্রতিটি ইভেন্ট হল পিকআপ বা একটি চালানের ডেলিভারি): "দ্বিতীয়" ইভেন্টটি "প্রথম" শুরু হওয়ার পরে কমপক্ষে offsetDuration
শুরু করতে হবে।
একই (বা সম্পর্কিত) ঘটনাগুলিকে উল্লেখ করতে পারে বেশ কিছু পূর্বসূর্য, যেমন, "A-এর ডেলিভারির পরে B-এর পিকআপ হয়" এবং "B-এর পিক-আপের পরে C-এর পিকআপ ঘটে"।
তদ্ব্যতীত, অগ্রাধিকার শুধুমাত্র তখনই প্রযোজ্য যখন উভয় চালান সঞ্চালিত হয় এবং অন্যথায় উপেক্ষা করা হয়।
JSON প্রতিনিধিত্ব |
---|
{ "firstIsDelivery": boolean, "secondIsDelivery": boolean, "offsetDuration": string, "firstIndex": integer, "secondIndex": integer } |
ক্ষেত্র | |
---|---|
first Is Delivery | "প্রথম" ইভেন্টটি একটি ডেলিভারি কিনা তা নির্দেশ করে৷ |
second Is Delivery | "দ্বিতীয়" ইভেন্টটি একটি ডেলিভারি কিনা তা নির্দেশ করে৷ |
offset Duration | "প্রথম" এবং "দ্বিতীয়" ইভেন্টের মধ্যে অফসেট। এটা নেতিবাচক হতে পারে. নয়টি পর্যন্ত ভগ্নাংশের সংখ্যা সহ সেকেন্ডে একটি সময়কাল, ' |
first Index | "প্রথম" ইভেন্টের চালান সূচক। এই ক্ষেত্র নির্দিষ্ট করা আবশ্যক. |
second Index | "দ্বিতীয়" ইভেন্টের চালান সূচক। এই ক্ষেত্র নির্দিষ্ট করা আবশ্যক. |