• Welcome to AppraisersForum.com, the premier online  community for the discussion of real estate appraisal. Register a free account to be able to post and unlock additional forums and features.

Planned "ValEngr-RCA" Docker Container

RCA

Elite Member
Gold Supporting Member
Joined
Jun 27, 2017
Professional Status
Certified General Appraiser
State
California
So, my plate is temporarily clear right now and I will focus on publishing a Docker Container to Docker Hub, by this Christmas that will have the following installed:

1. RStudio, R and CRAN R packages for MARS/RCA appraisal (including R/earth of course)
2. Python
3. VS Code
4. SWI-Prolog
5. Basic R code to execute R/earth and generate a Sales Grid and a MARS Neighborhood Analysis
6. Fake MLS data of a phantom town located somewhere on the coast of California for user testing
7. A fairly sophisticated app to create optimal neighborhoods for the market area from scratch.
8. Then, using these synthesized neighborhoods, run a new MARS analysis with neighborhood ID as a new input to MARS.
9. Maybe add some Python and Neural Net software (e.g. something like what I published on Zenodo)

Well, at least I am going to try. The idea being you can download the image to MacOS, Linux or Windows 11 and have R, RStudio, CRAN, SWI-Prolog, VSCode, Python already installed.

Advantage for you: Installing the software is invariably messy. It will be done for you.

Then I will continue to maintain and expand it.
 
I have already created a set of Docker containers for downloading and installation by appraisers:

1. RStudio/R, plus many pre-installed packages, including earth
2. Jupyter/Python for developing and/or running Python
3. VS Code, which can handle hybrid R/Python/Prolog/C++ code
4. SWI-Prolog for running Prolog
5. PostgreSQL, plus scripts to set up default databases for market analysis and appraisal business purposes.

I have shell scripts that set up all of these apps in a browser across different tabs for development and running valuation engineer analysis (aka appraisal).

The shell scripts will run transparently on Windows, macOS, and Linux.

Your R, Python, Prolog, C++ code and data will live on your local drive.

There are unit and integration tests across the above operating systems to ensure everything is working and communicating with each other perfectly. R, Python, Prolog, and C++ can embed themselves in each other; you can mix them, and calls are allowed in any direction between R, Python, and Prolog - and each of these languages can call C++ routines where speed is important. Python is set-up to use PyTorch rather than TensorFlow for AI. Prolog, of course, is for AI, expert systems, and, most of all, for logic extraction from laws and regulations, as well as for verification and compliance checks. Neural Network modeling is for the logical analysis of MLS and inspection photographs.

I would recommend something like:
  • Apple Mac M2/M3 Ultra. ( Or even the Mac Studio M4 Pro/Max or passably a Mac-mini M4 pro w/64G of memory)
  • 64+ GB of RAM
  • Several TB of SSD storage
  • Hard Drive backup storage
Of course, a good AMD Ryzen 9950X, with 4090+ NVIDIA graphics card and 64G+ of memory would be sound.

If you want to run neural network processing on photographs, you will need as much processing power as possible. Honestly, the main problem here, even if you have good processing hardware, is training the neural networks to recognize objects, materials, brands, quality, and condition. You need someone, preferably an experienced appraiser, to go through thousands of property photographs and CONSISTENTLY rate them for room type, appliance type, and relative condition. You can save time if you already have a partially trained model and need to fine-tune it for specific market areas. But this takes time. So, I can only provide a few basic photo sets to test the neural network code.

But I am making very fast progress, so I should have something to provide at least by Christmas. ... Maybe even this week.
 
Last edited:
The idea for me is to make the MARS appraisal software completely open to the public so that it is transparent. If I make any money off this (and I may not) then it will only be through consulting or module additions for special functionality. And this technology is headed for politcal acceptability. That is the idea.
 
If you have a chance, watch this video, which discusses an interesting problem facing all university libraries - and has implications for appraisers:


1. The top 5 publishing companies for digital academic publications are: Elsevier ($3.8-4.0 billion), Springer Nature ($2.5-2.7 billion), Wiley ($1.6-1.8 billion), Taylor & Francis ($1.2-1.4 billion), and Sage Publications ($1.0-$1.1 billion). These act as oligopolies, restricting competition.

2. These top publishers take the work of researchers paid by universities, who basically do all the work, take ownership of it, and then restrict its use by charging ever-higher subscription fees.

3. You can never "own" digital works; you only have a license for access - and it can be removed. So, what university libraries have found is that publishers continually remove access to publications they (the universities) have purchased access to. And not only that, they force them to buy publications they don't want as part of a large package of whatever other publications they determine should be in it.

4. Universities that offer courses often fail to fill classes with students, because students don't want to pay $75-$150 for digital books they can't keep beyond the length of the course. So, many universities have resorted to using only free open-source software.

What is the issue for appraisers, you might ask?

This is THE trend: Free, open-source digital publications and software, freely accessible to anyone with a computer device. We see with companies like the Appraisal Institute and TAF that they are also engaged in this, for lack of a better word: THEFT of intellectual property. It is not needed. They themselves have nothing to offer but crap and stagnation. They are retrograde institutions and should be recognized as such. They need to be replaced by something that makes more sense.
 
Last edited:
FYI: STATUS

1. 5 Docker containers foundation with unit and integration test coverage is functional in MacOS, Linux and Windows.
2. Backend is written with basic test programs.
3. Most work on Angular (v. 20) front end as below, is done.

1765226688333.png

4. 240K lines of code, excluding node_modules. But honestly, large chunks of earth, Prolog, and real appraisal code exist in other projects and have to be integrated here. Honestly, a lot of that code is JavaScript libraries

5. The latest is checked in to my private GitHub repository, with absolutely no errors

Plan
1. MacOS version, with some MARS/RCA capability, necessary administrative interfaces for Postgres DB, upload capability, and so on, should be done easily by the end of January. Maybe some release by Xmas.

2. Linux version to be placed on Hostinger with some property data set for demo purposes. Linux is almost identical to macOS.

3. Windows gets last place for full testing, although the unit/integrations tests themselves should be tested on my Windows 11 machine by Xmas/January. But until I get the macOS/Linux version done, I don't plan to spend much time on Windows. I don't want to get loaded down with Windows maintenance early on. That can wait.

4. There will be 5 Docker containers for Postgres, VS Code, R, Python, and Prolog. Users will put projects on their local drives. Angular is integrated with the VS Code container. In most cases, users will be expected to run their system from the browser on their local network, e.g., http://localhost:4200.

5. The Angular front end (which is built on Typescript, which in turn is built on JavaScript and CSS) will be the interface. C++ is fast. Underneath that, we have R, Python, Prolog, C++, Markdown, etc. Angular is likely to reside on the local drive for efficiency. However, part of Angular may be in the VS Code Container.

I will likely just keep working on this for the rest of my life - or at least until I hand it off to someone else.
 
Last edited:
Progress: I call the app RCA Appraisal for now (just a temp name) and it sits in 10 docker containers orchestrated by Kubernetes. And,
therefore will work equally well on a MacOS, Linux or Windows machine. Continues to grow. Here are the current line counts:

1769416011508.png

1, Languages: English, German, French, Spanish, Japanese - Instantly switch between them.
Note: The idea is that an appraiser in Japan should be able to create an appraisal in Japanese and
then create a report in English for a customer in Australia or the US. Various currencies and
data formats are handled, including different Geographic "Levels" - each country is different.

2. Initial translations will be a bit rough and will have to be reviewed by a native speaker, although
I've got some people who will do it.


3. Very refined MARS regression, RCA Sales Grid and other Stat methods will be supported.
4. Users can split off from the provided R, and Python code to create their own version,
by Project. Looping over different data sets, parameter sets and variable sets to study the
Subject Market Area value/feature relationships.
....
Note: Angular code is counted as Typescript, as Angular is just Typescript with a protocol.
 
Last edited:
Progress: I call the app RCA Appraisal for now (just a temp name) and it sits in 10 docker containers orchestrated by Kubernetes. And,
therefore will work equally well on a MacOS, Linux or Windows machine. Continues to grow. Here are the current line counts:
...

Note: The final official report should be in the appraisers native language or one that he is completely fluent in. Automated translations to the language of the client, must be stamped as "Courtesy Transalations" with no guarantee on translation accuracy. Of course, if the client wants to pay extra, they can get a professional translator to review the automated translation and make any necessary corrections.
Why the focus on international appraisal? - Appraisers who have to work with unfamiliar market areas are the ones who benefit the most form statistical tools like MARS - which provide a shortcut to developing an understanding of otherwise unknown markets.

1769428124511.png
 
Last edited:
Find a Real Estate Appraiser - Enter Zip Code

Copyright © 2000-, AppraisersForum.com, All Rights Reserved
AppraisersForum.com is proudly hosted by the folks at
AppraiserSites.com
Back
Top