Бэй бронирование для рейсов - PullRequest
0 голосов
/ 17 октября 2018

Я разрабатываю алгоритм резервирования отсеков для рейсов в заданном аэропорту.Я смоделировал эту проблему следующим образом:

У меня есть набор рейсов:

flight_names = ['MI428', 'UL867', 'QR664', 'TK730', 'UL303']

Здесь каждый полет связан с типом самолета, и у каждого залива есть список совместимости самолетов, которые только залив можетрезерв для.Так что это мое первое ограничение.Это может быть перечислено как ниже.

bay_compat = {'MI428': ['A1', 'A2', 'B1'], 'UL867': ['B1', 'B2'], 'QR664': ['A2', 'B1', 'B2'], 'TK730': ['C1', 'A1'],
              'UL303': ['B2', 'C1']}

Примечание: В вышеуказанном наборе для простоты понимания я непосредственно сопоставил идентификатор полета со списком совместимости, а не отображал тип самолета, который соответствует полету.

Мое второе ограничение - «время прибытия» и «время вылета» для рейсов.У каждого рейса есть время прибытия и время вылета, поэтому самолет, соответствующий этому рейсу, будет находиться в назначенном заливе.Пример структуры данных, которую я использовал для представления этого следующим образом:

time_constraints = {'MI428':(1,3) , 'UL867':(4,7), 'QR664':(8,9), 'TK730':(15,16), 'UL303':(16,17)}

В приведенном выше списке кортежей первое число - время прибытия, а второе - время отправления.

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

...