A hybrid cuckoo search algorithm with feasibility-based rule for constrained structural optimization