Knowledge based systems in civil engineering