T
Size: a a a
T
T
T
ST
(defn capacity-not-exceded? [vechicle stop]
(let [load (:load stop)
capacity (:capacity vechicle)]
(any? < (map vec capacity load))))
(defn find-capacity-violation [tour fleet]
(let [type-name (:typeId tour)
vechicle-type (vehicle-by-type fleet type-name)
stops (:stops tour)]
(filter (partial capacity-not-exceded? vechicle-type) stops)))
(defn validate-maximal-capacity [problem solution]
(let [fleet (:fleet problem)
tours (:tours solution)]
(filter nil? (map #(find-capacity-violation % fleet) tours))))
T
AR
MB
НМ
Ц
TP
VM
AG
TP
IG
TP
VM
TP
TP
IG
IG