Software development, law and ethics · A level · OCR H446 1.5.2, AQA 7517 4.8.1 · about 45 min
Automated decisions, AI, surveillance, personal data at scale, censorship, piracy, the environment and accessibility, with an autonomous robot that explains every decision.
[1 mark]A CV-screening system trained on a company's past hiring decisions rejects most applicants from one group. What is the most likely cause?
[1 mark]Which of these are named by OCR as moral and ethical issues of digital technology?
Tick every answer that is true.
[1 mark]AQA says software and its algorithms embed moral and cultural values. What does this mean?
[1 mark]Why does the scale of software raise the stakes of a developer's decisions?
[1 mark]Why does an autonomous robot that logs each decision with its reason help with accountability?
The robot starts 66 cm from a person standing in the corridor, facing them. Write a program that approaches safely and explains every decision it makes.
Repeat: read the gap with distance() and decide:
- if the gap is more than 40 cm, the decision is drive: LED green, then move forward 5 cm at speed 60;
- if the gap is more than 25 cm but not more than 40 cm, the decision is slow: LED orange, then move forward 2 cm at speed 30;
- otherwise the decision is stop: LED red, and leave the loop without moving.
Print a line only when the decision changes from the previous one (including the first decision), in the form <time> s: <decision>, because the gap is <gap> cm, where <time> is clock() and <gap> is the reading the decision was based on. Change the LED at the same moment. After the loop, play a note and print handing over to a human. That makes exactly four lines. Do not touch the person.
# the two lines every program starts with: the commands, then the robot from bugbot import * connect() last = "" # the previous decision, so a line is printed only when it changes
Plan your program here, then type it in and press Run.