The course describes theories, methods, and technologies for designing software and hardware systems that are inspired upon natural evolution. It also shows how artificial systems can help to understand biological systems.