Applying Chromathics to Data Processing and Computations @ ICDM 2018
Tony Nolan & Emily Nolan
G3N1U5
Warwick Graco & Stewart Turner
Australian Taxation Office
Garry Mitchell
Analytics Workshed
Charles Palmer
ACT Electricity, Water and Gas
Abstract
This paper describes a colour approach to doing data processing and computations and it illustrates this with everyday applications. Everything can be represented as light with examples including text, numbers, objects and patterns. They can be each given a unique colour code.
Computers that use light to perform data processing and computations are referred to either as ‘chromatic computers’ or ‘photonic computers’. Light can be decomposed into a colour spectrum and colours can be used to represent data and to do mathematical operations.
Chromathics is a process of doing calculations and transformations with light. Light-based operations can be performed at speeds faster than digital ones and can compress data better than can be done with digital computers.
This paper will explain both chromatic computers and chromathics. It will provide everyday examples to illustrate the use of a colour approach to computing.
Introduction
Colour is an integral part of the universe. Everything has colour. Sometimes it is natural and other times it is artificial. Colour is simply the wavelength of light.
In nature, certain animals have specific colours and patterns which allow them to function, survive, mate and similar. For example a gecko changes the colour of its skin to match the colour of its background. This gives it protection against predators.
Analogue versus Digital Computers
There are different views on analogue computers versus digital ones. An analogue computer [1] uses continuous values to represent electrical, mechanical or physical quantities that are employed in the problem being solved. In contrast, digital computers [2] represent quantities in binary form as ‘0s’ and ‘1s’ and perform high speed calculations using binary numbers.
Analogue computers operate on mathematical variables in the form of physical quantities. Examples include temperature, pressure and electrical currents. Any real physical process can be represented by a mathematical model. This is the basis of analogue computing. After the modelling of the physical process has been completed, the computations performed by analogue computers are easy to do and convenient.
The advantage of analogue computers are that they can show the solutions in a graphical manner. In an analogue computer the output can be connected to an oscilloscope and results can be viewed by users. In a digital computer the modelling may require complex programming and the use of graphical applications to represent the results.
The disadvantages of analogue computers are that they are not versatile and they may not be as accurate as digital computers. The accuracy of the analogue computers is limited and dependent on a number for factors such as the circuit parameters and the wiring of the computer and are prone to external influences such as magnetic effects and ambient temperature and pressure.
Examples of analogue computers include slide rules, tide predictors, the Norden bomb sight, electric integrators that solve partial differential equations, electronic machines that solve differential equations, machines that solve algebraic equations and neural networks.
Digital computers deal with mathematical variables in form of numbers that represent discrete values of physical quantities. The advantages of digital computers are that they are versatile, programmable, accurate, and less affected by outside influences in contrast to analogue computers. As pointed out calculations are performed using binary numbers. Most modern computers, laptops, and calculators are digital in their operations.
The disadvantages of digital computers include the way they deal with larger numbers. These are denoted using a sequence of ‘0s and ‘1s’ digits called bits and bytes. They are therefore computationally slower, because they have to pass more data in a data stream to achieve the same results.
Chromatic Computers
Chromatic also can be called ‘photonic’ computers use light to do data processing and numerical operations. Light can be decomposed into a colour spectrum and the different colours can be used to represent data and to do mathematical procedures.
Chromatic computers can work in either analogue or digital mode. They can also be applied in an integrated manner such as with hybrid computers. Specific combinations of these different computers can differ from hardware to hardware, from situation to situation and from problem to problem –i.e. they can be used in digital, in analogue or in both modes of operation.
Chromathics
This is about doing calculations and transformations using light. It works along the same lines as logarithms, where numbers are transformed into log values, mathematical operations are performed on the numbers such as addition or subtraction, and then the results are converted back to numerical results. Chromathics, as with logarithms, involves transforming numbers into colours, sometimes mathematical operations are performed with the data and the resulting results are converted back into numbers [3].
A similar approach can also be used with text where it is converted to colour and transmitted from one location to another and then converted back to text. This can be used with the encryption of messages. This will be illustrated and discussed later in the paper.
Chromathic Operations
These are used to perform operations where data in transformed and transmitted in colour rather than digital form. They include the use of three basic colours of red, green and blue. These three colours can be combined two at a time to form other colours. For example, a combination of red and green gives a yellow tone and a combination of red and blue gives purple tone.
Information is stored as bits and bytes in a digital computer. A bit is the smallest unit for storing information. A bit contains either a ‘0’ or ‘1’. This is insufficient to represent characters used for conveying information and representing numbers.
A byte consists of 8 bits and is used to signify a character such as ‘A’, ‘9’ or ‘#’. This is done using an 8 bit binary code of ‘0s’ and ‘1s’. Therefore a byte is the standard binary packet that is used by computers to represent characters. A byte of 8 bits can furnish 256 or 28 patterns. Therefore a byte can store a number between 0 and 255 for numerical values. It can also represent 256 colours.
Each pulse containing a chromatic representation of data consists of the three basic colours of red, blue and green. Each pulse can also represent a number between 0 and 16,777,216 based on the following calculation:
256 (red tone) * 256 (green tone) * 256 (blue tone) = 16,777,216 or 224 colours.
If a second pulse is sent this enables a number between 0 to 281,474,976,710,656 or 248 to be used. The upper limit increases exponentially as more pulses are added to the signals.
Coloured Barcode
The concept of a coloured barcode was selected to represent entities and events using colour. It is based on the QR code system [4]. QR stands for ‘quick response’.
QR Code
The QR code system was invented in 1994 by the Japanese company Denso Wave. Its purpose was to track vehicles during manufacturing. It was designed to allow high-speed component scanning. QR codes are now used in a much broader context, including both commercial tracking applications and convenience-oriented applications aimed at mobile-phone users (termed mobile tagging). They may be used to display text to the user, to open a Uniform Resource Identifier (URI), or to compose an email or text message. There are now many QR code generators available.
A QR code consists of either black squares arranged in a square grid on a white background or it can be any mix of colours provided with contrast high enough to allow differentiation of cells. It can be read by an imaging device such as a camera and is processed using Reed-Solomon error correction [5] until the image can be correctly interpreted. The required data is then extracted from the QR patterns that are present in both horizontal and vertical components of the image as shown below.
The QR code has become one of the most-used types of two-dimensional code. A QR code uses four standardized encoding modes (numeric, alphanumeric, byte/binary, and kanji) to efficiently store data. Extensions may also be used.
Colour Barcode
A barcode is a machine-readable optical label that contains information about the item or event which it represents. The coloured barcode employed in the applications described in this paper are the equivalent of a pixelated image where each colour bar contains information arranged in a sequence. The colour employed in each bar is the combination of three basic colours highlighted previously of red, green, and blue. Examples are shown later in the paper.
Doing mathematical operations with chromathics are still being explored. However, early results look promising.
Chromathics enables a numerical value between 0 and 16,777,216 to be represented in a single colour square. In this form, mathematical calculations can be performed in the same way as logarithms.
By placing these coloured squares in a three-part sequence of ‘number – operator’, ‘number – operator’ and ‘number – operator’ computations, a chromatic barcode can be produced. A number of coloured squares can be assembled together to make a barcode to give higher numerical values. As was previously mentioned in this paper, a numerical value of up to 281.5 trillion can be represented by two coloured squares. The squares are a categorical representation of the different mathematical operations in a list. This list is repeated three times for the variable it is applied to.
The key difference doing this computationally is that chromathics can decompose the numerical value into three parts and apply different mathematical operations to any of these parts. By doing chromathics in a barcode, means that each colour represents a mathematical operation of a number. There is no variation required for the mathematical operations because they are standardised.
However, numerical representative colours can represent whole numbers, negative numbers or decimal points. But a barcode is just a number of coloured squares in a sequence. It can be read left to right or all at one time – i.e. in sequence or in parallel. So in this case a barcode can be an imprint on a page, an image file or a pulse of light. The pulses (i.e. segments) need to be consistent. If whole positive numbers are employed then each pulse is a value between 0 and 16,777,216. If decimal numbers are used, then the same range can be applied with an adjustment calculation in the computer. If however negative numbers are required, then the range is between -8,421,504 and +8,421,504. This is exactly half way and this needs to be balanced like this to accommodate pulses in either direction.
Advantages
There are advantages in using chromatic computers. One is the compression ratios that can be achieved with data, the second is more efficient computer operations and the third is that it can use fuzzy logic.
Data Compression
Three columns and 2520 rows of data represents 105 kb in a CSV file [6]. A jpg file [7], which is used for web pages, can store the same data using 8.48 kb. It is to be noted that JPG uses lossy compression techniques [8] where as a CSV is a literal compression. This illustrates that the files are smaller in size than using CSV representations.
The compression advantage with chromathics is that the combination of three lights in one pulse and that light has a higher range of values in a single pulse than using a black and white representations.
Colour versus Binary Operations
Chromathics is more efficient than traditional binary operations. This is illustrated with weather systems where three sensors employed provide real-time measurements of air pressure, humidity, and temperature would be compressed into single pulses which are then transmitted at optical speed. The optical pulses received by a sensor decodes them using optical bypass filters to be processed to provide weather data.
If these operations were done in a binary system, the values from each sensor would have to be converted into binary code and then transmitted as pulses. The binary codes would then have to be converted back to their original values. This would require more computer processing because of the use of binary code than using a colour approach.
Fuzzy Logic
This is an approach to computing based on ‘degrees of truth’ in which the truth values of variables can be any real number between ‘0’ and ‘1’ rather than ‘true or false’ or ‘0’ or ‘1’ with crisp logic on which digital computers are based. The concept of fuzzy logic was first advanced by Lotfi Zadeh [9] from the University of California at Berkeley in the 1960s. It is employed to handle problems and issues involving partial truths where the truth value may range between completely true and completely false.
Electromagnetic Spectrum
Light is part of the electromagnetic spectrum [10]. This spectrum is divided into separate bands according to frequency and wavelength. They include radio waves, microwaves, infrared radiation, the visible region that is perceived as light, ultraviolet, X-rays and gamma rays.
The question can be raised why not use the whole of the electromagnetic spectrum instead of the narrow band that covers light to perform chromathic operations. Light has two advantages over using the whole of the electromagnetic spectrum. The first is that is easier to use with filters and the second is that it is easy to combine numbers using light.
The main reasons for this are simple logistics and the type of user. From a machine point of view, the main reason is the question of which technology gives the best definition between the pulses, to run the processes and to achieve an end result. For humans it is different. They, except the visually impaired, are used to dealing with light and most of the technology used in the world rely on the use of light. In addition users often want to examine the process that the technology is designed to deliver as it is happening such as seeing a sequence of events to detect any emerging patterns. It is a truism that people want to be able to examine the results and they do this normally using visual perception.
Another possible futuristic reason is that human beings may want to communicate with nonhuman living beings such as monkeys, dolphins, dogs and even possibly plants. This may seem farfetched at this point in time. But at some future point scientists may focus on enhancing the cognitive ability of these non-human lifeforms to provide a functional labour force. Chromathics may provide a solution to facilitate this human to other animal and plant communications.
Examples
These are a number of the ways chromathics can be applied to real-world applications. Examples include tracking horse leg movements, sending encoded messages, picking colours for house decorations, measuring vibrations, finding the loudest sound source and mapping changes in cloud cover for adverse weather developments. Examples of these uses are illustrated below.
Control of Movements
Colour can be used to transmit commands to robots. An example is a robot receiving its instructions from colour transmitted from devices in the floor of a room where colour conveys information about the distance and height of the next movement taken by a robot. The robot would be able to adjust its behaviour based on the information conveyed by the colour transmitters.
In hospitals, the same systems can be employed to control service delivery and cleaning activities. This would allow robotic units to be simplified in their design and therefore be made less prone to failure because control is exercised by the transmitters delivering colour instructions rather than code stored in the robot’s memory. It is acknowledged that this solution does not necessarily reduce failure rates.
9.2 Capturing Movements
When movements are being mapped, a chromathic process gives 16,777,216 different three dimensional (3D) positional data points. This creates a mosaic pattern where the movements are represented as single colours. When multiple observations are taken and are visually examined, rhythmic patterns and positional variations within those rhythmic patterns can be identified.
For example, if a 3D sensor was mounted on a horse and then the horse was ridden around a set course for a specified time, it would be possible to identify specific way points and any variations in the horse’s movements. This data could be used to identify any anomalies in the horse’s gait which could indicate possible lameness and the degree of lameness. If a regular starting point could be established, then the data set could be turned into a time series data set with comparison of performances possible over repeated occurrences.
This mosaic is an example of horse movement. The first column ranges from standing still to walking. The second column ranges from walking to trotting. The third column is trotting to cantering and easing back to at rest. The last column is coming to rest and the removal of the sensor equipment
Another practical example is Chinese calligraphy where a human uses brush strokes to produce Chinese characters. This is a highly skilled art. Once a starting point is established the person painting can progress through a number of 3D way points using sound to provide feedback on the precision of the strokes. A musical chord across three octaves informs the person printing of the deviation and distance from the desired way point position. To establish the person’s position compared to the way point would be a difference measure between both positions in 3D, and if the person is greater than the desired position, then a combination of high octave notes sound. If the person is below the position, then a combination of low octave notes are heard. Then when the person is within + or – 2.5% of the desired way point, then a combination of middle octave notes are heard. The greater the loudness of the chord, the greater the distance from the person’s position to the way point position. It is expected that this use of light and sound would speed up the development of precision with the brush strokes. The same solution can be applied learn yoga and to improve stroke play in sports such as golf, tennis, cricket and baseball.
This mosaic is of a series of Yoga exercises
Traffic Flows
The mosaic below is of motor vehicles going through an intersection with a sample rate of 300 milliseconds. This is an example of how to sample quickly car colours. The black colour is the other side of the road. The other colours in the squares represent different coloured vehicles. These entries allow traffic flows to be assessed.
Audio Events
The mosaic below shows the sounds of outside noise and birds singing as well as music playing on a radio. The audio spectrum is broken up into three equal segments. With each colour representing a 1/3rd, the computer can detect the different tones better than the human eye. While this image appears to have maybe 20 different tones there are over 50 different colours.
Weather Events
The mosaic below is of a series of 10 minutes observations of weather sensors. The three sensors are air pressure, humidity, and temperature. Each square represents the combination of the three sensors and transmitted to a receiving sensor that is programed to adjust the environmental controls when it detects a specific colour.
The next mosaic is a time lapse example of rain and storm clouds with lightning going past. The change in the grey tones gives an indication of the severity of the storm.
Chemical Assays
This mosaic contains observations taken of bricks, plants, and metal. However an astronomical spectrometer optical filter was used in a similar manner to organic chemistry spectroscopy. This process uses reflected light from the sun to give a chemical assay of objects
Encryption of Messages
With a chromatic approach able to compress and store data in an optical format, this allows it to be transferred and accessed from an image file rather than an ASCII based file. In the following example, the image is of the Lord’s Prayer which has been transformed and compressed from text to a colour mosaic where one tile contains three pieces of data. However, the image can have a number of adjustments made to make it harder to decode and read. By changing the colour combination order, or by adding a weighting factor, the message within the image is encrypted and could not easily be deciphered without the key.
This mosaic is of a single piece of text repeated twice. The before the three black squares is the standard text. Following the three black squares is the same text but slightly scrambled. Each square has a possible 16,777,216 possible combinations of characters. This type of data storage can also be used for encryption
Discussion
The above examples illustrate that there are potentially many practical uses of a colour approach to computing including it can be used to store and transmit compressed and encrypted data, it can track the movements of people, other animals and mechanical objects and it can identify their colour signatures. This can assist with safeguarding data from unauthorized intrusions, with controlling traffic flows, with teaching intricate and highly skilled movements in sports such as with tennis shots and with detecting criminals, terrorists and similar where chromatic detection is used with facial recognition [11]. It can also assist with measuring the nutrients, moisture and pesticides in agriculture fields and with diagnosing diseases based on their spectral patterns. The potential uses of chromatic computing and chromathics are many. The above suggested uses have to be confirmed by further research.
It is also considered that a chromatic approach could fill the gap between traditional digital computers and the promise of quantum computers. Quantum computing uses quantum-mechanical principles to perform numerical operations. They would theoretically be able to solve certain problems much more quickly than any classical computers that use even the best currently known algorithms.
Quantum computers [14] promise to run calculations far beyond the reach of any conventional supercomputer. They might revolutionize the discovery of new materials by making it possible to simulate the behaviour of matter down to the atomic level. They could upend cryptography and security by cracking otherwise invincible codes. There is even hope they will supercharge artificial intelligence by crunching through data more efficiently.
Chromatic computers will not process numbers at the super speed of quantum computers but they offer the possibility to outperform conventional computers in data processing and scientific calculations. They can do this without the current technical complications of quantum computers that are very sensitive to temperature and other environmental conditions. Quantum computers can become quite unstable if conditions change.
The future may see the progression of digital computers, chromatic computers and quantum computers with each having particular strengths and each having a particular niche where they perform optimally.
Conclusion
The potential of chromatic computing and chromathics is considered immense. They could confer many possible advantages with storage, transformation and transmission of data, with doing mathematical operations, with encryption of information and with authentication of people and the provision of privileges. The next steps are to see to what extent these potential uses can be realised. As suggested above chromatic computing could fill the gap between digital computers and the great promise of quantum computers.
References:
- https://en.wikipedia.org/wiki/Analog_computer, J.S. Small (2001) The Analogue Alternative. London/New York: Routledge and C. Bissell (2001) A great disappearing act: the electronic analogue computer. Presented at IEEE Conference on the History of Electronics, Bletchley Park, UK, 28-30 June
- Sangun (2010) Difference between Analog and Digital Computing. www.brighthubengineering.com/diy-electronics-devices/97571-difference-between-analog-and-digital-computing/
- Al Williams pointed out that there is a video showing how to solve 2D mathematical equations using colour. He stated that colours are a clever way of representing vectors and can be applied to complex numbers. See https://hackaday.com/2018/03/26/solve-2d-math-equations-colorfully/
- https://en.wikipedia.org/wiki/QR_code
- https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction
- https://en.wikipedia.org/wiki/Comma-separated_values
- https://en.wikipedia.org/wiki/JPEG
- https://en.wikipedia.org/wiki/Lossy_compression
- McNeil and P. Freiberger (1993). Fuzzy Logic: The discovery of a revolutionary computer technology – and how it is changing our world. New York: Simon & Schuster
- https://en.wikipedia.org/wiki/Electromagnetic_spectrum
- https://en.wikipedia.org/wiki/Facial_recognition_system
- https://en.wikipedia.org/wiki/Video_card, https://computer.howstuffworks.com/graphics-card1.htm, https://en.wikipedia.org/wiki/Graphics_processing_unit and https://www.techspot.com/community/topics/cracking-passwords-using-nvidias-latest-gtx-1080-gpu-its-fast.229218/
- https://en.wikipedia.org/wiki/Blockchain and I. Bashir (2017). Mastering Blockchain. Packt Publishing, Ltd and D. Tapscott and A. Tapscott (2016). Blockchain Revolution: How the Technology Behind Bitcoin Is Changing Money, Business and the World. London: Portfolio Penguin
- https://en.wikipedia.org/wiki/Quantum_computing and A. Wichert(2014). Principles of Quantum Artificial Intelligence. World Scientific Publishing Co and S. Akama (2014). Elements of Quantum Computing: History, Theories and Engineering Applications. Springer International Publishing