مدل هزینه

دارایی‌های هزینه در ShipmentModel.shipments.Shipment و ShipmentModel.vehicles.Vehicle تعریف شده است

هدف اصلی Route Optimization API یافتن مسیرهایی با کمترین هزینه است. به‌این‌ترتیب، مدل هزینه عامل اصلی بهینه‌سازی مسیر است.

مدل هزینه مجموعه‌ای از دارایی‌ها است که هزینه‌های جهانی، خودرو، و ارسال را مشخص می‌کند.

ویژگی‌های مدل هزینه از انواع اهداف بهینه‌سازی زیر پشتیبانی می‌کنند:

  • تخصیص خودرو و مسیرهای کارآمد
  • زمان‌های تحویل و ارسال مقرون‌به‌صرفه
  • اولویت‌بندی محموله‌های حیاتی

ساختار

همان‌طور که در نمودار نشان داده شده است، ویژگی‌های مدل هزینه به‌صورت زیر ساختاردهی شده‌اند:

این سند فقط پارامترهای ضروری مدل هزینه را برجسته می‌کند. برای مجموعه کامل پارامترهای هزینه، اسناد مرجع را ببینید.

بازبینه ضروریات

فهرست وارسی زیر دانش ضروری را که از اشتباهات احتمالی مربوط به هزینه جلوگیری می‌کند شرح می‌دهد. این فهرست می‌تواند به شما کمک کند درخواستتان را اعتبارسنجی کنید و پاسخ را عیب‌یابی کنید.

مشخصات

جدول زیر ویژگی‌های مدل هزینه را فهرست و توصیف می‌کند.

والدین نام دارایی نوع ملک هزینه به‌ازای شرح ملک
Shipment penaltyCost شماره ارسال رد شد هزینه ناشی از رد کردن ارسال.
وقتی هزینه تکمیل ارسال از هزینه جریمه آن بیشتر باشد، API از آن ارسال صرف‌نظر می‌کند.
  • تنظیم penaltyCost تحویل محموله‌های با هزینه بالاتر را در اولویت قرار می‌دهد.
  • عدم تنظیم ارسال penaltyCost باعث می‌شود ارسال الزامی شود.
  • اگر مقدار ارسال را به‌طور صریح روی penaltyCost صفر تنظیم کنید، باعث می‌شود API همیشه از ارسال صرف‌نظر کند، مگر اینکه محدودیت‌های دیگر آن را الزامی کند.
Vehicle fixedCost شماره ارسال کالا اگر از این خودرو برای جابه‌جایی محموله استفاده شود، هزینه ثابت اعمال می‌شود.
costPerHour شماره ساعت هزینه کار کردن با خودرو در هر ساعت شامل زمان‌های ترانزیت، انتظار، بازدید، و استراحت.
با افزایش این هزینه، بهینه‌ساز تلاش می‌کند مسیرهای سریع‌تری پیدا کند که ممکن است کوتاه‌ترین مسیرها نباشند.
این ملک به‌دلیل سادگی و کامل بودن می‌تواند هزینه مستقل مؤثری برای هر خودرو باشد.
costPerKilometer شماره کیلومتر هزینه به‌ازای هر کیلومتر طی‌شده توسط خودرو که می‌تواند نشان‌دهنده هزینه سوخت یا هزینه استهلاک نگهداری خودرو باشد.
costPerTraveledHour شماره ساعت هزینه کارکرد خودرو در ساعت فقط درحین جابه‌جایی، به‌استثنای زمان‌های انتظار، بازدید، و استراحت. این تنظیم مسیرهای سریع‌تر را بر مسیرهای کوتاه‌تر اولویت می‌دهد.

مثال‌ها

این بخش سه نوع مثال را پوشش می‌دهد:

  • نمونه‌های کد که ساختار ویژگی‌های مدل هزینه را نشان می‌دهند.
  • سناریو نمونه که یکی از روش‌های استفاده از ویژگی‌های مدل هزینه را برای دستیابی به هدف کسب‌وکار نشان می‌دهد.
  • نمونه درخواست که شامل مقادیر تنظیم‌شده در سناریو نمونه است.

نمونه‌های کد

نمونه کد زیر ساختار ویژگی‌های مدل هزینه را در Shipment نشان می‌دهد:

{
  "model": {
    "shipments": [ ...
      {
        "penaltyCost": PENALTY_COST
      }
    ],
    "vehicles": [ ...
    ]
  }
}

نمونه کد زیر ساختار ویژگی‌های مدل هزینه را در Vehicle نشان می‌دهد:

{
  "model": {
    "shipments": [ ...
    ],
    "vehicles": [ ...
      {
        "fixedCost": FIXED_COST,
        "costPerKilometer": KILOMETER_COST,
        "costPerHour": HOUR_COST,
        "costPerTraveledHour": TRAVELED_HOUR_COST
      }
    ]
  }
}

سناریوی نمونه

این بخش سناریویی را شرح می‌دهد که در آن کسب‌وکار نگهداری از سگ دارید. شما درحال بهینه‌سازی مسیری برای کامیونی هستید که از آن برای جمع‌آوری سگ‌ها از خانه‌هایشان استفاده می‌کنید. در این سناریو، می‌خواهید بهینه‌ساز هنگام ارائه مسیر، هزینه‌های مربوط به سوار کردن سگ‌ها و عملیات خودرو را درنظر بگیرد.

برای این مثال، یک واحد هزینه نشان‌دهنده ۱ دلار است. این یعنی مقادیر دارایی مدل هزینه در درخواست شما به‌صورت زیر است:

دارایی مقدار سناریو
penaltyCost 10 نشان‌دهنده جریمه‌ای است که برای مشتریانی که سگشان را در روز تعیین‌شده تحویل نمی‌گیرند درنظر گرفته‌اید. هر زمان که سگ را در روز برنامه‌ریزی‌شده تحویل نگیرید، ۴۰ دلار از کل هزینه خدمات مشتری کسر می‌شود.
fixedCost 30 نشان‌دهنده هزینه روزانه پرداخت‌های وام خودرو شما است که ۳۰ دلار در روز است.
costPerKilometer ۰٫۰۸ نشان‌دهنده میزان مصرف بنزین خودرو شما در هر کیلومتر است. خودرو شما برای حرکت در هر کیلومتر به ۰٫۰۴ گالن سوخت نیاز دارد و هزینه هر گالن در منطقه شما ۲ دلار است.
costPerHour 27 نشان‌دهنده مبلغی است که به راننده برای راندن وسیله نقلیه‌تان پرداخت می‌کنید. به راننده ساعتی ۲۷ دلار پرداخت می‌کنید.
costPerTraveledHour ۲٫۵ نشان می‌دهد که برای هر ساعت استفاده از تهویه مطبوع خودرو برای سگ‌ها درطول سفر چقدر باید بپردازید. هرزمان خودرو حرکت نمی‌کند، راننده می‌تواند درهای عقب را باز کند و تهویه مطبوع را خاموش کند.

بهینه‌ساز براساس پارامترهای هزینه می‌تواند مبادله‌هایی انجام دهد که برای کاربر آشکار نیست، اما ازطریق بهینه‌سازی می‌توان آن‌ها را پیدا کرد.

نمودار زیر نمونه‌ای را نشان می‌دهد که در آن بهینه‌ساز می‌تواند مسیر طولانی‌تر اما سریع‌تری را ازطریق خط نقطه‌چین سبز انتخاب کند تا از ترافیک در خط نقطه‌چین قرمز اجتناب کند.

خودرو دو مسیر احتمالی دارد، یکی با خط‌چین سبز نشان داده شده است که طولانی‌تر است اما هیچ حادثه‌ای در آن وجود ندارد، و دیگری با نقطه‌چین قرمز نشان داده شده است که کوتاه‌تر است اما تصادف خودرویی در وسط آن وجود دارد.

در این سناریو، تراز هزینه دو مسیر به‌صورت زیر است:

  • خط نقطه‌چین سبز costPerHour پایینی دارد و costPerTraveledHour چون مسیری سریع است که از ترافیک پرهیز می‌کند، حتی وقتی costPerKilometer بالا باشد، مقرون‌به‌صرفه‌تر است.

  • خط نقطه‌چین قرمز costPerKilometer پایینی دارد چون مسیر مستقیم است، اما costPerHour و costPerTraveledHour به‌دلیل زمان انتظار در ترافیک بسیار بالا است، که آن را به گران‌ترین مسیر تبدیل می‌کند.

بهینه‌ساز علاوه‌بر ارائه مسیرهای مقرون‌به‌صرفه، مجموع هزینه‌های کل مسیرهای تحویل را نیز در ویژگی‌های پاسخ ارائه می‌دهد.

درخواست کردن نمونه

مثال زیر ساختار یک optimizeTours درخواست پایه را نشان می‌دهد که مقادیر تنظیم‌شده در سناریو مثال را دربرمی‌گیرد:

{
  "model": {
    "shipments": [
      {
        "pickups": [
          {
            "arrivalLocation": {
              "latitude": 37.8024,
              "longitude": -122.4058
            }
          }
        ],
        "deliveries": [
          {
            "arrivalLocation": {
              "latitude": 37.759773,
              "longitude": -122.427063
            }
          }
        ]
        "penaltyCost": 40
      }
    ],
    "vehicles": [
      {
        "startLocation": {
          "latitude": 37.759773,
          "longitude": -122.427063
        },
        "endLocation": {
          "latitude": 37.759773,
          "longitude": -122.427063
        },
        "fixedCost": 30,
        "costPerKilometer": 0.08,
        "costPerHour": 27,
        "costPerTraveledHour": 2.5
      }
    ]
  }
}

مشخصات پاسخ

پیام OptimizeToursResponse دارای ویژگی‌های هزینه است که هزینه‌های متحمل‌شده در فرایند تکمیل مسیر را توصیف می‌کند:

  • metrics.costs: هزینه کل در همه مسیرها براساس فیلدهای درخواست مربوط به هزینه تفکیک می‌شود.
  • metrics.totalCost: مجموع هزینه در همه مسیرها.